Last month, I opened a discussion to formalize R package release process guidelines and it has been approved by the core devs of the Hubverse development team. The most visible change is how you will install hubverse packages. You should no longer use remotes::install_github()
.
To install ALL hubverse packages, you can use:
install.packages("hubverse", repos = c("https://hubverse-org.r-universe.dev", "https://cran.r-project.org"))
This rollout is separated in two parts:
- (for everyone) switch to R Universe for package deployment (29 August 2024)
- (for hubverse developers) using
main
branch as development (19 September 2024)
This was implemented in early August and you can find a dashboard of the package builds on https://hubverse-org.r-universe.dev/builds.
- If you have scripts that install hubverse packages, update them to use
install.packages()
instead ofremotes::install_github()
.
Note
To install ALL of the hubverse packages at once, you can install the hubverse
package, which contains all
the other package as dependencies
- hubverse
- old:
remotes::install_github("hubverse-org/hubverse")
- new:
install.packages("hubverse", repos = c("https://hubverse-org.r-universe.dev", "https://cran.r-project.org")))
- old:
If your scripts install individual packages, you can use the list below as a guide for updating your scripts:
- hubValidations
- old:
remotes::install_github("hubverse-org/hubValidations")
- new:
install.packages("hubValidations", repos = c("https://hubverse-org.r-universe.dev", "https://cran.r-project.org")))
- old:
- hubExamples
- old:
remotes::install_github("hubverse-org/hubExamples")
- new:
install.packages("hubExamples", repos = c("https://hubverse-org.r-universe.dev", "https://cran.r-project.org")))
- old:
- hubData
- old:
remotes::install_github("hubverse-org/hubData")
- new:
install.packages("hubData", repos = c("https://hubverse-org.r-universe.dev", "https://cran.r-project.org")))
- old:
- hubEvals
- old:
remotes::install_github("hubverse-org/hubEvals")
- new:
install.packages("hubEvals", repos = c("https://hubverse-org.r-universe.dev", "https://cran.r-project.org")))
- old:
- hubAdmin
- old:
remotes::install_github("hubverse-org/hubAdmin")
- new:
install.packages("hubAdmin", repos = c("https://hubverse-org.r-universe.dev", "https://cran.r-project.org")))
- old:
- hubVis
- old:
remotes::install_github("hubverse-org/hubVis")
- new:
install.packages("hubVis", repos = c("https://hubverse-org.r-universe.dev", "https://cran.r-project.org")))
- old:
- hubUtils
- old:
remotes::install_github("hubverse-org/hubUtils")
- new:
install.packages("hubUtils", repos = c("https://hubverse-org.r-universe.dev", "https://cran.r-project.org")))
- old:
- hubCI
- old:
remotes::install_github("hubverse-org/hubCI")
- new:
install.packages("hubCI", repos = c("https://hubverse-org.r-universe.dev", "https://cran.r-project.org")))
- old:
- hubEnsembles
- old:
remotes::install_github("hubverse-org/hubEnsembles")
- new:
install.packages("hubEnsembles", repos = c("https://hubverse-org.r-universe.dev", "https://cran.r-project.org")))
- old:
- Update your your GitHub workflows to use the latest release of hubverse-org/actions with the
hubCI::use_hub_github_action()
command# install.packages("hubCI", repos = c("https://hubverse-org.r-universe.dev", "https://cran.r-project.org")) hubCI::use_github_action("validate-hub") hubCI::use_github_action("validate-submission") hubCI::use_github_action("cache-hubval-deps")
- Update README to use
install.packages()
from our r-universe - add
Additional_repositories: https://hubverse-org.r-universe.dev
to yourDESCRIPTION
This part is for hubverse developers. The workflow will not change drastically other than using a development version number and a couple of extra steps to make a release, which is already done in our schemas and actions repositories. The rationale for this is that it is a common workflow for many software packages.
Switch will happen on: 19 September, 2024
- flesh out hubverse-org/hubDevs#11 to address Anna's comments
- create continuous integration framework for released packages (proof of concept: https://github.com/zkamvar/universe-tester/blob/main/.github/workflows/check-standard.yaml)
- Review guidelines for developers (hubverse-org/hubDevs#11)
- Update GitHub actions to use the
r-universe
by addingextra-repositories
tosetup-r
:- uses: r-lib/actions/setup-r@v2 with: install-r: false use-public-rspm: true + extra-repositories: 'https://hubverse-org.r-universe.dev'
- optional: collectively decide on day of the week best for releasing new versions.
- optional: tell git about your ssh or gpg key
- nothing!
- nothing!