diff options
| author | Laurențiu Nicola <lnicola@dend.ro> | 2022-06-18 17:00:28 +0300 |
|---|---|---|
| committer | Laurențiu Nicola <lnicola@dend.ro> | 2022-06-18 17:00:28 +0300 |
| commit | e48ed5316fc8533bad5a5e50b2367fa0ab94f124 (patch) | |
| tree | e3ad1570b0e72582792880544e4a329ddcfc1280 | |
| parent | 7ca5d165f8862b6fd263c2beca74bb53bf8da37e (diff) | |
| download | rust-e48ed5316fc8533bad5a5e50b2367fa0ab94f124.tar.gz rust-e48ed5316fc8533bad5a5e50b2367fa0ab94f124.zip | |
internal: Handle fractional release numbers in changelog naming
| -rw-r--r-- | xtask/src/release.rs | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/xtask/src/release.rs b/xtask/src/release.rs index 04544d6f6b4..1c5fc64c241 100644 --- a/xtask/src/release.rs +++ b/xtask/src/release.rs @@ -36,7 +36,15 @@ impl flags::Release { let today = date_iso(sh)?; let commit = cmd!(sh, "git rev-parse HEAD").read()?; - let changelog_n = sh.read_dir(changelog_dir.as_path())?.len(); + let changelog_n = sh + .read_dir(changelog_dir.as_path())? + .into_iter() + .filter_map(|p| p.file_stem().map(|s| s.to_string_lossy().to_string())) + .filter_map(|s| s.splitn(5, '-').last().map(|n| n.replace('-', "."))) + .filter_map(|s| s.parse::<f32>().ok()) + .map(|n| 1 + n.floor() as usize) + .max() + .unwrap_or_default(); for adoc in [ "manual.adoc", |
