-
-
Notifications
You must be signed in to change notification settings - Fork 14.8k
Add a stable version of x.py #76380
Copy link
Copy link
Closed
Labels
C-feature-requestCategory: A feature request, i.e: not implemented / a PR.Category: A feature request, i.e: not implemented / a PR.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)
Metadata
Metadata
Assignees
Labels
C-feature-requestCategory: A feature request, i.e: not implemented / a PR.Category: A feature request, i.e: not implemented / a PR.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)
Type
Fields
Give feedbackNo fields configured for issues without a type.
This came up in #76165 in response to the changes from #73964: currently the way to adapt to changes in x.py is 'learn about them because it broke something and change your workflow'. This is not ideal, especially for automated scripts. It would be great to have a separate, stable interface that doesn't change regardless of any changes to contributor defaults.
I imagine the defaults looking mostly, but not exactly, like the defaults prior to #73964:
src/rustcwill be on by defaultdebuginfo = 1by default whendebug = truewill not be reverted - if you have strong opinions about debuginfo I expect you already havedebug = falsefor a release build.The setup I imagine is two different scripts that work on the same underlying codebase:
x.pyandbootstrap.py, wherebootstrap.pyis the stable version. Both will be 'facades' around the currentsrc/bootstrap/bootstrap.py, and the logic of choosing defaults will still live in bootstrap.py and the rustbuild crate.