|
1 | 1 | ## Setting up the development environment
|
2 | 2 |
|
3 | 3 | ```r
|
4 |
| -install.packages(c('devtools', 'pkgdown', 'styler', 'lintr')) # install dev dependencies |
| 4 | +pak::pkg_install(c('devtools', 'pkgdown', 'styler', 'lintr')) # install dev dependencies |
5 | 5 | devtools::install_deps(dependencies = TRUE) # install package dependencies
|
6 | 6 | devtools::document() # generate package meta data and man files
|
7 | 7 | devtools::build() # build package
|
@@ -45,20 +45,36 @@ python -m http.server -d docs
|
45 | 45 | Please follow the guidelines in the [PR template document](.github/pull_request_template.md).
|
46 | 46 |
|
47 | 47 | ## Release process
|
48 |
| -First, there's a handy function that makes a github issue; for example, at the time of writing we were doing: |
49 |
| -```R |
50 |
| -usethis::use_release_issue(version = "1.0.2") |
51 |
| -``` |
52 |
| -If you want to extend it, add to the `release_bullets` function in [utils.R](https://github.com/cmu-delphi/epidatr/blob/dev/R/utils.R). |
53 |
| - First, make sure that all the checks pass |
54 |
| - |
55 |
| -```R |
56 |
| -devtools::check(".", manual = TRUE, env_vars =c(NOT_CRAN = "false")) |
57 |
| -``` |
58 | 48 |
|
59 |
| -Aim for 10/10, no notes. Generally, follow the issue. `revdep_check` is likely to fail but doesn't seem to be terribly important. So for now ignore it. |
60 |
| - |
61 |
| -When this has gone smoothly enough, release to CRAN via |
62 |
| -```R |
63 |
| -devtools::release(check = TRUE) |
64 |
| -``` |
| 49 | +Open a release issue and then copy and follow this checklist in the issue (modified from the checklist generated by `usethis::use_release_issue(version = "1.0.2")`): |
| 50 | + |
| 51 | +- [ ] `git pull` |
| 52 | +- [ ] Check [current CRAN check results](https://cran.rstudio.org/web/checks/check_results_epidatr.html) |
| 53 | +- [ ] `devtools::check(".", manual = TRUE, env_vars = c(NOT_CRAN = "false"))`. |
| 54 | + - Aim for 10/10, no notes. |
| 55 | +- [ ] If check works well enough, merge to main. Otherwise open a PR to fix up. |
| 56 | +- [ ] [Polish NEWS](https://github.com/cmu-delphi/epidatr/blob/dev/NEWS.md). |
| 57 | + - Some [guidelines](https://style.tidyverse.org/news.html#news-release). |
| 58 | +- [ ] `git checkout main` |
| 59 | +- [ ] `git pull` |
| 60 | +- [ ] `urlchecker::url_check()`. |
| 61 | + - This may choke on the MIT license url, and that's ok. |
| 62 | +- [ ] `devtools::build_readme()` |
| 63 | +- [ ] `devtools::check_win_devel()` |
| 64 | +- [ ] Check email for problems |
| 65 | +- [ ] `revdepcheck::revdep_check(num_workers = 4)`. |
| 66 | + - This may choke, it is very sensitive to the binary versions of packages on a given system. Either bypass or ask someone else to run it if you're concerned. |
| 67 | +- [ ] Update `cran-comments.md` |
| 68 | +- [ ] PR with any changes |
| 69 | + |
| 70 | +Submit to CRAN: |
| 71 | + |
| 72 | +- [ ] `devtools::submit_cran()` |
| 73 | +- [ ] Approve email |
| 74 | + |
| 75 | +Wait for CRAN... |
| 76 | + |
| 77 | +- [ ] Accepted :tada: |
| 78 | +- [ ] `dev` |
| 79 | +- [ ] `usethis::use_github_release(publish = FALSE)` (publish off, otherwise it won't push). |
| 80 | +- [ ] check the release notes and publish the branch on github |
0 commit comments