-
-
Notifications
You must be signed in to change notification settings - Fork 14.2k
Remap both absolute and relative paths when building rustc and std
#150283
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
Conversation
|
Some changes occurred in src/tools/compiletest cc @jieyouxu The rustc-dev-guide subtree was changed. If this PR only touches the dev guide consider submitting a PR directly to rust-lang/rustc-dev-guide otherwise thank you for updating the dev guide with your changes. cc @BoxyUwU, @jieyouxu, @Kobzol, @tshepang The run-make-support library was changed cc @jieyouxu |
This comment has been minimized.
This comment has been minimized.
bd16ded to
4d839da
Compare
|
@bors try jobs=dist-x86_64-linux |
Remap both absolute and relative paths when building `rustc` and `std` try-job: dist-x86_64-linux
This comment has been minimized.
This comment has been minimized.
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 for working directory) so let's remap the build directory as well. | ||
| format!("{}={map_to}", self.build.src.display()), | ||
| ] | ||
| .join("\t"); |
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.
Remark: technically, I think filename parts of Windows(?)/Linux(?) paths can actually contain tabs, however, other tools have the tendency to also break on those, so I'm not worried about that possibility...
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.
Yes, paths can contain any character on platforms that use unix paths. Well except \0.
|
@bors r+ rollup |
|
@bors rollup=never (for bisection purposes) |
|
☀️ Test successful - checks-actions |
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing 5a7ad8e (parent) -> efa32de (this PR) Test differencesShow 8 test diffsStage 0
Stage 1
Stage 2
Additionally, 3 doctest diffs were found. These are ignored, as they are noisy. Job group index
Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard efa32de15b394620520f24781d8c55d4df6fa106 --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
|
Finished benchmarking commit (efa32de): comparison URL. Overall result: ❌ regressions - no action needed@rustbot label: -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary -0.1%, secondary -2.8%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary 4.0%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (primary 0.0%, secondary 0.1%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 482.036s -> 484.408s (0.49%) |
Turns out #150110 didn't work as expected, because when the standard library sources are present, we helpfully un-remap the paths to the local directory of the user, including when we are building the compiler and standard library it-self (duh!), and since those paths are absolute (not relative), our purely relative remapping didn't pick them up.
This behavior wasn't a issue before because the un-remap logic immediately tries to remap them again, and since we had the absolute remapping we would just remap them to the the same thing.
To fix that issue I've adjusted our remapping to remap both the absolute and relative paths when building
rustcandstd, as well as added a run-make to make sure we don't regress it again (with a newneeds-std-remap-debuginfodirective).r? @jieyouxu