Skip to content

Rollup of 8 pull requests #141662

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

Merged
merged 18 commits into from
May 27, 2025
Merged

Rollup of 8 pull requests #141662

merged 18 commits into from
May 27, 2025

Conversation

matthiaskrgr
Copy link
Member

@matthiaskrgr matthiaskrgr commented May 27, 2025

Successful merges:

Failed merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

cberner and others added 18 commits May 20, 2025 14:09
try_lock() and try_lock_shared() do not need to handle these per the discussion in rust-lang#140718 (comment)
This makes error propagation from try_lock() and try_lock_shared()
more convenient
doesn't look like anyone is using it.
else it breaks with `rpath=false`.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Some combination of recent Rust changes (between 3d86494 and
aa57e46 from what I can tell) and changes in LLVM 21 (not recently,
as best I can tell) have caused this test to start showing the behavior
we want, so it's time to move this test to a proper place and mark it as
fixed on LLVM 21.
Add From<TryLockError> for io::Error

Adds a `From` impl to make error propagation easier, as discussed in the tracking issue

`TryLockError` is unstable under the "file_lock" feature. The related tracking issue is rust-lang#130994

This PR also cleanups the Windows implementation of `try_lock()` and `try_lock_shared()` as [discussed here](rust-lang#140718 (comment))
…mease

Rename `{GenericArg,Term}::unpack()` to `kind()`

A well-deserved rename IMO.

r? `@oli-obk` or `@lcnr` (or anyone)

cc `@rust-lang/types,` but I'd be surprised if this is controversial.
triagebot: label LLVM submodule changes with `A-LLVM`

Fixes rust-lang#141601.

r? `@apiraino`
…l, r=oli-obk

remove `visit_mt` from `ast::mut_visit`

doesn't look like anyone is using it.
…n-check-rpath-false, r=jieyouxu

test: convert version_check ui test to run-make

else it breaks with `rpath=false`.

Fixes: rust-lang#141579
… r=Zalathar

coverage: Revert "unused local file IDs" due to empty function names

The changes to coverage metadata generation in rust-lang#140847 appear to be the most likely cause of the `function name is empty` errors reported in rust-lang#141577.

If that guess is correct, great. If not, no big deal.

---

This reverts commit 3b22c21, reversing changes made to 5f292ee.

r? ghost
…youxu

tests: mark option-niche-eq as fixed on LLVM 21

Some combination of recent Rust changes (between 3d86494 and aa57e46 from what I can tell) and changes in LLVM 21 (not recently, as best I can tell) have caused this test to start showing the behavior we want, so it's time to move this test to a proper place and mark it as fixed on LLVM 21.

~~Probably "fixes" rust-lang#49892, but I'll let others make that call.~~

Closes rust-lang#49892 unless we want to break out a dedicated issue for `Option<bool>::eq` on LLVM 20 (seems low-value).

`@rustbot` label llvm-main
@rustbot rustbot added A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-run-make Area: port run-make Makefiles to rmake.rs A-tidy Area: The tidy tool A-translation Area: Translation infrastructure, and migrating existing diagnostics to SessionDiagnostic PG-exploit-mitigations Project group: Exploit mitigations S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) rollup A PR which is a rollup labels May 27, 2025
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented May 27, 2025

📌 Commit c7d0a61 has been approved by matthiaskrgr

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels May 27, 2025
@bors
Copy link
Collaborator

bors commented May 27, 2025

⌛ Testing commit c7d0a61 with merge 45f256d...

@bors
Copy link
Collaborator

bors commented May 27, 2025

☀️ Test successful - checks-actions
Approved by: matthiaskrgr
Pushing 45f256d to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label May 27, 2025
@bors bors merged commit 45f256d into rust-lang:master May 27, 2025
8 checks passed
@rustbot rustbot added this to the 1.89.0 milestone May 27, 2025
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#141312 Add From for io::Error 772bd93efba57a12c970dd5b00a7231650b83a24 (link)
#141495 Rename {GenericArg,Term}::unpack() to kind() aec8c9d62148d35cfed1cdf5bb3a93b7f4388527 (link)
#141602 triagebot: label LLVM submodule changes with A-LLVM 4aa1ebb98e30eedc7174cb8ad7f37510ad896058 (link)
#141632 remove visit_mt from ast::mut_visit 8d015a0c06370ab28e00db1da40d3c46a92d76c2 (link)
#141640 test: convert version_check ui test to run-make 042a8b983ac7cfa66d5c92f032acf384bbca142e (link)
#141645 bump fluent-* crates c8b6ab2d0c18330b5e452f7ee4c31b8d25733571 (link)
#141650 coverage: Revert "unused local file IDs" due to empty funct… cb34a9f3829a7f16317a205430d862ce70d3f7b1 (link)
#141654 tests: mark option-niche-eq as fixed on LLVM 21 0d350c1f0838a5b53c98a2ca4986e4ed3c72e452 (link)

previous master: c583fa6d84

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

Copy link

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 c583fa6 (parent) -> 45f256d (this PR)

Test differences

Show 292 test diffs

