Skip to content

Rollup of 9 pull requests#152484

Merged
rust-bors[bot] merged 27 commits intorust-lang:mainfrom
matthiaskrgr:rollup-h4u26eb
Feb 12, 2026
Merged

Rollup of 9 pull requests#152484
rust-bors[bot] merged 27 commits intorust-lang:mainfrom
matthiaskrgr:rollup-h4u26eb

Conversation

@matthiaskrgr
Copy link
Member

Successful merges:

r? @ghost

Create a similar rollup

nyurik and others added 27 commits February 8, 2026 22:01
Make format-like macro calls look similar to what `cargo fmt` does automatically - remove trailing commas. When removing a comma, I also inlined some variables for consistency and clarity.
Keys and values now must be `Copy` due to erasing.
The derived version is equivalent to the hand-written version.
The latter is a new module.

As well as the code motion, some other changes were required.
- `QueryJobId` methods became free functions so they could move while
  `QueryJobId` itself stayed put. This was so `QueryMap` and
  `QueryJobInfo` could be moved.
- Some visibilities in `rustc_query_system` required changing.
- `collect_active_jobs_from_all_queries` is no longer required in `trait
  QueryContext`.
Because all uses are now in `rustc_query_impl`. This was made possible
by the previous commit. Less code in `rustc_middle`, hooray.
From `rustc_query_system::query::job` to `rustc_query_impl::job`.
…rmal attribute logic instead of special cased checks
- CONTRIBUTING.md: add missing verb "is"
- INSTALL.md: fix subject-verb agreement ("requires" → "require")
- RELEASES.md: fix 4 issues (previous → previously, remove extra "is",
  add hyphen in Rust-for-Linux, results → result)
- src/doc/not_found.md: fix misspelling ("Standary" → "Standard")
- src/doc/index.md: fix awkward grammar in Embedded Rust Book description
…ode, r=Zalathar

Move more query system code

Towards the goal of eliminating `rustc_query_system`, this commit moves some code from `rustc_query_system` to `rustc_middle` and `rustc_query_impl`, and from `rustc_middle` to `rustc_query_impl`.

r? @Zalathar
…jdonszelmann

Restrict the set of things that const stability can be applied to

r? @jdonszelmann
…ati865

Reenable a GCI+mGCA+GCPT test case

The GCI+mGCA+GCPT test case can now be made to work with the necessary features and tweaks.
…-2, r=shepmaster

Bump tvOS, visionOS and watchOS Aarch64 targets to tier 2

Promote the following targets to Tier 2 without host tools:
- `aarch64-apple-tvos`.
- `aarch64-apple-tvos-sim`.
- `aarch64-apple-watchos`.
- `aarch64-apple-watchos-sim`.
- `aarch64-apple-visionos`.
- `aarch64-apple-visionos-sim`.

This implements MCP rust-lang/compiler-team#918. Fixes rust-lang#151705.

r? shepmaster
…s-wfck, r=BoxyUwU

mGCA: Add associated const type check

rust-lang#151642

r? BoxyUwU

I didn't bless tests just yet as it only fixes the dyn arm
…n, r=mati865

style: remove unneeded trailing commas

Make format-like macro calls look similar to what `cargo fmt` does automatically - remove trailing commas. When removing a comma, I also inlined some variables for consistency and clarity.

I'm working on a [clippy lint](rust-lang/rust-clippy#16530) to make this process automatic.
… r=TaKO8Ki

BikeshedGuaranteedNoDrop trait: add comments indicating that it can be observed on stable

Not sure if that's worth it, maybe this goes without saying for all these builtin traits?
Update books

## rust-lang/book

1 commits in 39aeceaa3aeab845bc4517e7a44e48727d3b9dbe..05d114287b7d6f6c9253d5242540f00fbd6172ab
2026-02-03 15:19:04 UTC to 2026-02-03 15:19:04 UTC

