https://github.com/romnn/cargo-bumpversion
bump2version drop-in-replacement written in Rust
https://github.com/romnn/cargo-bumpversion
bump2version bumpversion cargo cargo-subcommand ci-cd cli releases rust semver versioning
Last synced: 7 months ago
JSON representation
bump2version drop-in-replacement written in Rust
- Host: GitHub
- URL: https://github.com/romnn/cargo-bumpversion
- Owner: romnn
- License: mit
- Created: 2022-09-07T09:46:19.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2025-01-08T01:33:49.000Z (10 months ago)
- Last Synced: 2025-01-19T08:43:39.113Z (9 months ago)
- Topics: bump2version, bumpversion, cargo, cargo-subcommand, ci-cd, cli, releases, rust, semver, versioning
- Language: Rust
- Homepage:
- Size: 718 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## bumpversion
[
](https://github.com/romnn/cargo-bumpversion/actions/workflows/build.yaml)
[](https://github.com/romnn/cargo-bumpversion/actions/workflows/test.yaml)
[](https://deps.rs/repo/github/romnn/cargo-bumpversion)
[](https://crates.io/crates/bumpversion)
[](https://docs.rs/taski)
This is an improved version of the popular [callowayproject/bump-my-version](https://github.com/callowayproject/bump-my-version) (formerly [peritus/bumpversion](https://github.com/peritus/bumpversion) and [c4urself/bump2version](https://github.com/c4urself/bump2version)) written in Rust.
#### Features
- No more global `pip` installs! Easy to install via `brew`, `cargo`, or precompiled static binary.
- Fully compatible with your existing configuration in `.bumpversion.cfg`, `setup.cfg`, or `pyproject.toml`
- Also supports configuration in your `Cargo.toml`
- Additional hook system### Improvements
The main added benefit of this library is the ability to use it as a library component for your local build and deployment scripts.
Often, people tag a new release using `bumpversion` and push a tag into CI (e.g. GitHub actions).
But what if your project requires a lot of data that is not accessible from the CI/CD host?You could use this library to write build scripts using the pre and post hooks provided to e.g. build and package your application and upon success tag a new release to be pushed into CI for deploying the packages built.
### CLI usage
You can also just use this version as a drop-in replacement for the Python `bump2version`.
Install it with
```bash
cargo install bumpversion# TODO:
brew install ...
```For usage instructions, please refer to [the Python version](https://github.com/callowayproject/bump-my-version).
#### Development
```bash
cargo run -- --dir ../dir/to/a/repo/with/.bumpversion.toml --verbose --dry-run patch
```