2016-07-22 21:37:51 +00:00
|
|
|
This document lists the steps that lead to a successful release of the Nix
|
|
|
|
library.
|
|
|
|
|
|
|
|
# Before Release
|
|
|
|
|
2021-09-29 03:16:42 +00:00
|
|
|
Nix uses [cargo release](https://github.com/crate-ci/cargo-release) to automate
|
|
|
|
the release process. 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.
|
2016-07-22 21:37:51 +00:00
|
|
|
|
2016-09-08 00:32:59 +00:00
|
|
|
The release is prepared as follows:
|
|
|
|
|
2021-09-29 03:16:42 +00:00
|
|
|
- Ask for a new libc version if, necessary. It usually is. Then update the
|
|
|
|
dependency in Cargo.toml accordingly.
|
2018-06-02 17:46:04 +00:00
|
|
|
- Confirm that everything's ready for a release by running
|
2021-12-17 02:00:34 +00:00
|
|
|
`cargo release <patch|minor|major>`
|
|
|
|
- Create the release with `cargo release -x <patch|minor|major>`
|
2022-04-21 21:05:06 +00:00
|
|
|
- Push the created tag to GitHub.
|