allow including extra info in --version output

This commit is contained in:
Charles Hall 2024-03-11 20:11:59 -07:00
parent 741ca63e94
commit ac22b1bed1
No known key found for this signature in database
GPG key ID: 7B8E0645816E07CF
3 changed files with 17 additions and 2 deletions

View file

@ -2,9 +2,23 @@
use clap::Parser;
/// Returns the current version of the crate with extra info if supplied
///
/// Set the environment variable `CONDUIT_VERSION_EXTRA` to any UTF-8 string to
/// include it in parenthesis after the SemVer version. A common value are git
/// commit hashes.
fn version() -> String {
let cargo_pkg_version = env!("CARGO_PKG_VERSION");
match option_env!("CONDUIT_VERSION_EXTRA") {
Some(x) => format!("{} ({})", cargo_pkg_version, x),
None => cargo_pkg_version.to_owned(),
}
}
/// Command line arguments
#[derive(Parser)]
#[clap(about, version)]
#[clap(about, version = version())]
pub struct Args {}
/// Parse command line arguments into structured data