Skip to content

Commit

Permalink
Merge pull request #398 from Appsilon/update-release-instructions
Browse files Browse the repository at this point in the history
Update release instructions
  • Loading branch information
kamilzyla authored Nov 30, 2022
2 parents 1ea7cc9 + 618a298 commit a733536
Show file tree
Hide file tree
Showing 3 changed files with 45 additions and 23 deletions.
64 changes: 43 additions & 21 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,29 +25,51 @@ This document contains guidelines specific to Rhino.

## Release process

1. Bump the package version in `DESCRIPTION` according to [SemVer](https://semver.org/).
### Preparation

1. Announce the planned release on `#proj-rhino`
(approximate date and scope).
2. Bump the package version in `DESCRIPTION` according to [SemVer](https://semver.org/).
Drop the development version (last component, e.g. `.9001`).
2. Update `NEWS.md`.
Create a new header for the release.
Edit the list of changes: reorder, reword, and add or remove details as appropriate.
See [keep a changelog](https://keepachangelog.com/) for some guidelines.
3. Submit the changes in a pull request titled "Release X.Y.Z".
3. Update `NEWS.md`.
1. Replace the `(development version)` with `X.Y.Z` in the header.
Do add a link to GitHub releases yet - the link won't work and will fail CRAN checks.
2. Edit the list of changes to make it useful and understandable for our users.
See [keep a changelog](https://keepachangelog.com/) for some guidelines.
4. Submit the changes in a pull request titled "Release X.Y.Z".
Get it approved and merged.
4. [Publish a new pre-release](https://github.com/Appsilon/rhino/releases/new) on GitHub.
Create a new `vX.Y.Z-rc.1` tag on the `main` branch (`rc` stands for release candidate).
Use the same string for title, leave description blank.
5. Build the package with `devtools::build()`
and [submit it to CRAN](https://cran.r-project.org/submit.html).
Use your own name and email.
You will need access to `[email protected]` to receive the confirmation link.
6. If CRAN reviewers ask for changes,
implement them and return to step 4
(use `rc.2`, `rc.3` and so on for subsequent submissions).
7. Once the package is accepted to CRAN,
[publish a new release](https://github.com/Appsilon/rhino/releases/new) on GitHub.
Create a new `vX.Y.Z` tag on the `main` branch.
Use the same string for title, fill the description from `NEWS.md`.
8. Announce the release on `#proj-rhino`.

### Submitting to CRAN

1. Build and test the package.
1. Checkout the `main` branch and ensure it is up to date.
2. Build the package with `devtools::build()`.
3. Test the package with `R CMD check --as-cran rhino_X.Y.Z.tar.gz`.
There should be no errors, warnings nor notes.
2. [Publish a new pre-release](https://github.com/Appsilon/rhino/releases/new) on GitHub.
1. Create a new `vX.Y.Z-rc.1` tag on the `main` branch (`rc` stands for release candidate).
2. Use the tag name for title.
3. Leave description blank.
3. [Submit the package to CRAN](https://cran.r-project.org/submit.html).
1. Use your own name and email.
2. Click the confirmation link sent to `[email protected]`.
4. If CRAN reviewers ask for changes,
implement them and return to step 1.
Use `rc.2`, `rc.3` and so on for subsequent submissions.

### Once accepted to CRAN

1. [Publish a new release](https://github.com/Appsilon/rhino/releases/new) on GitHub.
1. Create a new `vX.Y.Z` tag on the `main` branch.
2. Use the tag name for title.
3. Fill in the description from `NEWS.md`.
2. Prepare the package for further development.
1. Add a development version `.9000` in `DESCRIPTION`.
2. Add a `# rhino (development version)` header in `NEWS.md`.
3. Link the `# rhino X.Y.Z` header to the GitHub release in `NEWS.md`.
3. Create a task to upgrade [Rhino Showcase](https://github.com/Appsilon/rhino-showcase).
4. Announce the release on `#proj-rhino`.
5. Plan promotion (social media, blog post, ...).

## Development process

Expand Down
2 changes: 1 addition & 1 deletion DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package: rhino
Title: A Framework for Enterprise Shiny Applications
Version: 1.2.0
Version: 1.2.0.9000
Authors@R:
c(
person("Kamil", "Żyła", role = c("aut", "cre"), email = "[email protected]"),
Expand Down
2 changes: 1 addition & 1 deletion NEWS.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# rhino (development version)

# [rhino 1.2.0](https://github.com/Appsilon/rhino/releases/tag/v1.2.0-rc.2)
# [rhino 1.2.0](https://github.com/Appsilon/rhino/releases/tag/v1.2.0)

## Highlights
1. Don't use symbolic links internally.
Expand Down

0 comments on commit a733536

Please sign in to comment.