Rollup of 16 pull requests
Successful merges:
- rust-lang/rust#134442 (Specify the behavior of
file!) - rust-lang/rust#140372 (Exhaustively handle parsed attributes in CheckAttr)
- rust-lang/rust#140766 (Stabilize keylocker)
- rust-lang/rust#141642 (Note the version and PR of removed features when using it)
- rust-lang/rust#141818 (Don't create .msi installer for gnullvm hosts)
- rust-lang/rust#141909 (Add central execution context to bootstrap)
- rust-lang/rust#141992 (use
#[naked]for__rust_probestack) - rust-lang/rust#142101 (core::ptr: deduplicate more method docs)
- rust-lang/rust#142102 (docs: Small clarification on the usage of read_to_string and read_to_end trait methods)
- rust-lang/rust#142124 (Allow transmute casts in pre-runtime-MIR)
- rust-lang/rust#142240 (deduplicate the rest of AST walker functions)
- rust-lang/rust#142258 (platform-support.md: Mention specific Linux kernel version or later)
- rust-lang/rust#142262 (Mark
core::slice::memchras#[doc(hidden)]) - rust-lang/rust#142271 (compiler: fn ptrs should hit different lints based on ABI)
- rust-lang/rust#142275 (rustdoc: Refractor
clean_ty_generics) - rust-lang/rust#142288 (const_eval: fix some outdated comments)
r? @ghost @rustbot modify labels: rollup
@bors r+ rollup=never p=5
:pushpin: Commit 9f5c10ed43da38cf0a9b76f58f74bff948bf224e has been approved by fmease
It is now in the queue for this repository.
:hourglass: Testing commit 9f5c10ed43da38cf0a9b76f58f74bff948bf224e with merge 8ce228758651aa58c4d34e3bd65bf70a251da27e...
:sunny: Test successful - checks-actions Approved by: fmease Pushing 8ce228758651aa58c4d34e3bd65bf70a251da27e to master...
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 c6a955468b025dbe3d1de3e8f3e30496d1fb7f40 (parent) -> 8ce228758651aa58c4d34e3bd65bf70a251da27e (this PR)
Test differences
Show 525 test diffs
Stage 1
[crashes] tests/crashes/139825.rs: pass -> [missing] (J1)[ui] tests/ui/check-cfg/hrtb-crash.rs: [missing] -> pass (J1)[ui] tests/ui/feature-gates/feature-gate-keylocker_x86.rs: pass -> [missing] (J1)[ui] tests/ui/feature-gates/removed-features-note-version-and-pr-issue-141619.rs: [missing] -> pass (J1)
Stage 2
[ui] tests/ui/check-cfg/hrtb-crash.rs: [missing] -> pass (J0)[ui] tests/ui/feature-gates/removed-features-note-version-and-pr-issue-141619.rs: [missing] -> pass (J0)[crashes] tests/crashes/139825.rs: pass -> [missing] (J2)[ui] tests/ui/feature-gates/feature-gate-keylocker_x86.rs: pass -> [missing] (J3)[ui] tests/ui/feature-gates/feature-gate-keylocker_x86.rs: ignore (only executed when the architecture is x86_64) -> [missing] (J4)
Additionally, 516 doctest diffs were found. These are ignored, as they are noisy.
Job group index
- J0: aarch64-apple, aarch64-gnu, arm-android, armhf-gnu, dist-i586-gnu-i586-i686-musl, i686-gnu-1, i686-gnu-nopt-1, i686-msvc-1, test-various, x86_64-apple-2, x86_64-gnu, x86_64-gnu-llvm-19-2, x86_64-gnu-llvm-20-2, x86_64-gnu-nopt, x86_64-gnu-stable, x86_64-mingw-1, x86_64-msvc-1
- J1: x86_64-gnu-llvm-19-3, x86_64-gnu-llvm-20-3
- J2: aarch64-apple, aarch64-gnu, arm-android, armhf-gnu, dist-i586-gnu-i586-i686-musl, i686-gnu-1, i686-gnu-nopt-1, i686-msvc-1, test-various, x86_64-apple-1, x86_64-gnu, x86_64-gnu-llvm-19-2, x86_64-gnu-llvm-20-2, x86_64-gnu-nopt, x86_64-gnu-stable, x86_64-mingw-1, x86_64-msvc-1
- J3: test-various, x86_64-apple-2, x86_64-gnu, x86_64-gnu-nopt, x86_64-gnu-stable, x86_64-mingw-1, x86_64-msvc-1
- J4: aarch64-apple, aarch64-gnu, arm-android, armhf-gnu, dist-i586-gnu-i586-i686-musl, i686-gnu-1, i686-gnu-nopt-1, i686-msvc-1, x86_64-gnu-llvm-19-2, x86_64-gnu-llvm-20-2
Test dashboard
Run
cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 8ce228758651aa58c4d34e3bd65bf70a251da27e --output-dir test-dashboard
And then open test-dashboard/index.html in your browser to see an overview of all executed tests.
Job duration changes
- dist-apple-various: 6862.4s -> 8234.7s (20.0%)
- mingw-check-tidy: 78.1s -> 92.9s (18.9%)
- x86_64-apple-2: 4095.9s -> 4825.2s (17.8%)
- x86_64-apple-1: 6858.2s -> 8007.2s (16.8%)
- dist-ohos-aarch64: 4163.8s -> 4623.4s (11.0%)
- dist-ohos-x86_64: 4090.6s -> 4498.4s (10.0%)
- dist-aarch64-apple: 6292.1s -> 6852.3s (8.9%)
- dist-x86_64-mingw: 8267.9s -> 7550.9s (-8.7%)
- dist-powerpc64le-linux-musl: 5114.4s -> 5457.3s (6.7%)
- dist-loongarch64-linux: 6008.0s -> 6365.6s (6.0%)
How to interpret the job duration changes?
Job durations can vary a lot, based on the actual runner instance that executed the job, system noise, invalidated caches, etc. The table above is provided mostly for t-infra members, for simpler debugging of potential CI slow-downs.
π Perf builds for each rolled up PR:
| PR# | Message | Perf Build Sha |
|---|---|---|
| #134442 | Specify the behavior of file! |
7811d7eb457b8a9e76d072e3dcce9f5c606ddb70 (link) |
| #140372 | Exhaustively handle parsed attributes in CheckAttr | 695af6396b73ed133c98d7b1c77369f51ffae95d (link) |
| #140766 | Stabilize keylocker | 1fd753975e76e7d9c15ba4fac040dd9da19ece10 (link) |
| #141642 | Note the version and PR of removed features when using it | f19ec2e7a7ee3916e845ac7615016c066e13c781 (link) |
| #141818 | Don't create .msi installer for gnullvm hosts | f0e35c6b52ded016709d21338425a094f66c67b8 (link) |
| #141909 | Add central execution context to bootstrap | b428d7dc5acafe99153631115f4d274bdc65e6a8 (link) |
| #141992 | use #[naked] for __rust_probestack |
74eaf2ae4189fcf7fb618403139d5a7fc392670c (link) |
| #142101 | core::ptr: deduplicate more method docs | dd0a14e8d3009e1d7419b444059a8479d5a78172 (link) |
| #142102 | docs: Small clarification on the usage of read_to_string an⦠| d501ac532f26d71ed9d84175b8da0e484001fa05 (link) |
| #142124 | Allow transmute casts in pre-runtime-MIR | 38e457e3667eaed81a393920de46f6d09c662463 (link) |
| #142240 | deduplicate the rest of AST walker functions | 294d66c266c83139d525116a1b1addba75f318a4 (link) |
| #142258 | platform-support.md: Mention specific Linux kernel version β¦ | 1ba32a340cbf457385b4b0a9b54a36cfcbddefc6 (link) |
| #142262 | Mark core::slice::memchr as #[doc(hidden)] |
9a80e2efa68060a22f954881f01bf561aa2914d6 (link) |
| #142271 | compiler: fn ptrs should hit different lints based on ABI | 6d88bc873d83cf03ae0bc264ede7a16b0f37a59d (link) |
| #142275 | rustdoc: Refractor clean_ty_generics |
6126916f815c9de0cb6a456b5e3197a6782d4c90 (link) |
| #142288 | const_eval: fix some outdated comments | 697ce1ee9e23bc75343b6ce0da614c30297de0cc (link) |
previous master: c6a955468b
In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA
Finished benchmarking commit (8ce228758651aa58c4d34e3bd65bf70a251da27e): comparison URL.
Overall result: β regressions - please read the text below
Our benchmarks found a performance regression caused by this PR. This might be an actual regression, but it can also be just noise.
Next Steps:
- If the regression was expected or you think it can be justified,
please write a comment with sufficient written justification, and add
@rustbot label: +perf-regression-triagedto it, to mark the regression as triaged. - If you think that you know of a way to resolve the regression, try to create a new PR with a fix for the regression.
- If you do not understand the regression or you think that it is just noise,
you can ask the
@rust-lang/wg-compiler-performanceworking group for help (members of this group were already notified of this PR).
@rustbot label: +perf-regression cc @rust-lang/wg-compiler-performance
Instruction count
Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
| mean | range | count | |
|---|---|---|---|
| Regressions β (primary) |
0.5% | [0.1%, 0.7%] | 8 |
| Regressions β (secondary) |
0.4% | [0.2%, 1.1%] | 37 |
| Improvements β
(primary) |
-0.2% | [-0.2%, -0.2%] | 1 |
| Improvements β
(secondary) |
- | - | 0 |
| All ββ (primary) | 0.4% | [-0.2%, 0.7%] | 9 |
Max RSS (memory usage)
Results (primary 1.8%, secondary 8.6%)
A less reliable metric. May be of interest, but not used to determine the overall result above.
| mean | range | count | |
|---|---|---|---|
| Regressions β (primary) |
1.8% | [1.8%, 1.8%] | 1 |
| Regressions β (secondary) |
8.6% | [8.6%, 8.6%] | 1 |
| Improvements β
(primary) |
- | - | 0 |
| Improvements β
(secondary) |
- | - | 0 |
| All ββ (primary) | 1.8% | [1.8%, 1.8%] | 1 |
Cycles
Results (primary 0.5%)
A less reliable metric. May be of interest, but not used to determine the overall result above.
| mean | range | count | |
|---|---|---|---|
| Regressions β (primary) |
1.3% | [1.0%, 1.5%] | 3 |
| Regressions β (secondary) |
- | - | 0 |
| Improvements β
(primary) |
-2.0% | [-2.0%, -2.0%] | 1 |
| Improvements β
(secondary) |
- | - | 0 |
| All ββ (primary) | 0.5% | [-2.0%, 1.5%] | 4 |
Binary size
This benchmark run did not return any relevant results for this metric.
Bootstrap: 754.321s -> 755.415s (0.15%) Artifact size: 372.15 MiB -> 372.14 MiB (-0.00%)
Queries/functions early_lint_checks, pre_AST_expansion_lint_checks, jump out to me, so maybe lint-related? Let's see.
@rust-timer build 6d88bc873d83cf03ae0bc264ede7a16b0f37a59d
Queued 6d88bc873d83cf03ae0bc264ede7a16b0f37a59d with parent c6a955468b025dbe3d1de3e8f3e30496d1fb7f40, future comparison URL. There is currently 1 preceding artifact in the queue. It will probably take at least ~2.3 hours until the benchmark run finishes.
Finished benchmarking commit (6d88bc873d83cf03ae0bc264ede7a16b0f37a59d): comparison URL.
Overall result: no relevant changes - no action needed
Instruction count
This benchmark run did not return any relevant results for this metric.
Max RSS (memory usage)
Results (secondary 2.5%)
A less reliable metric. May be of interest, but not used to determine the overall result above.
| mean | range | count | |
|---|---|---|---|
| Regressions β (primary) |
- | - | 0 |
| Regressions β (secondary) |
5.5% | [2.8%, 8.3%] | 2 |
| Improvements β
(primary) |
- | - | 0 |
| Improvements β
(secondary) |
-3.4% | [-3.4%, -3.4%] | 1 |
| All ββ (primary) | - | - | 0 |
Cycles
Results (secondary 11.2%)
A less reliable metric. May be of interest, but not used to determine the overall result above.
| mean | range | count | |
|---|---|---|---|
| Regressions β (primary) |
- | - | 0 |
| Regressions β (secondary) |
11.2% | [11.2%, 11.2%] | 1 |
| Improvements β
(primary) |
- | - | 0 |
| Improvements β
(secondary) |
- | - | 0 |
| All ββ (primary) | - | - | 0 |
Binary size
This benchmark run did not return any relevant results for this metric.
Bootstrap: 754.321s -> 754.575s (0.03%) Artifact size: 372.15 MiB -> 372.15 MiB (-0.00%)
Hmmm.. maybe one of 74eaf2ae4189fcf7fb618403139d5a7fc392670c or 294d66c266c83139d525116a1b1addba75f318a4 then?
@rust-timer build 294d66c266c83139d525116a1b1addba75f318a4
Queued 294d66c266c83139d525116a1b1addba75f318a4 with parent c6a955468b025dbe3d1de3e8f3e30496d1fb7f40, future comparison URL. There are currently 2 preceding artifacts in the queue. It will probably take at least ~3.3 hours until the benchmark run finishes.
Finished benchmarking commit (294d66c266c83139d525116a1b1addba75f318a4): comparison URL.
Overall result: β regressions - please read the text below
Instruction count
Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
| mean | range | count | |
|---|---|---|---|
| Regressions β (primary) |
0.5% | [0.1%, 0.7%] | 9 |
| Regressions β (secondary) |
0.4% | [0.2%, 1.1%] | 36 |
| Improvements β
(primary) |
- | - | 0 |
| Improvements β
(secondary) |
- | - | 0 |
| All ββ (primary) | 0.5% | [0.1%, 0.7%] | 9 |
Max RSS (memory usage)
Results (secondary 8.3%)
A less reliable metric. May be of interest, but not used to determine the overall result above.
| mean | range | count | |
|---|---|---|---|
| Regressions β (primary) |
- | - | 0 |
| Regressions β (secondary) |
8.3% | [8.3%, 8.3%] | 1 |
| Improvements β
(primary) |
- | - | 0 |
| Improvements β
(secondary) |
- | - | 0 |
| All ββ (primary) | - | - | 0 |
Cycles
This benchmark run did not return any relevant results for this metric.
Binary size
This benchmark run did not return any relevant results for this metric.
Bootstrap: 754.321s -> 755.502s (0.16%) Artifact size: 372.15 MiB -> 372.15 MiB (-0.00%)
The regressions should all be taken care of in PR #142398 (not merged yet). See perf results: https://github.com/rust-lang/rust/pull/142398#issuecomment-2967893926.
Regression was fixed in https://github.com/rust-lang/rust/pull/142398.
@rustbot label: +perf-regression-triaged