From af308882b6646f8f99d56a34a715c3bb33b0ce16 Mon Sep 17 00:00:00 2001 From: Ed Page Date: Fri, 8 Sep 2023 09:33:07 -0500 Subject: [PATCH] refactor: When expanding a range, return full versions --- src/main.rs | 4 ++-- src/rustup.rs | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/main.rs b/src/main.rs index 91427e5b..91e2f61d 100644 --- a/src/main.rs +++ b/src/main.rs @@ -104,7 +104,7 @@ fn try_main() -> Result<()> { let total: usize = packages.iter().map(|p| p.feature_count).sum(); for cargo_version in &range { - if cx.target.is_empty() || *cargo_version >= 64 { + if cx.target.is_empty() || cargo_version.minor >= 64 { progress.total += total; } else { progress.total += total * cx.target.len(); @@ -121,7 +121,7 @@ fn try_main() -> Result<()> { versioned_cargo_exec_on_packages( cx, &packages, - cargo_version, + cargo_version.minor, &mut progress, &mut keep_going, &mut generate_lockfile, diff --git a/src/rustup.rs b/src/rustup.rs index 084aff16..b32d36eb 100644 --- a/src/rustup.rs +++ b/src/rustup.rs @@ -29,7 +29,7 @@ pub(crate) fn version_range( step: u16, packages: &[PackageRuns<'_>], cx: &Context, -) -> Result> { +) -> Result> { let check = |version: &Version| { if version.major != 1 { bail!("major version must be 1"); @@ -104,8 +104,10 @@ pub(crate) fn version_range( MaybeVersion::Stable => get_stable_version()?, }; - let versions: Vec<_> = - (start_inclusive.minor..=end_inclusive.minor).step_by(step as _).collect(); + let versions: Vec<_> = (start_inclusive.minor..=end_inclusive.minor) + .step_by(step as _) + .map(|minor| Version { major: 1, minor, patch: None }) + .collect(); if versions.is_empty() { bail!("specified version range `{range}` is empty"); }