- Temporarily remove the link to `Drop::drop` (rust-lang/book#4576)

## rust-lang/nomicon

1 commits in 050c002a360fa45b701ea34feed7a860dc8a41bf..b8f254a991b8b7e8f704527f0d4f343a4697dfa9
2026-01-29 12:15:01 UTC to 2026-01-29 12:15:01 UTC

- Fix deprecation warning for compare_and_swap in atomics.md (rust-lang/nomicon#519)

## rust-lang/reference

12 commits in 990819b86c22bbf538c0526f0287670f3dc1a67a..addd0602c819b6526b9cc97653b0fadca395528c
2026-02-04 14:35:59 UTC to 2026-01-26 18:02:14 UTC

- const-eval.const-expr.field: make paragraph more clear (rust-lang/reference#2157)
- make more clear what the link target is (rust-lang/reference#2156)
- Update two URLs (rust-lang/reference#2154)
- Add a chapter on divergence (rust-lang/reference#2067)
- Guarantee `repr(C)` union field offset (rust-lang/reference#2128)
- Reference updates for forbidding object lifetime changing pointer casts (rust-lang/reference#1951)
- Clarify only arrays undergo unsized coercion during dispatch (rust-lang/reference#2139)
- Split the textual chapter into separate char and str chapters (rust-lang/reference#2145)
- Document ppc inline asm support (rust-lang/reference#2056)
- Unwrap items, expressions, patterns, and types (rust-lang/reference#2141)
- undefined behavior: add missing plural in `undefined.misaligned.ptr` (rust-lang/reference#2146)
- inline-assembly: add a space to the `asm.abi-clobbers.many` example (rust-lang/reference#2144)
Fix typos and grammar in top-level and src/doc documentation

Fix contextual typos and grammar issues in top-level and src/doc documentation that automated spellcheckers miss:

- `CONTRIBUTING.md`: add missing verb "is"
- `INSTALL.md`: fix subject-verb agreement ("requires" → "require")
- `RELEASES.md`: fix 4 issues (previous → previously, remove extra "is", add hyphen in Rust-for-Linux, results → result)
- `src/doc/not_found.md`: fix misspelling ("Standary" → "Standard")
- `src/doc/index.md`: fix awkward grammar in Embedded Rust Book description

No functional changes.
@rust-bors rust-bors bot added the rollup A PR which is a rollup label Feb 11, 2026
@rustbot rustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-CI Area: Our Github Actions CI labels Feb 11, 2026
@rustbot rustbot added T-infra Relevant to the infrastructure 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-release Relevant to the release subteam, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) labels Feb 11, 2026
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=5

@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 11, 2026

📌 Commit f195663 has been approved by matthiaskrgr

It is now in the queue for this repository.

@rust-bors rust-bors bot 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 Feb 11, 2026
@JonathanBrouwer
Copy link
Contributor

Since this rollup is third in queue at the moment anyways, does it make sense to remake it with all rollupable PRs in queue and run the try jobs again?

@matthiaskrgr
Copy link
Member Author

I don't see how this makes sense.
try jobs already passed #152475 (comment)

@JonathanBrouwer
Copy link
Contributor

JonathanBrouwer commented Feb 11, 2026

So we can include more PRs in the rollup, if you don't want that it's fine tho

@matthiaskrgr
Copy link
Member Author

how would this be helping?

@JonathanBrouwer
Copy link
Contributor

It would empty the queue quicker

@matthiaskrgr
Copy link
Member Author

It's actually the opposite. You will add more failures on top, which will actually have the opposite effect of maximizing time to merged.
You can easily see this on your own rollups: of your 200 rollups only 75 were merged (37%).
Looks like most of the time when you are doing rollups, the queue is actually growing instead of getting smaller?

@JonathanBrouwer
Copy link
Contributor

JonathanBrouwer commented Feb 11, 2026

I think the high closed rollups rate is because a lot of the time I close and remake rollups to add a few more PRs in, before they even start running, not a lot of them actually fail. Every "broken" PR in the queue will cause a failure at some point, so making a bigger rollup only moves the failures forwards, it does not add more failures

@JonathanBrouwer
Copy link
Contributor

JonathanBrouwer commented Feb 11, 2026

I don't really feel like argueing about optimal rollup strategy tho, just wanted to make a suggestion, so I'll just let you do your thing :)

@matthiaskrgr
Copy link
Member Author

so making a bigger rollup only moves the failures forwards,

exactly, it moves the failures forward means it moves the merge (shrinking of the queue) backwards which causes the queue to grow and everyone has to wait longer

@JonathanBrouwer
Copy link
Contributor

JonathanBrouwer commented Feb 11, 2026

Moving the failures forwards increases the throughput (amount of PRs merged per time) but sacrifices latency.
To be precise, my strategy may delay merging PRs at the start of the queue because rollups will fail more often, but will empty the queue quicker because throughput is higher. People at the start of the queue wait longer, so people later in the queue don't have to wait as long. I theorize that the average waiting time would also be lower, tho I haven't calculated that.
I think this is worth it, but that's subjective, the classic throughput vs latency tradeoff in CS

@rust-bors

This comment has been minimized.

@rust-bors rust-bors bot added merged-by-bors This PR was explicitly merged by bors. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Feb 12, 2026
@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 12, 2026

☀️ Test successful - CI
Approved by: matthiaskrgr
Duration: 5h 36m 43s
Pushing 5fdff78 to main...

@rust-bors rust-bors bot merged commit 5fdff78 into rust-lang:main Feb 12, 2026
12 checks passed
@rustbot rustbot added this to the 1.95.0 milestone Feb 12, 2026
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#152021 Bump tvOS, visionOS and watchOS Aarch64 targets to tier 2 80541af5d443d72498251f06d12f98c4d67ef375 (link)
#152146 mGCA: Add associated const type check a6fd87567a8b62b8de48e0fd15f4e3d46f0faf68 (link)
#152372 style: remove unneeded trailing commas 8d1dfe0bd846da4a5b207828632f98239381fcde (link)
#152383 BikeshedGuaranteedNoDrop trait: add comments indicating tha… c92661c4305cd02a2cc7fec55e129be0d8d50964 (link)
#152397 Update books 5e63d3c1d8d6293106b044b63f20117345898776 (link)
#152419 Move more query system code c7f9582e3db326a94c30dcc988c2f3225a3ce0f3 (link)
#152431 Restrict the set of things that const stability can be appl… f797190c49a27253b6bfd2aa134acd0e41ea28fc (link)
#152436 Reenable a GCI+mGCA+GCPT test case 7840da4d521a602825133b932b7e35ef0d2d9057 (link)
#152441 Fix typos and grammar in top-level and src/doc documentation 62c95040715a8b1f86eade837ca99c1ce12b8057 (link)

previous master: 7057231bd7

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

@github-actions
Copy link
Contributor

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 7057231 (parent) -> 5fdff78 (this PR)

Test differences

Show 28 test diffs

Stage 1

  • [ui] tests/ui/const-generics/associated-const-bindings/dyn-const-projection-escaping-bound-vars.rs: [missing] -> pass (J1)
  • [ui] tests/ui/const-generics/associated-const-bindings/wf-mismatch-1.rs: [missing] -> pass (J1)
  • [ui] tests/ui/const-generics/associated-const-bindings/wf-mismatch-2.rs: [missing] -> pass (J1)
  • [ui] tests/ui/const-generics/associated-const-bindings/wf-mismatch-3.rs: [missing] -> pass (J1)

Stage 2

  • [run-make] tests/run-make/compressed-debuginfo-zstd: ignore (ignored if LLVM wasn't build with zstd for ELF section compression or LLVM is not the default codegen backend) -> pass (J0)
  • [ui] tests/ui/const-generics/associated-const-bindings/dyn-const-projection-escaping-bound-vars.rs: [missing] -> pass (J2)
  • [ui] tests/ui/const-generics/associated-const-bindings/wf-mismatch-1.rs: [missing] -> pass (J2)
  • [ui] tests/ui/const-generics/associated-const-bindings/wf-mismatch-2.rs: [missing] -> pass (J2)
  • [ui] tests/ui/const-generics/associated-const-bindings/wf-mismatch-3.rs: [missing] -> pass (J2)

Additionally, 19 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 5fdff787e6ef7cd4458f81e69cbb4d2a39439a98 --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. dist-aarch64-apple: 4h 18m -> 1h 39m (-61.4%)
  2. dist-x86_64-apple: 5h 1m -> 2h 18m (-53.9%)
  3. aarch64-apple: 3h 35m -> 5h 27m (+52.3%)
  4. dist-arm-linux-musl: 3h 3m -> 1h 35m (-47.8%)
  5. dist-x86_64-solaris: 2h 54m -> 1h 33m (-46.1%)
  6. pr-check-1: 56m 8s -> 30m 49s (-45.1%)
  7. dist-x86_64-illumos: 3h 6m -> 1h 42m (-44.7%)
  8. dist-sparcv9-solaris: 2h 38m -> 1h 30m (-43.1%)
  9. x86_64-gnu-debug: 3h 7m -> 1h 53m (-39.4%)
  10. dist-android: 44m 55s -> 27m 21s (-39.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 (5fdff78): comparison URL.

Overall result: no relevant changes - no action needed

@rustbot label: -perf-regression

Instruction count

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

Max RSS (memory usage)

Results (secondary 0.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)
5.4% [5.4%, 5.4%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-4.9% [-4.9%, -4.9%] 1
All ❌✅ (primary) - - 0

Cycles

Results (secondary -5.1%)

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)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-5.1% [-5.5%, -4.6%] 2
All ❌✅ (primary) - - 0

Binary size

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

Bootstrap: 476.438s -> 476.59s (0.03%)
Artifact size: 397.88 MiB -> 397.90 MiB (0.01%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) A-CI Area: Our Github Actions CI A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-testsuite Area: The testsuite used to check the correctness of rustc merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-infra Relevant to the infrastructure 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-release Relevant to the release subteam, 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.