Installation
Install Rust and then run:
cargo install releaser
Rust workspace release procedure
- Read existing version from crate's toml file
- Increment version in all workspace's crate's toml files and it's dependencies
- Commit all version changes
- Create new git tag
- Run cargo publish --manifest-path …
- Wait some time (20 seconds by default) before publish next crate so as to use new version
- Push git tag
Rust crate release procedure
- Read existing version from crate's toml file
- Increment version in the toml file
- Commit all version changes
- Create new git tag
- Run cargo publish --manifest-path …
- Push git tag
Command line syntax:
Rust releasing workspace tool
USAGE:
releaser [SUBCOMMAND]
FLAGS:
-h, --help Prints help information
-V, --version Prints version information
SUBCOMMANDS:
c Release single crate specified by path
help Prints this message or the help of the given subcommand(s)
w Release workspace specified by path
Releasing workspace
Release workspace specified by path
USAGE:
releaser w [OPTIONS] <INCR> <PATH>
FLAGS:
-h, --help Prints help information
-V, --version Prints version information
OPTIONS:
-d, --delay <delay> Delay in seconds between publish next workflow's crate [default: 20]
ARGS:
<INCR> Version increment. One of the following: major, minor or patch
<PATH> Sets workspace root path
Releasing simple crate
Release single crate specified by path
USAGE:
releaser c <INCR> <PATH>
FLAGS:
-h, --help Prints help information
-V, --version Prints version information
ARGS:
<INCR> Version increment. One of the following: major, minor or patch
<PATH> Sets crate's root path