From 597b774c01b959ea9b4103dae8516a7238345bae Mon Sep 17 00:00:00 2001 From: Mark Rousskov Date: Mon, 20 Jul 2020 11:38:43 -0400 Subject: [PATCH] Skip doc build-kind on 1.45.0 and lower versions --- collector/src/lib.rs | 9 +++++++++ collector/src/main.rs | 10 +++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/collector/src/lib.rs b/collector/src/lib.rs index fc10f87ee..69a3615f6 100644 --- a/collector/src/lib.rs +++ b/collector/src/lib.rs @@ -97,6 +97,15 @@ where Ok(Option::deserialize(deserializer)?.unwrap_or(0.0)) } +pub fn version_supports_doc(version_str: &str) -> bool { + if let Some(version) = version_str.parse::().ok() { + version >= semver::Version::new(1, 46, 0) + } else { + assert!(version_str.starts_with("beta") || version_str.starts_with("master")); + true + } +} + pub fn version_supports_incremental(version_str: &str) -> bool { if let Some(version) = version_str.parse::().ok() { version >= semver::Version::new(1, 24, 0) diff --git a/collector/src/main.rs b/collector/src/main.rs index 500d4a35a..82b681e54 100644 --- a/collector/src/main.rs +++ b/collector/src/main.rs @@ -646,6 +646,14 @@ fn main_result() -> anyhow::Result { } else { RunKind::all_non_incr() }; + let build_kinds = if collector::version_supports_doc(toolchain) { + BuildKind::all() + } else { + let mut all = BuildKind::all(); + let doc = all.iter().position(|bk| *bk == BuildKind::Doc).unwrap(); + all.remove(doc); + all + }; let which = |tool| { String::from_utf8( @@ -672,7 +680,7 @@ fn main_result() -> anyhow::Result { &mut rt, conn, &ArtifactId::Artifact(toolchain.to_string()), - &BuildKind::all(), + &build_kinds, &run_kinds, Compiler { rustc: Path::new(rustc.trim()),