Prepare v0.1.0 for first CRAN submission#207
Conversation
- Update DESCRIPTION for CRAN readiness:
- replace placeholder title
- expand package description with DOI references
- remove Remotes field
- update serocalculator dependency to CRAN version
- Update README badges and installation instructions for ucdavis repo
- Add cran-comments.md and WORDLIST
- Update NEWS.md for v1.0.0 release
- Convert DOI URLs in data documentation to \doi{} format
- Reduce CRAN check burden:
- wrap heavy run_mod example in \dontrun{}
- use ids consistently in plot_predicted_curve examples
- skip heavy JAGS and plotting tests unless RUN_HEAVY_TESTS=true
- Regenerate README.md and Rd files
Local check result: 0 errors, 0 warnings, 2 notes
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #207 +/- ##
===========================================
- Coverage 81.42% 40.10% -41.32%
===========================================
Files 25 25
Lines 915 915
===========================================
- Hits 745 367 -378
- Misses 170 548 +378 ☔ View full report in Codecov by Sentry. |
|
📖 https://ucd-serg.github.io/serodynamics/preview/pr207 |
- Remove library() calls from test code - Use explicit package namespaces and skip_if_not_installed() where needed - Keep heavy tests skipped unless RUN_HEAVY_TESTS=true
There was a problem hiding this comment.
Pull request overview
Prepares serodynamics v1.0.0 for an initial CRAN submission by updating package metadata/URLs, tightening examples to avoid heavy computations during checks, and gating slow/fragile tests behind an opt-in environment variable.
Changes:
- Updated package metadata for CRAN readiness (Title/Description, version bump to 1.0.0, URLs, dependency minimums; removed
Remotes). - Adjusted documentation/examples (DOI formatting via
\\doi{}, wrapped heavyrun_mod()example in\\dontrun{}; regenerated Rd/README). - Reduced CRAN/CI test burden by skipping heavy JAGS + vdiffr/plot tests unless
RUN_HEAVY_TESTS=true.
Reviewed changes
Copilot reviewed 24 out of 25 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/testthat/test-runjags.R | Skips heavy runjags consistency tests on CRAN and unless RUN_HEAVY_TESTS=true. |
| tests/testthat/test-run_mod.R | Gates multiple snapshot-heavy JAGS model tests behind CRAN + env-var skips. |
| tests/testthat/test-plot_predicted_curve.R | Gates plotting tests behind CRAN + env-var skips (but still contains an id= call site that will error when enabled). |
| tests/testthat/test-plot_jags_tracedx.R | Gates vdiffr trace plot snapshot test behind CRAN + env-var skips. |
| tests/testthat/test-plot_jags_rhatdx.R | Gates vdiffr Rhat plot snapshot test behind CRAN + env-var skips. |
| tests/testthat/test-plot_jags_effectivedx.R | Gates vdiffr ESS plot snapshot test behind CRAN + env-var skips. |
| tests/testthat/test-plot_jags_densitydx.R | Adds CRAN/env-var skips and skip_if_not_installed() guards for Suggests packages. |
| tests/testthat/test-initsfunction.R | Gates a runjags-based test behind CRAN + env-var skips. |
| README.Rmd | Updates badges/URLs to ucdavis/serodynamics and adds CRAN install instructions. |
| README.md | Regenerated from README.Rmd with updated badges/installation instructions. |
| R/nepal_sees.R | Converts source DOI URL to Rd \\doi{} format in dataset documentation. |
| R/nepal_sees_jags_output.R | Converts source DOI URL to Rd \\doi{} format in dataset documentation. |
| NEWS.md | Restructures NEWS for the 1.0.0 initial CRAN release header/summary. |
| man/serodynamics-package.Rd | Updates package-level Title/Description and GitHub URLs for CRAN. |
| man/run_mod.Rd | Adds a lightweight example using precomputed data and wraps heavy JAGS example in \\dontrun{}. |
| man/plot_predicted_curve.Rd | Updates examples to use ids argument and adjusts show_all_curves in examples. |
| man/nepal_sees.Rd | Converts DOI URL to \\doi{} in Rd output. |
| man/nepal_sees_jags_output.Rd | Converts DOI URL to \\doi{} in Rd output. |
| inst/WORDLIST | Adds words needed for spelling checks (e.g., “seroepidemiologic”, “Eijkeren”). |
| inst/examples/run_mod-examples.R | Adds a lightweight example + attempts to wrap heavy example in \\dontrun{} (but introduces non-R markup into an example script). |
| inst/examples/examples-plot_predicted_curve.R | Updates example script to use ids argument and adjusts show_all_curves. |
| DESCRIPTION | CRAN-ready metadata updates: Title/Description, version 1.0.0, URLs, dependency floor, remove Remotes. |
| cran-comments.md | Adds CRAN submission comments template/check results. |
| .Rbuildignore | Excludes CRAN comments and common build artifacts (doc/, Meta/). |
| .gitignore | Ignores doc/ and Meta/ directories. |
- Pin setup-r action to v2 instead of HEAD - Use runjags::findjags() consistently in the JAGS setup step
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 20 out of 26 changed files in this pull request and generated 3 comments.
Files not reviewed (5)
- man/nepal_sees.Rd: Language not supported
- man/nepal_sees_jags_output.Rd: Language not supported
- man/plot_predicted_curve.Rd: Language not supported
- man/run_mod.Rd: Language not supported
- man/serodynamics-package.Rd: Language not supported
|
@copilot Please update all references in this repository from |
Agent-Logs-Url: https://github.com/UCD-SERG/serodynamics/sessions/d12cbd03-c85a-4b2c-be7a-5fedf8b5b411 Co-authored-by: Kwan-Jenny <68584166+Kwan-Jenny@users.noreply.github.com>
Updated all |
|
@claude d-morrison suggested keeping Since Please keep the change minimal and focused on preserving the intended example behavior while reducing runtime. |
|
Claude finished @Kwan-Jenny's task in 2m 8s —— View job Reverted
|
Reverts show_all_curves = FALSE -> TRUE in all four plot_predicted_curve() examples, and subsets nepal_sees_jags_output to the first 50 of 500 iterations (dplyr::filter(Iteration <= 50)) to keep example runtime manageable without hiding the feature. Co-authored-by: Kwan-Jenny <Kwan-Jenny@users.noreply.github.com>
|
@claude review |
|
Claude finished @Kwan-Jenny's task in 1m 58s —— View job CRAN Submission Review — PR #207
Overall assessmentThe PR is CRAN-ready. All previously flagged issues from prior review cycles have been resolved. There are no remaining actionable issues. One minor advisory is noted below. All previously flagged issues resolved ✓
DESCRIPTION
Test skip guards
CI workflows
README.Rmd
NEWS.md
Advisory (no action required for this submission)
Summary: No changes needed. The package is ready for |
|
@claude resolve conflicts |
|
Claude finished @d-morrison's task in 4m 19s —— View job Conflicts resolved
What changed:
Workflow files (cannot modify): The following workflow-file differences from
These can be applied manually in a follow-up commit by @d-morrison or @Kwan-Jenny, or accepted at merge time. |
Co-authored-by: Douglas Ezra Morrison <d-morrison@users.noreply.github.com>
Same three-way conflict as the previous main → cran-submission merge: * DESCRIPTION — kept the 0.1.0 release Title and version from cran-submission. Main's dev version (0.0.0.9054 after #218) is superseded. * NEWS.md — kept cran-submission's "first CRAN release" intro and 0.1.0 structure. All of main's incoming dev-version bullets (#218 R toolchain + gh issue allowlist, findjags casing, #210/#216/#217, OS-snapshot consolidation, Copilot decomposition) are already represented under ## Developer-facing changes from the prior merge and the "Incorporate PR #218 changes" cherry, so the main-side block is dropped rather than re-merged. * inst/WORDLIST — union of both branches, ASCII-sorted, CRLF preserved. Workflow files (.github/workflows/{claude,copilot-setup-steps, test-coverage}.yml) auto-merged to main's version, so cran-submission now inherits #218's @claude R toolchain, gh issue allowlist, and the lowercase runjags::findjags() consistency fix in test-coverage and copilot-setup. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
@claude review |
|
Claude finished @d-morrison's task in 1m 42s —— View job CRAN Submission Review — PR #207
Overall assessmentThe PR is CRAN-ready. All issues raised in previous review cycles have been resolved, including the All checks passing ✓DESCRIPTION
Test skip guards
CI workflows
Examples and documentation
Summary: No changes needed. The package is ready for |
Codecov Report✅ All modified and coverable lines are covered by tests. |
Purpose
Prepare
serodynamicsv0.1.0 for first CRAN submission.Per Ezra's note: polish enough to pass CRAN checks; in-progress PRs do not need to be finished first.
Critical fixes
"Modeling Longitudinal Antibody Responses to Infection"
'JAGS'and'serocalculator'in single quotes and DOI references(Teunis 2016; Teunis & van Eijkeren 2020)
Remotes:field:serocalculatoris on CRAN, so this field is no longer neededserocalculatordependency from1.3.0.9037(development version) to>= 1.4.0(CRAN release)/UCD-SERG/dcm/, now points to/ucdavis/serodynamics/UCD-SERG/serodynamicstoucdavis/serodynamicsucdavis/serodynamicsCodeFactor URL currently returns 404Other changes
NEWS.mdwith a v0.1.0 release header and feature summarycran-comments.md\doi{}format\dontrun{}plot_predicted_curve()examples/tests useidsconsistently to match the function signatureRUN_HEAVY_TESTS=trueREADME.mdand Rd filesCheck results
Local (
devtools::check(remote = TRUE, manual = TRUE)):tidyis not installed in the Posit Cloud environmentWin-builder (
devtools::check_win_devel()):Next steps after Sam's review
devtools::submit_cran()from this branch.mainback to a development version withusethis::use_dev_version().Related
serocalculatoris already on CRAN