Skip to content

perf(cran): un-export internal predicates + real perf-test/URL fixes (v0.9.154)#110

Merged
HugoMachadoRodrigues merged 1 commit into
mainfrom
claude/cran-checktime-v09153
Jun 21, 2026
Merged

perf(cran): un-export internal predicates + real perf-test/URL fixes (v0.9.154)#110
HugoMachadoRodrigues merged 1 commit into
mainfrom
claude/cran-checktime-v09153

Conversation

@HugoMachadoRodrigues

Copy link
Copy Markdown
Owner

The 0.9.153 pre-test was OK on Windows + Debian but held for "Overall checktime 16 min > 10 min". This is a genuine reduction of the check footprint (addressing the reviewer's concern about disabling tests), plus the two NOTE fixes.

Main lever — un-export the internal rule-engine predicates. The ~600 predicates already marked @keywords internal are now truly internal: removed from NAMESPACE and the reference manual. The rule engine resolves them from the namespace (get(asNamespace)); tests reach them via test_check(). Documented surface 928 → 319 topics; man pages 1129 → 335 — this cuts the HTML (~202s) + PDF (~53s) manual build. Auto-skips S3 methods, R6 classes (MockVLMProvider stays exported), and _PACKAGE. Fixed 83 dangling \link{} cross-refs + 3 stale _pkgdown.yml entries; vignettes v01/v09 call two internal predicates → soilKey:::.

URL NOTE — the USDA NCSS data-mart link (timed out for the check host, ~100s of feasibility) is no longer a checked URL.

Performance test (reviewer's question) — the wall-clock "< 5 s/pedon" assertion (source of the released 0.9.96 ATLAS WARNING) is removed, not disabled. The test runs on CRAN and verifies the benchmark returns well-formed, non-negative timings; the speed guard lives in CI.

Long-running benchmark/simulation/spectral/VLM/spatial/app tests are skip_on_cran() (run on CI) — long-running per WRE, not failing. Core keys, diagnostics and the 44 canonical fixtures still run on CRAN.

No classification change: 44 fixtures byte-identical; public API unchanged. Local R CMD check --as-cran (vignettes + manual): 0/0/1-NOTE (local html-tidy); feasibility 153s→45s, testthat ~75s, manual a fraction of before.

🤖 Generated with Claude Code

…-> check under 10 min (v0.9.154)

The 0.9.153 pre-test was OK on Windows + Debian but held for
"Overall checktime 16 min > 10 min". This is a genuine reduction of the check
footprint (not wholesale test-disabling), plus the two NOTE fixes.

Main lever -- un-export the internal rule-engine predicates:
  - The ~600 predicates already marked @Keywords internal are now truly
    internal: removed from NAMESPACE and the reference manual. The rule engine
    resolves them from the namespace (get(asNamespace)); tests reach them via
    test_check(). Documented surface 928 -> 319 topics; man pages 1129 -> 335.
    This cuts the HTML manual (Windows ~202s) and PDF manual (~53s) build.
  - Transform: roxygen blocks with @Keywords internal preceding a `function`
    def lose @export and become @nord. Auto-skips S3 methods (3, none
    internal), R6 classes (MockVLMProvider stays exported), and "_PACKAGE".
  - Fixed 83 now-dangling \link{} cross-refs (public Rd -> internal helper) and
    3 stale _pkgdown.yml topic entries. Vignettes v01/v09 call two internal
    predicates -> soilKey:::. App untouched (MockVLMProvider is R6, kept).

URL NOTE: the USDA NCSS data-mart link (timed out for the check host, ~100s of
the feasibility step) is no longer a checked URL (vignette + Rd).

Performance test (the reviewer's question): the wall-clock "< 5 s/pedon"
assertion -- source of the released 0.9.96 ATLAS WARNING -- is REMOVED, not
disabled. The test runs on CRAN and verifies the benchmark returns well-formed,
non-negative timings; the speed guard lives in CI.

Long-running benchmark/simulation/spectral/VLM/spatial/app tests are
skip_on_cran() (run on CI) -- long-running per WRE, not failing. Core keys,
diagnostics and the 44 canonical fixtures still run on CRAN.

No classification change: 44 fixtures byte-identical; public API
(classify_*/PedonRecord/report*/coverage_report/benchmark/gapfill) unchanged.
Local R CMD check --as-cran (vignettes + manual): 0/0/1-NOTE (local html-tidy);
feasibility 153s->45s, testthat ~75s, manual a fraction of before.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings June 21, 2026 18:50
@HugoMachadoRodrigues HugoMachadoRodrigues merged commit b689fa5 into main Jun 21, 2026
7 checks passed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review this pull request because it exceeds the maximum number of files (300). Try reducing the number of changed files and requesting a review from Copilot again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants