Skip to content

Latest commit

 

History

History
80 lines (54 loc) · 1.75 KB

cran-submission.md

File metadata and controls

80 lines (54 loc) · 1.75 KB

CRAN submission checklist

  1. ensure all tests passing locally on as many machines as possible (mac, linux, win)

    devtools::check(args = c('--as-cran'), build_args = c('--compact-vignettes=both'))
  2. ensure passing on GitHub Actions

  3. check code formatting and cleanup as needed

    #install_github("jimhester/lintr")
    library(lintr)
    lint_package()
  4. ensure passing win-builder oldrelease, release, and devel

    ## macOS
    check_mac_release(args = "--compact-vignettes=both")
    
    ## Windows
    check_win_oldrelease(args = "--compact-vignettes=both")
    check_win_release(args = "--compact-vignettes=both")
    check_win_devel(args = "--compact-vignettes=both")
    
    ## using rhub
    rhub::check_for_cran()
  5. bump version number in DESCRIPTION (use non-devel suffix -- no .9000)

    usethis::use_version() ## e.g., usethis::use_version("minor")
  6. update NEWS.md

    devtools::show_news()
  7. rebuild docs and ensure vignettes are compressed

    devtools::document()
    tools::compactPDF("vignettes", qpdf = Sys.which(Sys.getenv("R_QPDF", "qpdf")), gs_quality = "ebook")
  8. run spell checks

    spelling::spell_check_package()
    spelling::update_wordlist()
  9. run reverse dependency checks (see revdep/check.R)

  10. update cran-comments (incl. versions tested)

  11. switch to main branch and merge in development

  12. remove Remotes from DESCRIPTION (on main branch)

  13. submit to CRAN

    devtools::release(args = "--compact-vignettes=both")
  14. once accepted, create a new GitHub release:

    usethis::use_github_release()