Submit imuGAP to CRAN with a GitHub Actions-based release pipeline (coatless-actions/cran-submission is the example @pearsonca cited; treating it as the leading candidate until told otherwise). Covers prep, release CI/CD, NEWS hygiene, and Zenodo DOI minting.
Current state
R CMD check --as-cran passes 0 warnings (9-cell matrix on main).
DESCRIPTION still has roxygen2 boilerplate (Description: What the package does (one paragraph).), version 0.0.0.9000.
- No
NEWS.md, no cran-comments.md, no CITATION.cff / .zenodo.json.
- No git tags. pkgdown site live. Zenodo tracking activated (per @pearsonca's comment above) — no DOI yet, Zenodo only mints on GitHub releases.
Work breakdown
- DESCRIPTION polish — real
Description:, bump Version: to 0.1.0.
NEWS.md (the R-ecosystem changelog convention; renders as "Changelog" in pkgdown and is the file CRAN's news check looks for) — initial # imuGAP 0.1.0 entry summarizing what shipped.
cran-comments.md — first-submission notes for CRAN reviewers (this is the comment field coatless-actions POSTs to the CRAN portal).
CITATION.cff — generate via cffr::cff_write(); picks up Carl + Claire's ORCIDs from Authors@R so Zenodo passes citations through to ORCID.
.github/workflows/cran-submission.yaml — GitHub Actions workflow wired on release: prereleased + workflow_dispatch with a confirmation: "CONFIRM" guard, error-on: warning. Implementation defaults to coatless-actions/cran-submission unless we go custom.
- NEWS ↔ version sync check (per @pearsonca's question) — small workflow step asserting
NEWS.md has a heading matching DESCRIPTION's Version: on release tags.
- Cut
v0.1.0 pre-release — triggers workflow → CRAN sends maintainer confirmation email → @pearsonca clicks → review.
- After CRAN accepts — convert pre-release to full release (Zenodo mints DOI), add CRAN + DOI badges to README, double-check imugap-map's
Remotes: ACCIDDA/imuGAP is gone (appears already absent on inspection).
cran-comments.md: happy for us to draft a starting template, but the reviewer-facing voice is yours to set.
- NEWS sync check: hard-fail the release workflow if NEWS lacks the version heading, or just warn?
- First release version:
v0.1.0 (dev → first public, conventional) or v1.0.0 (signal API stability)?
Out of scope
Patch / update releases. Captured in separate issues once we're on CRAN.
Submit imuGAP to CRAN with a GitHub Actions-based release pipeline (coatless-actions/cran-submission is the example @pearsonca cited; treating it as the leading candidate until told otherwise). Covers prep, release CI/CD, NEWS hygiene, and Zenodo DOI minting.
Current state
R CMD check --as-cranpasses 0 warnings (9-cell matrix on main).DESCRIPTIONstill has roxygen2 boilerplate (Description: What the package does (one paragraph).), version0.0.0.9000.NEWS.md, nocran-comments.md, noCITATION.cff/.zenodo.json.Work breakdown
Description:, bumpVersion:to0.1.0.NEWS.md(the R-ecosystem changelog convention; renders as "Changelog" in pkgdown and is the file CRAN's news check looks for) — initial# imuGAP 0.1.0entry summarizing what shipped.cran-comments.md— first-submission notes for CRAN reviewers (this is the comment field coatless-actions POSTs to the CRAN portal).CITATION.cff— generate viacffr::cff_write(); picks up Carl + Claire's ORCIDs fromAuthors@Rso Zenodo passes citations through to ORCID..github/workflows/cran-submission.yaml— GitHub Actions workflow wired onrelease: prereleased+workflow_dispatchwith aconfirmation: "CONFIRM"guard,error-on: warning. Implementation defaults to coatless-actions/cran-submission unless we go custom.NEWS.mdhas a heading matchingDESCRIPTION'sVersion:on release tags.v0.1.0pre-release — triggers workflow → CRAN sends maintainer confirmation email → @pearsonca clicks → review.Remotes: ACCIDDA/imuGAPis gone (appears already absent on inspection).Open questions for @pearsonca
cran-comments.md: happy for us to draft a starting template, but the reviewer-facing voice is yours to set.v0.1.0(dev → first public, conventional) orv1.0.0(signal API stability)?Out of scope
Patch / update releases. Captured in separate issues once we're on CRAN.