Nothing Special   »   [go: up one dir, main page]

Skip to content

romnn/cargo-bumpversion

Repository files navigation

bumpversion

build status test status crates.io docs.rs

This is an improved version of the popular callowayproject/bump-my-version (formerly peritus/bumpversion and 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

cargo install bumpversion

For usage instructions, please refer to the Python version.

Library usage

TODO

TODO

  • add a git2 backend and make the tests into macros
  • add the versioning functions
  • add the config file parsing
  • add the main CLI loop