Skip to content

Commit 0139b5c

Browse files
authored
Merge pull request #67 from ehrlinger/pkgdown-site
Enhance testing strategy and add regression tests for ggRandomForests
2 parents d4d5389 + c6ac948 commit 0139b5c

71 files changed

Lines changed: 3399 additions & 1143 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.Rbuildignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,3 +38,9 @@ framed.sty
3838
^pkgdown$
3939
^LICENSE\.md$
4040
^memory$
41+
^\.lintr$
42+
^CONTRIBUTING\.md$
43+
^code-review\.md$
44+
^release-checklist.*\.md$
45+
# FUSE filesystem temporaries (safe to ignore; R CMD build already skips dotfiles)
46+
^R/\.fuse_hidden

.github/workflows/R-CMD-check.yaml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,10 @@ jobs:
2828
env:
2929
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
3030
R_KEEP_PKG_SOURCE: yes
31+
# Skip vdiffr visual-regression tests in CI until reference SVGs are
32+
# committed. To regenerate: run testthat::snapshot_accept() locally,
33+
# commit tests/testthat/_snaps/, then remove this line.
34+
VDIFFR_RUN_TESTS: "false"
3135

3236
steps:
3337
- uses: actions/checkout@v4
@@ -41,14 +45,18 @@ jobs:
4145
r-version: ${{ matrix.config.r }}
4246
http-user-agent: ${{ matrix.config.http-user-agent }}
4347
use-public-rspm: true
44-
rtools-version: '42'
48+
rtools-version: '44'
4549

4650
- uses: r-lib/actions/setup-r-dependencies@v2
4751
with:
4852
extra-packages: any::rcmdcheck
53+
cache-version: 2
4954
needs: check
5055

5156
- uses: r-lib/actions/check-r-package@v2
5257
with:
5358
upload-snapshots: true
5459
build_args: 'c("--no-manual","--compact-vignettes=gs+qpdf")'
60+
# Treat NOTEs as errors on CRAN-submission platforms (devel + release);
61+
# warnings are always errors everywhere.
62+
error_on: '"warning"'

.github/workflows/check-release.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,9 @@ jobs:
1414
env:
1515
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
1616
R_KEEP_PKG_SOURCE: yes
17+
VDIFFR_RUN_TESTS: "false"
1718
steps:
18-
- uses: actions/checkout@v2
19+
- uses: actions/checkout@v4
1920

2021
- uses: r-lib/actions/setup-pandoc@v2
2122

@@ -27,6 +28,7 @@ jobs:
2728
- uses: r-lib/actions/setup-r-dependencies@v2
2829
with:
2930
extra-packages: rcmdcheck
31+
cache-version: 2
3032

3133
- uses: r-lib/actions/setup-tinytex@v2
3234
- uses: r-lib/actions/check-r-package@v2

.github/workflows/check-standard.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,10 @@ jobs:
2727
env:
2828
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
2929
R_KEEP_PKG_SOURCE: yes
30+
VDIFFR_RUN_TESTS: "false"
3031

3132
steps:
32-
- uses: actions/checkout@v2
33+
- uses: actions/checkout@v4
3334

3435
- uses: r-lib/actions/setup-pandoc@v2
3536

@@ -43,6 +44,7 @@ jobs:
4344
- uses: r-lib/actions/setup-r-dependencies@v2
4445
with:
4546
extra-packages: rcmdcheck
47+
cache-version: 2
4648

4749
- uses: r-lib/actions/setup-tinytex@v2
4850
- uses: r-lib/actions/check-r-package@v2

.github/workflows/lint.yaml

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,39 @@
1-
# Workflow derived from https://github.com/r-lib/actions/tree/master/examples
1+
# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
22
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
33
on:
44
push:
55
branches: [main]
66
pull_request:
7-
branches: [main]
87

9-
name: lint
8+
name: lint.yaml
9+
10+
permissions: read-all
1011

1112
jobs:
1213
lint:
1314
runs-on: ubuntu-latest
1415
env:
1516
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
17+
1618
steps:
17-
- uses: actions/checkout@v2
19+
- uses: actions/checkout@v4
1820

1921
- uses: r-lib/actions/setup-r@v2
2022
with:
2123
use-public-rspm: true
2224

2325
- uses: r-lib/actions/setup-r-dependencies@v2
2426
with:
25-
extra-packages: lintr
27+
extra-packages: any::lintr, any::cyclocomp, any::pak
28+
needs: lint
29+
cache-version: 2
2630

2731
- name: Lint
28-
run: lintr::lint_package()
32+
run: |
33+
lints <- lintr::lint_package()
34+
print(lints)
35+
if (length(lints) > 0L) {
36+
message(sprintf("lintr found %d issue(s).", length(lints)))
37+
quit(status = 1L)
38+
}
2939
shell: Rscript {0}

.github/workflows/test-coverage.yaml

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ jobs:
1414
runs-on: ubuntu-latest
1515
env:
1616
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
17+
VDIFFR_RUN_TESTS: "false"
1718

1819
steps:
1920
- uses: actions/checkout@v4
@@ -26,6 +27,7 @@ jobs:
2627
with:
2728
extra-packages: any::covr, any::xml2
2829
needs: coverage
30+
cache-version: 2
2931

3032
- name: Test coverage
3133
run: |
@@ -38,15 +40,6 @@ jobs:
3840
covr::to_cobertura(cov)
3941
shell: Rscript {0}
4042

41-
- uses: codecov/codecov-action@v4
42-
with:
43-
token: ${{ secrets.CODECOV_TOKEN }}
44-
# Fail if error if not on PR, or if on PR and token is given
45-
fail_ci_if_error: ${{ github.event_name != 'pull_request' || secrets.CODECOV_TOKEN }}
46-
file: ./cobertura.xml
47-
plugin: noop
48-
disable_search: true
49-
5043
- name: Show testthat output
5144
if: always()
5245
run: |
@@ -60,8 +53,13 @@ jobs:
6053
with:
6154
name: coverage-test-failures
6255
path: ${{ runner.temp }}/package
63-
56+
6457
- name: Upload coverage reports to Codecov
6558
uses: codecov/codecov-action@v5
6659
with:
6760
token: ${{ secrets.CODECOV_TOKEN }}
61+
# Fail if error if not on PR, or if on PR and token is given
62+
fail_ci_if_error: ${{ github.event_name != 'pull_request' || secrets.CODECOV_TOKEN != '' }}
63+
files: ./cobertura.xml
64+
plugins: noop
65+
disable_search: true

.gitignore

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,8 @@ tests/testthat/Rplots.pdf
4040
vignettes/ggrfRegression.html
4141
vignettes/ggrfRegression.R
4242
docs
43-
NAMESPACE
44-
man/
45-
*.Rd
43+
# FUSE filesystem temporaries (macOS / Linux FUSE driver artefacts)
44+
.fuse_hidden*
4645

4746
vignettes/ggRandomForests_files
4847
vignettes/ggRandomForests.html

.lintr

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
linters: linters_with_defaults(
2+
line_length_linter(120),
3+
object_name_linter(styles = c("snake_case", "dotted.case", "camelCase", "symbols")),
4+
cyclocomp_linter(complexity_limit = 20),
5+
T_and_F_symbol_linter = NULL,
6+
return_linter = NULL,
7+
indentation_linter = NULL,
8+
object_length_linter = NULL,
9+
object_usage_linter = NULL,
10+
commented_code_linter = NULL
11+
)
12+
exclusions: list(
13+
"R/ggrandomforests.news.R",
14+
"R/zzz.R"
15+
)
16+
encoding: "UTF-8"

0 commit comments

Comments
 (0)