Skip to content

Conversation

@JonathanBrouwer
Copy link
Contributor

Successful merges:

Failed merges:

r? @ghost

Create a similar rollup

aatifsyed and others added 30 commits November 28, 2025 00:52
The UEFI variables set by the env vars should be volatile, otherwise
they will persist after reboot and use up scarce non-volatile storage.
should-fail is only meant for testing the compiletest framework itself.
It checks that the test runner itself panicked.
Instead keep parent modules in `DeclData` itself
Otherwise the std testsuite fails on older kernels.
When encountering code like `impl<N> Bar<N> for [u8; N]`, suggest `impl<const N: Type> Bar<N> for [u8; N]` as a possibility.

```
error[E0423]: expected value, found type parameter `T`
  --> $DIR/issue-69654.rs:5:25
   |
LL | impl<T> Bar<T> for [u8; T] {}
   |      -                  ^ not a value
   |      |
   |      found this type parameter
   |
help: you might have meant to write a const parameter here
   |
LL | impl<const T: /* Type */> Bar<T> for [u8; T] {}
   |      +++++  ++++++++++++
```
It's described as a "backwards compatibility hack to keep the diff
small". Removing it requires only a modest amount of churn, and the
resulting code is clearer without the invisible derefs.
…ross35,dtolnay

refactor: remove Ord bound from BinaryHeap::new etc

This adds consistency with e.g `BTreeMap::new`, and makes it easier to e.g `#[derive(Default)]`[^1]

[^1]: https://play.rust-lang.org/?version=stable&mode=debug&edition=2024&gist=f848e472a176fae155f17455bdfe0aee
…bk,BoxyUwU,fmease

Change some `matches!(.., .. if ..)` with let-chains

Follow up to rust-lang#149933.
std: move `errno` and related functions into `sys::io`

Part of rust-lang#117276.

Currently, `errno` and related functions like `decode_error_kind` are split across `sys::pal` and `sys::pal::os`. This PR moves all of them into a new module inside `sys::io`.
resolve: Refactor away the side table `decl_parent_modules`

Instead keep parent modules in `DeclData` itself.
Follow up to rust-lang#150445.

r? @nnethercote
…ieb,workingjubilee

Update to_uppercase docs to avoid ß->SS example

Fixes rust-lang#150888

Updates the `to_uppercase` documentation examples to avoid relying on the ß → "SS" mapping and instead uses a stable multi-character case-mapping example ('ffi' → "FFI").

Note: the example uses U+FB03 (LATIN SMALL LIGATURE FFI), not the ASCII string "ffi".
std: Change UEFI env vars to volatile storage

The UEFI variables set by the env vars should be volatile, otherwise they will persist after reboot and use up scarce non-volatile storage.

CC @Ayush1325
Better handle when trying to iterate on a `Range` of a type that isn't `Step`

Mention when a trait bound corresponds to an unstable trait.

Mention `Range` when `Step` bound is unment, and explain that only some std types impl `Iterator` for `Range`.

CC rust-lang#151026
Avoid should-fail in two ui tests and a codegen-llvm test

`should-fail` is only meant for testing the compiletest framework itself. It checks that the test runner itself panicked.

With this there are still a bunch of rustdoc-html tests that use it due to this test suite not supporting anything like `//@ doc-fail`.
@rustbot rustbot added O-unix Operating system: Unix-like O-wasi Operating system: Wasi, Webassembly System Interface O-windows Operating system: Windows S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 14, 2026
@JonathanBrouwer
Copy link
Contributor Author

@bors r+ rollup=never p=5

@rustbot rustbot added 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) labels Jan 14, 2026
@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 Jan 14, 2026
@rust-bors
Copy link
Contributor

rust-bors bot commented Jan 14, 2026

📌 Commit db10879 has been approved by JonathanBrouwer

It is now in the queue for this repository.

@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 Jan 14, 2026
@rust-bors
Copy link
Contributor

rust-bors bot commented Jan 14, 2026

☀️ Test successful - CI
Approved by: JonathanBrouwer
Pushing 8c52f73 to main...

@rust-bors rust-bors bot merged commit 8c52f73 into rust-lang:main Jan 14, 2026
12 checks passed
@rustbot rustbot added this to the 1.94.0 milestone Jan 14, 2026
@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 2fd6efc (parent) -> 8c52f73 (this PR)

