cargo-mutants icon indicating copy to clipboard operation
cargo-mutants copied to clipboard

Release/version-update automation (maybe `cargo-release`)

Open sourcefrog opened this issue 1 year ago • 1 comments

sourcefrog avatar Jan 01 '24 15:01 sourcefrog

The automation of version number incrementing is a common task for which plenty of tools are available. Here are some I know about / have heard of:

Name Language Maintenance Status Version Number Incrementing Release Date Injection
Aeruginous Rust actively maintained yes yes
bump2version Python 3 ⚠️ unmaintained yes no
cargo-release Rust actively maintained yes yes
tbump Python 3 actively maintained yes yes

I worked with bump2version for years but then it became unmaintained, so I had to look for a new tool. I decided to implement my own solution into Aeruginous with the result that it specialises in CITATION.cff and Rust manifest updates.

cargo-release is the tool I came across when setting up CITATION.cff for Clap but I consider it rather complex such that a rather learning effort might be required. It is controlled via Cargo.toml.

tbump is one of the Python 3 replacements I found when looked for a possible successor of bump2version. I never worked with the tool but it appears to be rather similar to bump2version. Furthermore, it seems to also allow for release date injection as part of its extended features (before_commit).

kevinmatthes avatar Jan 02 '24 16:01 kevinmatthes

I will submit a PR with a basic setup for Aeruginous.

kevinmatthes avatar Jan 06 '24 14:01 kevinmatthes

Please see #232 for my suggestion.

kevinmatthes avatar Jan 06 '24 15:01 kevinmatthes