Build Status

rusty-release

A command line tool to make a semi-automatic release of a cargo project.

You've to be explicit about the new version number by specifing which part of the version number should be incremented (e.g. rusty-release minor) and you've to write the Changelog by yourself, rusty-release will only put the new version number at the top of the Changelog and open it.

Installation

sh $ cargo install rusty-release

The build binary will be located at ~/.cargo/bin/rusty-release.

Usage

rusty-release has to be called with a version (rusty-release <VERSION>), where <VERSION> has to be either major, minor, patch or current. major/minor/patch increment the appropriate part of the current version number and current makes a release with the current version number. So current is most likely useful for the first, initial release.

The release process:

Configuration

If available, the configuration file .rusty-release.toml is read from the home directory and from the cargo project root directory (where the Cargo.toml resides).

The current supported configuration (default configuration displayed) is:

```toml

publish to crates.io

cargo_publish = true

push to git remote repository

git_push = true

string template for the creation of the commit message, currently the two

placeholders '' - the name of the cargo project - and

'' - the version of the release - are supported

commit_message = " "

a string template like 'commit_message' supporting the same placeholders

tag_name = "v"

the editor command for opening the changelog, for the best experience the

editor command should be able to open multiple files in a split view,

first the environment variables $EDITOR and $VISUAL are checked and if

they aren't available then "gvim -o" is used

editor = "gvim -o" ```