A strict, explicit SemVer CLI with first-class prerelease support.
cargo install cargo-goosectlcargo goosectl bump <command>Bump the current version by level:
cargo goosectl bump version patch
# 1.2.3 → 1.2.4
cargo goosectl bump version minor
# 1.2.3 → 1.3.0
cargo goosectl bump version major
# 1.2.3 → 2.0.0Start a prerelease on the new version line:
cargo goosectl bump version minor rc
# 1.2.3 → 1.3.0-rc.1Increment the current prerelease counter:
cargo goosectl bump prerelease
# alpha.1 → alpha.2Transition to a new prerelease identifier:
cargo goosectl bump prerelease beta
# 1.2.3-alpha.3 → 1.2.3-beta.1Finalize a prerelease into a stable release:
cargo goosectl bump release
# 1.2.0-rc.2 → 1.2.0All commands accept optional build metadata:
cargo goosectl bump version patch --metadata git.abc123Don't want to screw up your Cargo.toml just yet? Add the --dry-run flag to see what cargo-goosectl will do without modifying any files:
cargo goosectl --dry-run bump ...Prereleases must use the following format:
<identifier>.<counter>
Examples:
alpha.1beta.2rc.3
Invalid prerelease formats are rejected.