Skip to content

Commit

Permalink
Unrolled build for rust-lang#115088
Browse files Browse the repository at this point in the history
Rollup merge of rust-lang#115088 - LuuuXXX:issue-112009, r=albertlarsan68

Fix Step Skipping Caused by Using the `--exclude` Option

The original code was overreacting to the `--exclude` option,
https://github.com/rust-lang/rust/blob/eadf69a6c6edfe220fc5b1b659e46e271d75a3a1/src/bootstrap/builder.rs#L257-L260
For example:
When `x test --exclude alloc` or `x test --exclude library/alloc` is passed, the entire libraray test is skipped.

Related issues:
rust-lang#112009
  • Loading branch information
rust-timer authored Sep 8, 2023
2 parents cd71a37 + 45abd8c commit eeafad5
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 5 deletions.
6 changes: 4 additions & 2 deletions src/bootstrap/builder.rs
Original file line number Diff line number Diff line change
Expand Up @@ -302,8 +302,10 @@ impl StepDescription {
}
}

fn maybe_run(&self, builder: &Builder<'_>, pathsets: Vec<PathSet>) {
if pathsets.iter().any(|set| self.is_excluded(builder, set)) {
fn maybe_run(&self, builder: &Builder<'_>, mut pathsets: Vec<PathSet>) {
pathsets.retain(|set| !self.is_excluded(builder, set));

if pathsets.is_empty() {
return;
}

Expand Down
4 changes: 2 additions & 2 deletions src/bootstrap/builder/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -136,9 +136,9 @@ fn test_exclude_kind() {
let mut config = configure("test", &["A"], &["A"]);
// Ensure our test is valid, and `test::Rustc` would be run without the exclude.
assert!(run_build(&[], config.clone()).contains::<test::CrateLibrustc>());
// Ensure tests for rustc are skipped.
// Ensure tests for rustc are not skipped.
config.skip = vec![path.clone()];
assert!(!run_build(&[], config.clone()).contains::<test::CrateLibrustc>());
assert!(run_build(&[], config.clone()).contains::<test::CrateLibrustc>());
// Ensure builds for rustc are not skipped.
assert!(run_build(&[], config).contains::<compile::Rustc>());
}
Expand Down
3 changes: 2 additions & 1 deletion src/ci/docker/host-x86_64/wasm32/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -58,5 +58,6 @@ ENV NO_CHANGE_USER=1
RUN chown 10719 -R /emsdk-portable/

# Exclude library/alloc due to OOM in benches.
# FIXME: Fix std tests
ENV SCRIPT python3 ../x.py test --stage 2 --host='' --target $TARGETS \
--skip library/alloc
--skip library/alloc --skip library/std

0 comments on commit eeafad5

Please sign in to comment.