Test differences

Show 246 test diffs

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

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard 8c52f735abd1af9a73941b78fe7ed2ab08b9c0dd --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-x86_64-apple: 8104.6s -> 10069.8s (+24.2%)
  2. dist-x86_64-mingw: 8821.4s -> 10552.7s (+19.6%)
  3. x86_64-mingw-1: 9908.0s -> 11594.3s (+17.0%)
  4. dist-aarch64-apple: 7341.7s -> 8471.6s (+15.4%)
  5. dist-i686-mingw: 9697.6s -> 11143.3s (+14.9%)
  6. x86_64-mingw-2: 9534.6s -> 10805.4s (+13.3%)
  7. pr-check-1: 1709.5s -> 1526.4s (-10.7%)
  8. x86_64-gnu-aux: 6711.6s -> 7384.5s (+10.0%)
  9. tidy: 176.2s -> 159.3s (-9.6%)
  10. aarch64-gnu-debug: 3926.3s -> 4255.1s (+8.4%)
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

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#149408 refactor: remove Ord bound from BinaryHeap::new etc 94da167fc0b8568a852282d81c9b127891b99d01 (link)
#150406 Change some matches!(.., .. if ..) with let-chains 94f4304c0dc69706c095b64b042c5ba0c1e5ff34 (link)
#150723 std: move errno and related functions into sys::io 45abda67279e9e51218f3911145662215fd98a76 (link)
#150877 resolve: Refactor away the side table decl_parent_modules d884b4c7998a225d6dee24ea26f87ce03c5a3a2a (link)
#150902 Update to_uppercase docs to avoid ß->SS example 1e1569e60fea8e5634460cb761ad89c428c1eec5 (link)
#151034 std: Change UEFI env vars to volatile storage 3a2bbc6047b0516d2d700e6f77c4e6831fe74ac6 (link)
#151036 Better handle when trying to iterate on a Range of a type… 7820a319e6ef40d162696de8fa54f959f4b6f909 (link)
#151067 Avoid should-fail in two ui tests and a codegen-llvm test 1f417e5b5dcf130a261ec576f878216adc49929d (link)
#151072 also handle ENOTTY ioctl errors when checking pidfd -> pid … 1e3c51a535086d54767341f7a58f5693917e2a82 (link)
#151077 Recognize potential impl<const N: usize> to impl<N> mis… 9436a30945dafa3a7553f5caf32f0b4138450270 (link)
#151096 Remove Deref/DerefMut impl for Providers. f732b0b91fa9c852a379e27928cbbee3a140874b (link)

previous master: 2fd6efc327

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

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (8c52f73): comparison URL.

Overall result: ✅ improvements - no action needed

@rustbot label: -perf-regression

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
Regressions ❌
(secondary)
0.0% [0.0%, 0.0%] 1
Improvements ✅
(primary)
-0.2% [-0.3%, -0.2%] 4
Improvements ✅
(secondary)
-0.2% [-0.3%, -0.1%] 7
All ❌✅ (primary) -0.2% [-0.3%, -0.2%] 4

Max RSS (memory usage)

Results (secondary -2.9%)

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)
1.3% [1.0%, 1.5%] 2
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-3.9% [-5.7%, -0.9%] 8
All ❌✅ (primary) - - 0

Cycles

Results (primary 3.0%, secondary 5.2%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
3.0% [3.0%, 3.0%] 1
Regressions ❌
(secondary)
5.2% [1.9%, 11.3%] 6
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 3.0% [3.0%, 3.0%] 1

Binary size

Results (primary -0.0%, secondary -0.0%)

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.0% [-0.1%, -0.0%] 27
Improvements ✅
(secondary)
-0.0% [-0.1%, -0.0%] 6
All ❌✅ (primary) -0.0% [-0.1%, -0.0%] 27

Bootstrap: 474.74s -> 472.286s (-0.52%)
Artifact size: 383.12 MiB -> 383.57 MiB (0.12%)

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

Labels

A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-run-make Area: port run-make Makefiles to rmake.rs merged-by-bors This PR was explicitly merged by bors. O-hermit Operating System: Hermit O-SGX Target: SGX O-solid Operating System: SOLID O-unix Operating system: Unix-like O-wasi Operating system: Wasi, Webassembly System Interface O-windows Operating system: Windows rollup A PR which is a rollup 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.