Skip to content

Commit 1b5476a

Browse files
committed
[skip ci] Change release procedure to use cargo-release
Remove the example Cargo.toml entry from README.md because it's obvious, and it creates extra work at release time.
1 parent 150579c commit 1b5476a

File tree

3 files changed

+17
-40
lines changed

3 files changed

+17
-40
lines changed

README.md

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -84,16 +84,10 @@ Tier 3:
8484
* x86_64-unknown-openbsd
8585
* x86_64-unknown-redox
8686

87-
## Usage
87+
## Minimum Supported Rust Version (MSRV)
8888

89-
`nix` requires Rust 1.46.0 or newer.
90-
91-
To use `nix`, add this to your `Cargo.toml`:
92-
93-
```toml
94-
[dependencies]
95-
nix = "0.22.0"
96-
```
89+
nix is supported on Rust 1.46.0 and higher. It's MSRV will not be
90+
changed in the future without bumping the major or minor version.
9791

9892
## Contributing
9993

RELEASE_PROCEDURE.md

Lines changed: 9 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -3,38 +3,16 @@ library.
33

44
# Before Release
55

6-
Based on changes since the last release, pick a new version number
7-
following semver conventions. For nix, a change that drops support for
8-
some Rust versions counts as a breaking change, and requires a major bump.
6+
Nix uses [cargo release](https://github.com/crate-ci/cargo-release) to automate
7+
the release process. Based on changes since the last release, pick a new
8+
version number following semver conventions. For nix, a change that drops
9+
support for some Rust versions counts as a breaking change, and requires a
10+
major bump.
911

1012
The release is prepared as follows:
1113

12-
- Ask for a new libc version if, necessary. It usually is.
13-
- Make a commit with a message like "Release v0.8.3" with the following
14-
changes:
15-
- In `CHANGELOG.md`, rename the Unreleased section to the new version
16-
followed by the date of the release.
17-
- Add a new Unreleased section header to `CHANGELOG.md` with the four
18-
Added, Changed, Fixed, and Removed sections added.
19-
- In `Cargo.toml`, update the version to the new version.
20-
- In `Cargo.toml`, change the libc dependency to the latest version.
21-
- In `README.md`, update the version in the Usage section to the new
22-
version.
14+
- Ask for a new libc version if, necessary. It usually is. Then update the
15+
dependency in Cargo.toml accordingly.
2316
- Confirm that everything's ready for a release by running
24-
`cargo publish --dry-run`
25-
- Make a pull request.
26-
- Once the PR is merged, tag the merge commit, e.g. `git tag v0.8.3
27-
$MERGE_COMMIT_SHA1`.
28-
- Push the tag, e.g. `git push origin v0.8.3`.
29-
30-
# Create Release
31-
32-
- Checkout the tag.
33-
- Publish to crates.io with `cargo publish`.
34-
35-
# After Release
36-
37-
Once a release is done, all that's left is to change the `libc` version
38-
back to using the version from git. So make a pull request containing a
39-
simple commit entitled "Start the next dev cycle" that changes the `libc`
40-
dependency in `Cargo.toml` to using it from git master.
17+
`cargo release --dry-run <patch|minor|major>`
18+
- Create the release with `cargo release <patch|minor|major>`

release.toml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
no-dev-version = true
2+
pre-release-replacements = [
3+
{ file="CHANGELOG.md", search="Unreleased", replace="{{version}}" },
4+
{ file="CHANGELOG.md", search="ReleaseDate", replace="{{date}}" }
5+
]

0 commit comments

Comments
 (0)