bootstrap: add bootstrap step to run stdarch-gen checks in CI - #156674
bootstrap: add bootstrap step to run stdarch-gen checks in CI#156674xonx4l wants to merge 10 commits into
Conversation
|
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
cc @Amanieu, @folkertdev, @sayantn |
This comment has been minimized.
This comment has been minimized.
a594176 to
59674c1
Compare
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
@bors try jobs=x86_64-gnu |
This comment has been minimized.
This comment has been minimized.
bootstrap: add bootstrap step to run stdarch-gen checks in CI try-job: x86_64-gnu
This comment has been minimized.
This comment has been minimized.
|
💔 Test for bb3dc02 failed: CI. Failed job:
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
@bors try jobs=x86_64-gnu |
This comment has been minimized.
This comment has been minimized.
bootstrap: add bootstrap step to run stdarch-gen checks in CI try-job: x86_64-gnu
| } | ||
| } | ||
|
|
||
| #[derive(Debug, Clone, PartialEq, Eq, Hash)] |
There was a problem hiding this comment.
Could you please add a comment on top of this struct, to briefly explain what these tests do? Thanks!
|
@bors r=Kobzol |
bootstrap: add bootstrap step to run stdarch-gen checks in CI This PR ports stdarch-gen checks into the bootstrap test runner as a step, so that we can run the stdarch-gen checks via x.py test. Changes -: -> Adds a new `StdarchGenCheck` bootstrap step. -> Mirrors `https://github.com/rust-lang/stdarch/blob/f71ac102d30d5d1957277cbffc6ba631b67bffd1/.github/workflows/main.yml#L309-L333` (check-stdarch-gen job) -> `stdarch-gen-arm` uses a nightly only feature (`#![feature(pattern)]`) but bootstrap's cargo runs on the beta toolchain thus we set `RUSTC_BOOTSTRAP=1` on the child process so it builds. -> The generators call out to `rustfmt` to format their output so `rustfmt` needs to be on `PATH`. So added bootstrap's rustfmt to `PATH` before each run. If rustfmt isn't available, the step fails early and tells the user to set `rustfmt = true` in `bootstrap.toml` . r? @Kobzol
Rollup of 12 pull requests Successful merges: - #160529 (Upgrade and deduplicate dependencies) - #161017 (Library: enforce clippy deref lints in CI) - #156674 (bootstrap: add bootstrap step to run stdarch-gen checks in CI) - #161006 ([CI] Build newer `binutils` before building `gcc`) - #161141 (Add documentation for BPF targets) - #161157 (bootstrap: Move several items out of the crate root) - #161053 (Add regression test for borrow of array drop type in const) - #161073 (Add regression test for path printing with infinitely many visible names) - #161099 (Add regression test for unstable def_ident_span fingerprint with incremental recompilation) - #161146 (Switch to c8a EC2 runner for auto merges) - #161148 ([rustdoc] Put back one removed flaky GUI test (which hopefully isn't flaky anymore)) - #161150 (add crashtests [4/N])
bootstrap: add bootstrap step to run stdarch-gen checks in CI This PR ports stdarch-gen checks into the bootstrap test runner as a step, so that we can run the stdarch-gen checks via x.py test. Changes -: -> Adds a new `StdarchGenCheck` bootstrap step. -> Mirrors `https://github.com/rust-lang/stdarch/blob/f71ac102d30d5d1957277cbffc6ba631b67bffd1/.github/workflows/main.yml#L309-L333` (check-stdarch-gen job) -> `stdarch-gen-arm` uses a nightly only feature (`#![feature(pattern)]`) but bootstrap's cargo runs on the beta toolchain thus we set `RUSTC_BOOTSTRAP=1` on the child process so it builds. -> The generators call out to `rustfmt` to format their output so `rustfmt` needs to be on `PATH`. So added bootstrap's rustfmt to `PATH` before each run. If rustfmt isn't available, the step fails early and tells the user to set `rustfmt = true` in `bootstrap.toml` . r? @Kobzol
…uwer Rollup of 12 pull requests Successful merges: - #160529 (Upgrade and deduplicate dependencies) - #161017 (Library: enforce clippy deref lints in CI) - #156674 (bootstrap: add bootstrap step to run stdarch-gen checks in CI) - #161006 ([CI] Build newer `binutils` before building `gcc`) - #161141 (Add documentation for BPF targets) - #161157 (bootstrap: Move several items out of the crate root) - #161053 (Add regression test for borrow of array drop type in const) - #161073 (Add regression test for path printing with infinitely many visible names) - #161099 (Add regression test for unstable def_ident_span fingerprint with incremental recompilation) - #161103 (cleanup: rip out unnecessary `iter().last()` and `iter().next()`) - #161146 (Switch to c8a EC2 runner for auto merges) - #161148 ([rustdoc] Put back one removed flaky GUI test (which hopefully isn't flaky anymore))
|
💔 I suspect this PR failed tests as part of a rollup After fixing the problem, consider running a try job for the failed job before re-approving. Link to failure: #161179 (comment) |
|
This pull request was unapproved. This PR was contained in a rollup (#161179), which was unapproved. |
|
Hmm, I wonder if we should only do the check on Linux. It would be nice to improve the error message to show the actual diff of what changed, rather than saying that the diff is not clean. Could you please check what is different there? |
View all comments
This PR ports stdarch-gen checks into the bootstrap test runner as a step, so that we can run the stdarch-gen checks via x.py test.
Changes -:
-> Adds a new
StdarchGenCheckbootstrap step.-> Mirrors
https://github.com/rust-lang/stdarch/blob/f71ac102d30d5d1957277cbffc6ba631b67bffd1/.github/workflows/main.yml#L309-L333(check-stdarch-gen job)->
stdarch-gen-armuses a nightly only feature (#![feature(pattern)]) but bootstrap's cargo runs on the beta toolchain thus we setRUSTC_BOOTSTRAP=1on the child process so it builds.-> The generators call out to
rustfmtto format their output sorustfmtneeds to be onPATH. So added bootstrap's rustfmt toPATHbefore each run. If rustfmt isn't available, the step fails early and tells the user to setrustfmt = trueinbootstrap.toml.r? @Kobzol