-
Notifications
You must be signed in to change notification settings - Fork 12
Open
Description
Mise en Place
- Ask maintainer to set up access rights
💡
(if acceptable -- for smoother workflow; and necessary for a few items) For repositories under a personal account refer to https://docs.github.com/en/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/permission-levels-for-a-personal-account-repository#collaborator-access-for-a-repository-owned-by-a-personal-account and for repositories under an organization account refer to https://docs.github.com/en/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization (Write Access) -
pak::pak("r-lib/usethis")
💡
Install the development version of usethis which has the Air setup function. -
pak::pak("cynkra/cynkradown")
💡
Install our pkgdown template that has a function to set up its usage.
Quick Wins
-
pr_init("upkeep-2025-06")
💡
Create a branch for this spring cleaning work -
usethis::use_readme_rmd()
💡
If you didn't use a Rmd README, switch to one and port the content from README.md. If you did, please make sure it has the<!-- badges: start -->
and<!-- badges: end -->
comments. -
usethis::use_roxygen_md()
💡
Activate the usage of Markdown in roxygen2 comments https://roxygen2.r-lib.org/articles/rd-formatting.html -
usethis::use_github_links()
💡
Register the GitHub links in DESCRIPTION -
usethis::use_pkgdown_github_pages()
💡
Implement the GitHub setup needed to automatically publish your pkgdown site to GitHub pages -
usethis::use_tidy_github_labels()
💡
Create "tidy" issue labels https://usethis.r-lib.org/reference/use_github_labels.html#tidyverse-label-usage You might need to update the labelling of open issues. -
urlchecker::url_check()
💡
Check whether URLs are valid. Use https://urlchecker.r-lib.org/reference/url_update.html for automatic fixing of some broken URLs. -
usethis::use_package_doc()
💡
Create a package level manual page. Also use it to store imports useful for the whole page. -
usethis::use_testthat(3)
💡
Activate testthat's third edition. https://testthat.r-lib.org/articles/third-edition.html - Handle and close any still-open
master
-->main
PRs -
usethis::git_default_branch_rename()
- Use
pak::pak("tidyverse/blob")
in README💡
Better way to install packages than devtools these days. - Use R-universe installation instructions
💡
For instance install.packages('blockr.ui', repos = c('https://cynkra.r-universe.dev', 'https://cloud.r-project.org')) -
usethis::use_mit_license()
: if there are external contributors, see deep dives -
usethis::use_tidy_description()
💡
Clean up the formatting of DESCRIPTION -
usethis::use_github_action("check-standard")
💡
GHA workflow for R CMD check, will also add a badge. -
usethis::use_github_action("test-coverage")
💡
GHA workflow for test coverage uploaded on codecov.io, will also add a badge. - Delete any outdated CI configuration file
💡
Travis, Appveyor, old GitHub Actions workflows. Also check README badges! -
usethis::use_air()
💡
You can also reformat files with Air -
devtools::build_readme()
💡
Build the README.Rmd with a temporary installation of the package
cynkra Quick Wins
-
cynkratemplate::use_cynkra_pkgdown()
💡
Register the use of our awesome pkgdown template. -
cynkrathis::register_cynkra()
if cynkra is not in authors yet -
cynkrathis:: add_cynkra_ror()
if cynkra was already in authors
Deep Dives
- Before usethis::use_mit_license(), ask external contributors if it's ok
- Align the names of R/ files and test/ files
- Use lifecycle instead of artisanal deprecation messages
- Use cli for messages
- Add alt-text to pictures, plots, etc; see posit.co/blog/knitr-fig-alt for examples
- Place all @import and @importFrom in the pkg doc file
💡
Follow a nice newish convention to find them when you look for them. - If checks show notes for global variables, use
.data
and.env
in tidyverse style functions, then if globals remain, useroxyglobals::use_roxyglobals()
Wrap Up
-
desc::add_me()
💡
Register yourself as ctb inDESCRIPTION
- Ask maintainer to review PR + merge + and cleanup access rights of relevant
Metadata
Metadata
Assignees
Labels
No labels