Crates.io | versionisator |
lib.rs | versionisator |
version | 1.2.0 |
source | src |
created_at | 2019-09-01 10:40:19.65535 |
updated_at | 2022-07-23 13:16:13.922979 |
description | Tool for build.rs script to display handy version information |
homepage | https://github.com/primetype/versionator#readme |
repository | https://github.com/primetype/versionator |
max_upload_size | |
id | 161324 |
size | 11,891 |
First, add this to your Cargo.toml
:
[dependencies]
versionisator = "1.0"
Next, add this to your build script (build.rs
):
extern crate versionisator;
fn main() {
let version = versionisator::Version::new(
env!("CARGO_MANIFEST_DIR"),
env!("CARGO_PKG_NAME").to_string(),
env!("CARGO_PKG_VERSION").to_string()
);
println!("cargo:rustc-env=FULL_VERSION={}", version.full());
println!("cargo:rustc-env=SIMPLE_VERSION={}", version.simple());
println!("cargo:rustc-env=SOURCE_VERSION={}", version.hash());
}
FULL_VERSION
will give you:
versionator 1.0.0 (master-3326b9b+, debug, mac [x86_64]) - [rustc 1.37.0 (eae3437df 2019-08-13)]
\_________/ \___/ \____/ \_____/| \___/ \_/ \____/ \_________________________________/
| | | | | | | | |
| | | | | | | | +- rustc --version
| | | | | | | +- std::env::consts::ARCH
| | | | | | +- std::env::consts::OS
| | | | | +- Checks debug_assertions
| | | | +- Adds a "+" if the working tree is not clean
| | | +- Commit hash
| | +- Current branch name
| +- Package version from Cargo.toml
+- Package name from Cargo.toml
This package is inspired from input-output-hk/jormungandr/719 itself inspired from https://vallentin.io/2019/06/06/versioning which served as guide for the idea and the code.
This project is licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in bawawa
by you, as defined in the Apache-2.0 license, shall be
dual licensed as above, without any additional terms or conditions.