cargo-release 0.4.0

cargo release command
cargo-release-0.4.0 is not a library.
Visit the last successful build: cargo-release-0.25.22

cargo release

This a script standardize release of cargo project for you.

Basically it runs following tasks:

  • Check if current working directory is git clean
  • Read version from Cargo.toml, remove prerelease extension and commit if necessary
  • Run cargo publish
  • Create a git tag for this version
  • Bump version for next development cycle
  • git push

Install

cargo install cargo-release

Usage

cargo release

Prerequisite

  • Your project should be managed by git.

Release level

Use -l [level] or --level [level] to specify a release level.

  • By default, cargo release removes prerelease extension; if there is no prerelease extension, the current version will be used (0.1.0-pre -> 0.1.0, 0.1.0 -> 0.1.0)
  • If level is patch and current version is a prerelease, it behaves like default; if current version has no extension, it bumps patch version (0.1.0 -> 0.1.1)
  • If level is minor, it bumps minor version (0.1.0-pre -> 0.2.0)
  • If level is major, it bumps major version (0.1.0-pre -> 1.0.0)

Signing your git commit and tag

Use --sign option to GPG sign your release commits and tags. Further information

Upload rust doc to github pages

By using --upload-doc option, cargo-release will generate rustdoc during release process, and commit the doc directory to gh-pages branch. So you can access your rust doc at https://YOUR-GITHUB-USERNAME.github.io/YOUR-REPOSITORY-NAME/YOUR-CRATE-NAME

Currently only github pages is supported.

WARNING

This option will override your existed gh-pages branch, use it at your own risk.

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.