From 2d61c587ff49f9b8d3999b77e9bb03744329abd8 Mon Sep 17 00:00:00 2001 From: Yerkebulan Tulibergenov Date: Tue, 15 Oct 2024 10:02:06 -0700 Subject: [PATCH] add support for stable versions before 1.8.0 --- blacksmith/src/lib.rs | 56 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/blacksmith/src/lib.rs b/blacksmith/src/lib.rs index 581faa12f..dca7ab703 100644 --- a/blacksmith/src/lib.rs +++ b/blacksmith/src/lib.rs @@ -198,6 +198,62 @@ impl Blacksmith { previous_stable_version_map.insert((minor, patch), (version, platforms)); } + // There are no manifests for stable versions before 1.8.0, + // so we hardcode them instead. + // i686-pc-windows-msvc wasn't supported until version 1.3.0. + for minor in 3..8 { + previous_stable_version_map.insert( + (minor, 0), + ( + format!("1.{}.0", minor), + Vec::from([ + "i686-apple-darwin".to_string(), + "i686-pc-windows-gnu".to_string(), + "i686-pc-windows-msvc".to_string(), + "i686-unknown-linux-gnu".to_string(), + "x86_64-apple-darwin".to_string(), + "x86_64-pc-windows-gnu".to_string(), + "x86_64-pc-windows-msvc".to_string(), + "x86_64-unknown-linux-gnu".to_string(), + ]), + ), + ); + } + + // x86_64-pc-windows-msvc wasn't supported until version 1.2.0. + previous_stable_version_map.insert( + (2, 0), + ( + "1.2.0".to_string(), + Vec::from([ + "i686-apple-darwin".to_string(), + "i686-pc-windows-gnu".to_string(), + "i686-unknown-linux-gnu".to_string(), + "x86_64-apple-darwin".to_string(), + "x86_64-pc-windows-gnu".to_string(), + "x86_64-pc-windows-msvc".to_string(), + "x86_64-unknown-linux-gnu".to_string(), + ]), + ), + ); + + for minor in 0..2 { + previous_stable_version_map.insert( + (minor, 0), + ( + format!("1.{}.0", minor), + Vec::from([ + "i686-apple-darwin".to_string(), + "i686-pc-windows-gnu".to_string(), + "i686-unknown-linux-gnu".to_string(), + "x86_64-apple-darwin".to_string(), + "x86_64-pc-windows-gnu".to_string(), + "x86_64-unknown-linux-gnu".to_string(), + ]), + ), + ); + } + for (_, (version, platforms)) in previous_stable_version_map.into_iter().rev() { blacksmith .previous_stable_versions