Stage 1

  • [codegen] tests/codegen/option-niche-eq.rs: ignore (ignored when the LLVM version 19.1.1 is older than 20.0.0) -> [missing] (J4)
  • [codegen] tests/codegen/option-niche-eq.rs#LLVM21: [missing] -> ignore (ignored when the LLVM version 19.1.1 is older than 21.0.0) (J4)
  • [codegen] tests/codegen/option-niche-eq.rs#REGULAR: [missing] -> ignore (ignored when the LLVM version 19.1.1 is older than 20.0.0) (J4)
  • [codegen] tests/codegen/option-niche-unfixed/option-bool-eq.rs: pass -> [missing] (J5)
  • [coverage-map] tests/coverage/unused-local-file.rs: pass -> [missing] (J5)
  • [coverage-run] tests/coverage/unused-local-file.rs: ignore (ignored when the profiler runtime is not available) -> [missing] (J5)
  • [run-make] tests/run-make/version-check: [missing] -> pass (J5)
  • [ui] tests/ui/feature-gates/version_check.rs: ignore (only executed when the architecture is x86) -> [missing] (J5)
  • [codegen] tests/codegen/option-niche-eq.rs: pass -> [missing] (J6)
  • [codegen] tests/codegen/option-niche-eq.rs#LLVM21: [missing] -> ignore (ignored when the LLVM version 20.1.2 is older than 21.0.0) (J6)
  • [codegen] tests/codegen/option-niche-eq.rs#REGULAR: [missing] -> pass (J6)
  • fs::tests::file_try_lock_async: [missing] -> pass (J8)

Stage 2

  • [coverage-run] tests/coverage/unused-local-file.rs: ignore (ignored when cross-compiling) -> [missing] (J0)
  • [run-make] tests/run-make/version-check: [missing] -> pass (J1)
  • [coverage-run] tests/coverage/unused-local-file.rs: ignore (ignored when the profiler runtime is not available) -> [missing] (J2)
  • [codegen] tests/codegen/option-niche-unfixed/option-bool-eq.rs: pass -> [missing] (J3)
  • [coverage-map] tests/coverage/unused-local-file.rs: pass -> [missing] (J3)
  • [codegen] tests/codegen/option-niche-eq.rs#LLVM21: [missing] -> ignore (ignored when the LLVM version 20.1.5 is older than 21.0.0) (J7)
  • [codegen] tests/codegen/option-niche-eq.rs: ignore (ignored when the LLVM version 19.1.1 is older than 20.0.0) -> [missing] (J9)
  • [codegen] tests/codegen/option-niche-eq.rs#LLVM21: [missing] -> ignore (ignored when the LLVM version 19.1.1 is older than 21.0.0) (J9)
  • [codegen] tests/codegen/option-niche-eq.rs#REGULAR: [missing] -> ignore (ignored when the LLVM version 19.1.1 is older than 20.0.0) (J9)
  • [ui] tests/ui/feature-gates/version_check.rs: ignore (only executed when the architecture is x86) -> [missing] (J10)
  • [ui] tests/ui/feature-gates/version_check.rs: pass -> [missing] (J11)
  • [codegen] tests/codegen/option-niche-eq.rs#LLVM21: [missing] -> ignore (ignored when the LLVM version 20.1.2 is older than 21.0.0) (J12)
  • [codegen] tests/codegen/option-niche-eq.rs: pass -> [missing] (J13)
  • [codegen] tests/codegen/option-niche-eq.rs#REGULAR: [missing] -> pass (J13)
  • [coverage-run] tests/coverage/unused-local-file.rs: pass -> [missing] (J14)
  • [ui] tests/ui/feature-gates/version_check.rs: ignore (only executed when the operating system is linux) -> [missing] (J15)

Additionally, 264 doctest diffs were found. These are ignored, as they are noisy.

Job group index

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard 45f256d9d7cffb66185c0bf1b8a864cba79db90c --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

  1. x86_64-apple-1: 7578.9s -> 9211.8s (21.5%)
  2. aarch64-apple: 5178.0s -> 4332.3s (-16.3%)
  3. dist-aarch64-apple: 6017.2s -> 6589.2s (9.5%)
  4. dist-i686-mingw: 8038.9s -> 8764.8s (9.0%)
  5. x86_64-msvc-ext1: 7198.8s -> 7718.6s (7.2%)
  6. dist-riscv64-linux: 4959.0s -> 5308.7s (7.0%)
  7. x86_64-msvc-2: 7222.3s -> 6747.7s (-6.6%)
  8. dist-powerpc-linux: 5240.7s -> 5541.6s (5.7%)
  9. x86_64-apple-2: 4802.9s -> 5063.5s (5.4%)
  10. dist-x86_64-apple: 9058.9s -> 8597.7s (-5.1%)
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.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (45f256d): comparison URL.

Overall result: ✅ improvements - no action needed

@rustbot label: -perf-regression

Instruction count

This is the most reliable metric that we have; it was used to determine the overall result at the top of this comment. However, even this metric can sometimes exhibit noise.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-1.3% [-4.3%, -0.0%] 56
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (secondary 1.7%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
1.7% [1.7%, 1.7%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Cycles

Results (primary 2.8%, secondary -3.0%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
2.8% [2.8%, 2.8%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-3.0% [-4.8%, -2.1%] 12
All ❌✅ (primary) 2.8% [2.8%, 2.8%] 1

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 779.145s -> 779.523s (0.05%)
Artifact size: 366.36 MiB -> 366.37 MiB (0.00%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-run-make Area: port run-make Makefiles to rmake.rs A-tidy Area: The tidy tool A-translation Area: Translation infrastructure, and migrating existing diagnostics to SessionDiagnostic merged-by-bors This PR was explicitly merged by bors. PG-exploit-mitigations Project group: Exploit mitigations rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver)
Projects
None yet
Development

Successfully merging this pull request may close these issues.