Crates.io | conventional-semver-rs |
lib.rs | conventional-semver-rs |
version | 0.2.0 |
source | src |
created_at | 2022-10-07 05:28:03.414289 |
updated_at | 2022-10-14 06:16:43.479563 |
description | CLI and library to manage your git projects semantic version based on conventional commits |
homepage | |
repository | https://github.com/soulxburn/conventional-semver-rs |
max_upload_size | |
id | 682072 |
size | 42,867 |
Blazingly Fast 🚀 CLI tool for determining the next semantic version for a given repository based on conventional commits and git tags.
⚠️ This is in very early development. I would not recommend you integrate this tool into your project.
USAGE:
conver [OPTIONS] [PATH]
ARGS:
<PATH> Path to target git repository [default: .]
OPTIONS:
-f, --bump-files Bump the version files with the derived version
-h, --help Print help information
-r, --release Generate final release version
-t, --tag Tag the current commit with the release version
-v, --lead-v Add an optional leading v to the generated version i.e. (v2.1.3)
-V, --version Print version information
conventional-semver-rs will look in the root of the repositories directory for a conventional_release.toml
file. This configuration will be applied when generating versions of updating version files.
If conventional_release.toml
is not found, a default configuration will be loaded.
v = false
[commit_signature]
name = "conventional-semver-rs"
email = "conventional-semver-rs@github.com"
v = false # Include optional prefix v in generated version
# Customize the commit signature when bumping files and creating tags
[commit_signature]
name = "conventional-semver-rs"
email = "conventional-semver-rs@github.com"
# Describes a file containing the application's version to be updated on release
[[version_files]]
v = true # Configure option prefix v for version file
path = "version.txt" # Relative path to file
version_prefix = "" # Token to match before the version
version_postfix = "" # Token to match after the version
# Cargo.toml example
[[version_files]]
v = false
path = "Cargo.toml"
version_prefix = "version = \""
version_postfix = "\"[^,]"
# Preset example
# presets are for common version files,
# so you don't have to write the regex!
[[version_files]]
preset = "package.json"
# Currently Supported Presets
# - "Cargo.toml"
# - "package.json"
Pre-release versions are generated when the following conditions are true.
--release
option is not specified.{MAJOR}.{MINOR}.{PATCH}-{COMMITS_SINCE_TAG}-{COMMIT_HASH}
0.3.0-2-g3229751
Release versions are generated when the either of the following conditions are true.
--release
option is specified.{MAJOR}.{MINOR}.{PATCH}
0.3.0