diff options
Diffstat (limited to 'RELEASE_PROCEDURE.md')
-rw-r--r-- | RELEASE_PROCEDURE.md | 29 |
1 files changed, 26 insertions, 3 deletions
diff --git a/RELEASE_PROCEDURE.md b/RELEASE_PROCEDURE.md index 2613ce5a..14496f23 100644 --- a/RELEASE_PROCEDURE.md +++ b/RELEASE_PROCEDURE.md @@ -3,16 +3,39 @@ library. # Before Release -The release is prepared by a commit with the following changes. +Based on changes since the last release, pick a new version number +following semver conventions. For nix, a change that drops support for +some Rust versions counts as a breaking change, and requires a major bump. -- In CHANGELOG.md, rename the Unreleased section to the new version followed by - the date of the release. +The release is prepared as follows: + +- Ask for a new libc version if, necessary. It usually is. +- Make a commit with a message like "Release v0.8.3" with the following + changes: + - In `CHANGELOG.md`, rename the Unreleased section to the new version + followed by the date of the release. + - In `Cargo.toml`, update the version to the new version. + - In `Cargo.toml`, change the libc dependency to the latest version. + - In `README.md`, update the version in the Usage section to the new + version. +- Make a pull request. +- Once the PR is merged, tag the merge commit, e.g. `git tag v0.8.3 + $MERGE_COMMIT_SHA1`. +- Push the tag, e.g. `git push origin v0.8.3`. # Create Release +- Checkout the tag. +- Publish to crates.io with `cargo publish`. + # After Release After the release a commit with the following changes is added to the master branch. - Add a new Unreleased section header to CHANGELOG.md. +- In `Cargo.toml`, update the version to the next `-dev` version, e.g. + `v0.8.4-dev`. +- In `Cargo.tml`, revert the libc dependency to its git master branch. +- Commit with a message like "Bump to v0.8.4-dev" +- Make a pull request. |