cargo release

Features - Ensure you are in a good state for release, including: - Right branch - Up-to-date with remote - Clean tree - Supports workspaces using cargo's native flags, like --workspace, --exclude and --package - Updates dependent crates in workspace when changing version - Change detection to help guide in what crates might not need a release - Optionally share commits - Handles cargo publish, tagging, and pushing - Pre-release search and replace for custom version updates, including - Updating changelogs - Update tags in Dockerfiles - Pre-release hook for extra customization, including - CHANGELOG generation

Install

Current release: 0.21.3

cargo install cargo-release

Usage

cargo release [level]

Prerequisite

Dry run

By default, cargo-release runs in dry-run mode so you can safely run it and verify what it will do. - Increase the logging level with each additional -v to get more details - Speed up dry-run by skipping cargo-publishs verify step with --no-verify

Once you are ready, pass the --execute flag.

Related tools

License

Licensed under either of

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.