forked from rust-phf/rust-phf
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request rust-phf#266 from rust-phf/update-release-process
- Loading branch information
Showing
2 changed files
with
33 additions
and
30 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,35 @@ | ||
# How to make a new release | ||
|
||
- Update the version number and all the references to it | ||
- Make a new release on GitHub (i.e. add a new git tag) | ||
- Publish crates in order: | ||
1. `phf_shared` | ||
2. `phf_generator` | ||
3. `phf_codegen` | ||
4. `phf_macros` | ||
5. `phf` | ||
Since v0.11.1, this repository uses [`cargo-smart-release`](https://crates.io/crates/cargo-smart-release) to release crates. | ||
|
||
## Installation | ||
|
||
```sh | ||
cargo install cargo-smart-release | ||
``` | ||
|
||
## Before running `cargo-smart-release` | ||
|
||
If the next version has a major change or bumps MSRV, i.e. it increases a minor version on `v0.Y.Z` or a major version on `vX.Y.Z`, | ||
update the versions mentioned on the README and doc comments (and CI config if it touches MSRV). | ||
|
||
## Run `cargo-smart-release` | ||
|
||
First, just run: | ||
|
||
```sh | ||
cargo smart-release phf phf_codegen phf_generator phf_macros phf_shared | ||
``` | ||
|
||
This would show what `cargo-smart-release` would do, e.g. how it updates the version number, changelog, etc. | ||
If you satisfy the output, run: | ||
|
||
```sh | ||
cargo smart-release -u -e phf phf_codegen phf_generator phf_macros phf_shared | ||
``` | ||
|
||
This would make actual releases. `-e` means that it executes actual releases and `-u` means that it always updates crates-index. | ||
`cargo-smart-release` also takes care of the Git tags. | ||
|
||
After executing it, ensure that all the releases are actually happened and the tags are pushed. | ||
If all the things are fine, that's it! |
This file was deleted.
Oops, something went wrong.