Skip to content

Commit

Permalink
Format '--version' calendar version as 'YY.0M'
Browse files Browse the repository at this point in the history
We use calendar versioning which isn't supported by Cargo, so we need
to add an extra leading zero to the month for releases between January
and September to match our usual 'YY.0M' formatting.

Closes #12414
  • Loading branch information
the-mikedavis committed Jan 6, 2025
1 parent 6c9619d commit 03f35af
Showing 1 changed file with 11 additions and 9 deletions.
20 changes: 11 additions & 9 deletions helix-loader/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,6 @@ const MAJOR: &str = env!("CARGO_PKG_VERSION_MAJOR");
const MINOR: &str = env!("CARGO_PKG_VERSION_MINOR");
const PATCH: &str = env!("CARGO_PKG_VERSION_PATCH");

fn get_calver() -> String {
if PATCH == "0" {
format!("{MAJOR}.{MINOR}")
} else {
format!("{MAJOR}.{MINOR}.{PATCH}")
}
}

fn main() {
let git_hash = Command::new("git")
.args(["rev-parse", "HEAD"])
Expand All @@ -23,7 +15,17 @@ fn main() {
.and_then(|x| String::from_utf8(x.stdout).ok())
.or_else(|| option_env!("HELIX_NIX_BUILD_REV").map(|s| s.to_string()));

let calver = get_calver();
let minor = if MINOR.len() == 1 {
// Print single-digit months in '0M' format
format!("0{MINOR}")
} else {
MINOR.to_string()
};
let calver = if PATCH == "0" {
format!("{MAJOR}.{minor}")
} else {
format!("{MAJOR}.{minor}.{PATCH}")
};
let version: Cow<_> = match &git_hash {
Some(git_hash) => format!("{} ({})", calver, &git_hash[..8]).into(),
None => calver.into(),
Expand Down

0 comments on commit 03f35af

Please sign in to comment.