Skip to content

Commit 8518b86

Browse files
committed
Auto merge of #689 - Mark-Simulacrum:retry-regressions, r=Mark-Simulacrum
Automatically ignore trybuild compiler diagnostic changes
2 parents 1e33086 + f6b0ab5 commit 8518b86

File tree

3 files changed

+14
-1
lines changed

3 files changed

+14
-1
lines changed

src/report/display.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ impl ResultName for FailureReason {
1717
FailureReason::ICE => "ICE".into(),
1818
FailureReason::CompilerError(_) => "compiler error".into(),
1919
FailureReason::DependsOn(_) => "faulty deps".into(),
20+
FailureReason::CompilerDiagnosticChange => "compiler diagnostic changed".into(),
2021
}
2122
}
2223

@@ -27,6 +28,7 @@ impl ResultName for FailureReason {
2728
| FailureReason::NetworkAccess
2829
| FailureReason::Timeout
2930
| FailureReason::OOM
31+
| FailureReason::CompilerDiagnosticChange
3032
| FailureReason::ICE => self.short_name(),
3133
}
3234
}

src/results/mod.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,7 @@ pub enum FailureReason {
199199
Timeout,
200200
ICE,
201201
NetworkAccess,
202+
CompilerDiagnosticChange,
202203
CompilerError(BTreeSet<DiagnosticCode>),
203204
DependsOn(BTreeSet<Crate>),
204205
}
@@ -230,6 +231,7 @@ impl ::std::fmt::Display for FailureReason {
230231
.collect::<Vec<String>>()
231232
.join(", "),
232233
),
234+
FailureReason::CompilerDiagnosticChange => write!(f, "compiler-diagnostic-change"),
233235
}
234236
}
235237
}
@@ -274,7 +276,10 @@ impl ::std::str::FromStr for FailureReason {
274276
impl FailureReason {
275277
pub(crate) fn is_spurious(&self) -> bool {
276278
match *self {
277-
FailureReason::OOM | FailureReason::Timeout | FailureReason::NetworkAccess => true,
279+
FailureReason::OOM
280+
| FailureReason::Timeout
281+
| FailureReason::NetworkAccess
282+
| FailureReason::CompilerDiagnosticChange => true,
278283
FailureReason::CompilerError(_)
279284
| FailureReason::DependsOn(_)
280285
| FailureReason::Unknown

src/runner/test.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,7 @@ fn run_cargo<DB: WriteResults>(
110110

111111
let mut did_ice = false;
112112
let mut did_network = false;
113+
let mut did_trybuild = false;
113114
let mut error_codes = BTreeSet::new();
114115
let mut deps = BTreeSet::new();
115116

@@ -123,6 +124,9 @@ fn run_cargo<DB: WriteResults>(
123124
if line.contains("code: 111") && line.contains("Connection refused") {
124125
did_network = true;
125126
}
127+
if line.contains("the environment variable TRYBUILD=overwrite") {
128+
did_trybuild = true;
129+
}
126130

127131
// Avoid trying to deserialize non JSON output
128132
if !line.starts_with('{') {
@@ -198,6 +202,8 @@ fn run_cargo<DB: WriteResults>(
198202
Err(e.context(FailureReason::CompilerError(error_codes)).into())
199203
} else if did_network {
200204
Err(e.context(FailureReason::NetworkAccess).into())
205+
} else if did_trybuild {
206+
Err(e.context(FailureReason::CompilerDiagnosticChange).into())
201207
} else {
202208
Err(e.into())
203209
}

0 commit comments

Comments
 (0)