Fix failure filtering for std

std failures weren't getting filtered properly since I only checked
core.
This commit is contained in:
nora 2025-07-04 18:48:16 +02:00
parent 9de21d4198
commit 3f302c7180

View file

@ -52,7 +52,7 @@ async fn web_build(State(state): State<AppState>, Query(query): Query<BuildQuery
rustflags: Option<String>, rustflags: Option<String>,
version: &'static str, version: &'static str,
status: Status, status: Status,
} }
match state match state
.db .db
@ -140,11 +140,9 @@ async fn web_target(State(state): State<AppState>, Query(query): Query<TargetQue
let mut builds = builds_grouped let mut builds = builds_grouped
.into_iter() .into_iter()
.map(|(k, (v1, v2))| (k, v1, v2)) .map(|(k, (v1, v2))| (k, v1, v2))
.filter(|(_, build, _)| { .filter(|(_, core_build, std_build)| {
!filter_failures filter_build(filter_failures, core_build)
|| build || filter_build(filter_failures, std_build)
.as_ref()
.is_some_and(|build| build.status == Status::Error)
}) })
.collect::<Vec<_>>(); .collect::<Vec<_>>();
builds.sort_by_cached_key(|build| Reverse(build.0.clone())); builds.sort_by_cached_key(|build| Reverse(build.0.clone()));
@ -216,11 +214,9 @@ async fn web_nightly(State(state): State<AppState>, Query(query): Query<NightlyQ
let mut builds = builds_grouped let mut builds = builds_grouped
.into_iter() .into_iter()
.map(|(k, (v1, v2))| (k, v1, v2)) .map(|(k, (v1, v2))| (k, v1, v2))
.filter(|(_, build, _)| { .filter(|(_, core_build, std_build)| {
!filter_failures filter_build(filter_failures, core_build)
|| build || filter_build(filter_failures, std_build)
.as_ref()
.is_some_and(|build| build.status == Status::Error)
}) })
.collect::<Vec<_>>(); .collect::<Vec<_>>();
builds.sort_by_cached_key(|build| build.0.clone()); builds.sort_by_cached_key(|build| build.0.clone());
@ -324,3 +320,10 @@ impl BuildInfo {
) )
} }
} }
fn filter_build(filter_failures: bool, build: &Option<BuildInfo>) -> bool {
!filter_failures
|| build
.as_ref()
.is_some_and(|build| build.status == Status::Error)
}