-
Notifications
You must be signed in to change notification settings - Fork 290
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add post about changes to x.py defaults #666
Conversation
r? @rust-lang/compiler |
This looks good to me. |
+ `test`: stage 1 | ||
+ `doc`: stage 0 | ||
|
||
- stage1 `rustc` artifacts are no longer built by `x.py build --stage 1`. To get the old behavior back, use `x.py build --stage 1 src/rustc`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe say that x.py build --stage 1
is equivalent to x.py build --stage 1 library/std
, assuming that's true?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, sort of. It's 'everything minus rustc', which includes the standard library, tools, and rustdoc
. I can add that to the post.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And most tools are disabled by default, so in the common case it's just library/std
+ rustdoc
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hm, that seems like an odd default -- I don't think I ever wanted the tools or rustdoc. But whatever. I guess I'll just have to keep explicitly specifying the library.^^
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah ... I meant to change it to filter library/std
in the MCP but by the time I thought of it it had already been accepted :/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How hard would it be to change this? If we all agree that to be the sensible choice, maybe we should just do it, even if it requires another MCP.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The implementation shouldn't be too hard. I'm happy to open another MCP but since they take at least 10 days to be accepted I think it would be helpful to publish this blog post first.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I never opened the MCP 🤦 I'll do that now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
rust-lang/compiler-team#351, feel free to second :)
Co-authored-by: Tshepang Lekhonkhobe <[email protected]> Co-authored-by: Ralf Jung <[email protected]>
I don't think this is waiting on anything besides #666 (comment). Should I wait until that MCP is accepted/implemented? If not I think this ready to be merged. |
Well if it all looks good I think we should merge this tomorrow, since today is release day. |
@XAMPPRocky can this be merged? |
|
||
1. `build/stage0-rustc` | ||
2. `build/stage1-rustc` | ||
3. `build/stage2-rustc` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems false - we only built 2 times, and uplifted stage 1 to stage 2 without full bootstrap being on, IIRC.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah hmm I'm confused then - maybe libstd was being built three times? --stage 2
means that something was built 3 times, because libstd is built during all of stage 0, 1, and 2.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As far as I know, the stage 2 libstd "build" just creates a copy of the one built for stage 1. No compilation happens.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well my changes seem much less impressive when you put it that way 😆 Updated to only say stage1 rustc/libstd
@jyn514 Yeah sorry, I was unexpectedly busy friday and forgot. And it turns out I actually can't merge it because of the |
@jyn514 you need to update the blog post date in the filename. |
* Add x.py post * rustc is a program, so it should be rendered as code * Improve wording Co-authored-by: Tshepang Lekhonkhobe <[email protected]> Co-authored-by: Ralf Jung <[email protected]> * Mention what `build` does, not just what it doesn't do * Add a short rationale for the changes * Improve wording * Highlight `x.py` as code * Improve wording * libstd was built three times, not rustc * Update the filename with the current date * 'stage 2 libstd' is just a copy of stage 1 Co-authored-by: Tshepang Lekhonkhobe <[email protected]> Co-authored-by: Ralf Jung <[email protected]>
Follow-up from https://rust-lang.zulipchat.com/#narrow/stream/122651-general/topic/x.2Epy.20changes.3F.
I made this PR late at night so it's very bare-bones, let me know if I should bring in some of the discussion from the links into the post.