bootstrap blog post should document how x check
has changed and what to do instead
#142051
Labels
A-bootstrap-stages
Area: issues with the meaning of stage numbers
A-docs
Area: Documentation for any part of the project, including the compiler, standard library, and tools
T-bootstrap
Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)
Uh oh!
There was an error while loading. Please reload this page.
Location
https://blog.rust-lang.org/inside-rust/2025/05/29/redesigning-the-initial-bootstrap-sequence/
Summary
x check
has changed behavior since #119899. my understanding of the new behavior, as explained to me by @onur-ozkan, is:x check --stage 0 std
is a noop (✅ this is already in the post).x check --stage 0
is the same as before, except it skipsx check --stage 0 std
. (❌ not in the post)x check
without arguments is equivalent tox check --stage 0 && x check --stage 1 library
. this is very surprising to me and i wish it did not imply the latter command. but if it does imply the latter, we should document that instead of silently changing behavior. (❌ not in the post)we should also say what people should switch to. i do not think the default behavior (
x check
without arguments) is good for all use cases; see in particular #141955 and #t-infra/bootstrap > Stage 0 std redesign support thread @ 💬).i suggest the following docs:
x check --stage 1 std --set rust.download-rustc=true
x check --stage 0 compiler
x check --stage 0 compiler
. it is very unlikely for checking std to break for a tier 1 platform when the compiler has not been modified.x check --stage 0 compiler && x check --stage 1 std --set rust.download-rustc=true
cc #t-infra/bootstrap > Stage 0 std redesign support thread @ 💬
@rustbot label T-bootstrap A-bootstrap-stages
The text was updated successfully, but these errors were encountered: