Skip to content

Rollup of 9 pull requests#153232

Merged
rust-bors[bot] merged 22 commits intorust-lang:mainfrom
JonathanBrouwer:rollup-rdNJcbm
Mar 1, 2026
Merged

Rollup of 9 pull requests#153232
rust-bors[bot] merged 22 commits intorust-lang:mainfrom
JonathanBrouwer:rollup-rdNJcbm

Conversation

@JonathanBrouwer
Copy link
Contributor

Successful merges:

r? @ghost

Create a similar rollup

zachs18 and others added 22 commits September 28, 2025 15:22
The old URL with `master` resulted in a 404 error - use `main` instead.
- Based on Windows implementation. Just removed support for quote
  escaping since that is not supported in UEFI.
- Tested using OVMF on QEMU

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
- Add test for split_paths for UEFI target.
- `;` is the path separator. Escaping is not supported.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
These doctests are attached to the `TryFrom` trait. Therefore, it is
easier to understand to use the `try_from` method instead of the
`try_into` method.
These doctests are attached to the `From` trait. Therefore, it is
easier to understand to use the `from` method instead of the `into`
method.
* docs: explicitly list env vars checked by temp_dir on Windows

On Windows, temp_dir() internally calls GetTempPath2/GetTempPath which
checks TMP, TEMP, USERPROFILE environment variables in order. This
information was previously only available by following links to Microsoft
docs. Making it explicit in Rust's own documentation improves
discoverability.

Addresses rust-lang#125439.
* docs: note env var influence on temp_dir and env_clear on Windows

On Windows, �nv::temp_dir() internally calls GetTempPath2/GetTempPath,
which checks TMP, TEMP, and USERPROFILE in order. Document this
lookup order directly in the 	emp_dir docs rather than requiring users
to follow the link to Microsoft documentation.

Also add a note on Command::env_clear explaining that clearing the
environment affects the child process's 	emp_dir(), not the parent's.

Closes rust-lang#125439.
* docs: drop Windows env_clear temp_dir note
Inhibit all-absent-variant optimization for all enum reprs that inhibit layout optimization, not just repr(C).

*[View all comments](https://triagebot.infra.rust-lang.org/gh-comments/rust-lang/rust/pull/146989)*

Fixes rust-lang#146984
std: sys: pal: uefi: os: Implement split_paths

- Tested using OVMF on QEMU

@rustbot label +O-UEFI
cc @nicholasbishop
Fix ICE in `try_to_raw_bytes` when array elements have mismatched

close: rust-lang#152683

After rust-lang#152001, suffixed integer literals preserve their own type during const lowering, so `try_to_raw_bytes` could call `.to_u8()` on a scalar with size > 1, causing an ICE. Fix by using `try_to_bits(Size::from_bytes(1)).ok()` instead.

r? BoxyUwU
std random.rs: update link to RTEMS docs

The old URL with `master` resulted in a 404 error - use `main` instead.
…s, r=Mark-Simulacrum

docs: note env var influence on `temp_dir` and `env_clear` on Windows

On Windows, `env::temp_dir()` internally calls `GetTempPath2`/`GetTempPath`,
which checks the `TMP`, `TEMP`, and `USERPROFILE` environment variables in
order before falling back to the Windows directory. This lookup order was
previously only discoverable by following links to Microsoft documentation.

This PR documents the env var lookup order directly in `env::temp_dir` docs
and notes `GetTempPath2`'s SYSTEM-identity behavior (`C:\Windows\SystemTemp`).

Addresses rust-lang#125439.
cleanup `tests/ui/box`, part 2

Followup to rust-lang#152868.
I merged some of the slightly less trivial tests into `basic-operations.rs` and deleted several others entirely.

r? @Kivooeo (since you claimed the last one, but feel free to reassign)

Part of rust-lang#133895.
… r=joboet

style: Update doctests for `TryFrom<integer> for bool` and `From<bool> for float`

These doctests are attached to the `TryFrom` trait and the `From` trait. Although `From<U> for T` implies `Into<T> for U` and `TryFrom<U> for T` implies `TryInto<T> for U`, I think it is easier to understand to use the `try_from`/`from` method directly instead of the `try_into`/`into` method.
…jdonszelmann,JonathanBrouwer

Fix ICE on empty file with -Zquery-dep-graph

added a guard in `DepGraph::register_dep_node_debug_str` so it early-returns
when `self.data` is still `None`. this happens for the first few dep-nodes
in an empty crate with `-Z query-dep-graph`, which caused the previous
`unwrap()` panic.

fixes rust-lang#153199
…rror, r=lqd

Remove `TranslationError`

This function is now infallible, since the diagnostic message and presence of variables is already parsed in the `msg!` or `derive(Diagnostic)` macro.

In practice, the result of this function was just unwrapped everywhere anyways...

r? @Kivooeo if you feel like reviewing diagnostics PRs again, I have a few more coming :)
(Tho other people are also free to steal these PRs)
@rust-bors rust-bors bot added the rollup A PR which is a rollup label Feb 28, 2026
@rustbot rustbot added A-translation Area: Translation infrastructure, and migrating existing diagnostics to SessionDiagnostic S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. 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. labels Feb 28, 2026
@JonathanBrouwer
Copy link
Contributor Author

@bors r+ rollup=never p=5

@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 28, 2026

📌 Commit 453fe91 has been approved by JonathanBrouwer

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 28, 2026
@JonathanBrouwer
Copy link
Contributor Author

Trying commonly failed jobs
@bors try jobs=test-various,x86_64-gnu-aux,x86_64-gnu-llvm-21-3,x86_64-msvc-1,aarch64-apple,x86_64-mingw-1

@rust-bors

This comment has been minimized.

rust-bors bot pushed a commit that referenced this pull request Feb 28, 2026
Rollup of 9 pull requests


try-job: test-various
try-job: x86_64-gnu-aux
try-job: x86_64-gnu-llvm-21-3
try-job: x86_64-msvc-1
try-job: aarch64-apple
try-job: x86_64-mingw-1
@rust-bors

This comment has been minimized.

@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 28, 2026

☀️ Try build successful (CI)
Build commit: c70f4a2 (c70f4a20072637ecdb8ff904a3d811bd06078caf, parent: ba1567989ee7774a1fb53aa680a8e4e8daa0f519)

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

rust-bors bot commented Mar 1, 2026

☀️ Test successful - CI
Approved by: JonathanBrouwer
Duration: 3h 51m 34s
Pushing 8215374 to main...

@rust-bors rust-bors bot merged commit 8215374 into rust-lang:main Mar 1, 2026
13 checks passed
@rustbot rustbot added this to the 1.96.0 milestone Mar 1, 2026
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#146989 Inhibit all-absent-variant optimization for all enum reprs … 7255d7d865bc6c50cb9064acaf4f0a27242b3694 (link)
#151991 std: sys: pal: uefi: os: Implement split_paths 00bb4b24b662e82b2e7ef6e8fd5eaaa2e66564f9 (link)
#152794 Fix ICE in try_to_raw_bytes when array elements have mism… 8fe67675887df469c0d3bcf37dca26465f275923 (link)
#153052 std random.rs: update link to RTEMS docs 268e491884fccae35d518f401ba32c24ec5a9185 (link)
#153054 docs: note env var influence on temp_dir and env_clear 06e7e693a62e26ad7f47415d18e7afa359c1a402 (link)
#153061 cleanup tests/ui/box, part 2 93cc015c9945b69c6c57ef0f3e2a777d0b02dea8 (link)
#153197 style: Update doctests for TryFrom<integer> for bool and … c37d8dada96bb3b73d7d75b85d7dbcecefcbde50 (link)
#153210 Fix ICE on empty file with -Zquery-dep-graph 23164dbd728741d514d6bb6b1edf26969ead4ff5 (link)
#153228 Remove TranslationError b0fd0f91a3982303779ab68124c7e0b1c7c6303b (link)

previous master: 38c0de8dcb

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

github-actions bot commented Mar 1, 2026

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 38c0de8 (parent) -> 8215374 (this PR)

Test differences

Show 65 test diffs

Stage 1

  • [ui] tests/ui/box/new-box-syntax.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/new.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/unit/basic-operations.rs: [missing] -> pass (J1)
  • [ui] tests/ui/box/unit/expr-if-unique.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/unit/unique-assign-copy.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/unit/unique-assign-drop.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/unit/unique-assign-generic.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/unit/unique-autoderef-field.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/unit/unique-autoderef-index.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/unit/unique-cmp.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/unit/unique-decl-init-copy.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/unit/unique-fn-arg-mut.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/unit/unique-in-vec.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/unit/unique-move-drop.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/unit/unique-mutable.rs: pass -> [missing] (J1)
  • [ui] tests/ui/box/unit/unwind-unique.rs: pass -> [missing] (J1)
  • [ui] tests/ui/const-generics/mgca/array_elem_type_mismatch.rs: [missing] -> pass (J1)
  • [ui] tests/ui/const-generics/mgca/wrapped_array_elem_type_mismatch.rs: [missing] -> pass (J1)
  • [ui] tests/ui/dep-graph/query-dep-graph-empty.rs: [missing] -> pass (J1)

Stage 2

  • [ui] tests/ui/box/new-box-syntax.rs: pass -> [missing] (J0)
  • [ui] tests/ui/box/new.rs: pass -> [missing] (J0)
  • [ui] tests/ui/box/unit/basic-operations.rs: [missing] -> pass (J0)
  • [ui] tests/ui/box/unit/expr-if-unique.rs: pass -> [missing] (J0)
  • [ui] tests/ui/box/unit/unique-assign-copy.rs: pass -> [missing] (J0)
  • [ui] tests/ui/box/unit/unique-assign-drop.rs: pass -> [missing] (J0)
  • [ui] tests/ui/box/unit/unique-assign-generic.rs: pass -> [missing] (J0)
  • [ui] tests/ui/box/unit/unique-autoderef-field.rs: pass -> [missing] (J0)
  • [ui] tests/ui/box/unit/unique-autoderef-index.rs: pass -> [missing] (J0)
  • [ui] tests/ui/box/unit/unique-cmp.rs: pass -> [missing] (J0)
  • [ui] tests/ui/box/unit/unique-decl-init-copy.rs: pass -> [missing] (J0)
  • [ui] tests/ui/box/unit/unique-fn-arg-mut.rs: pass -> [missing] (J0)
  • [ui] tests/ui/box/unit/unique-in-vec.rs: pass -> [missing] (J0)
  • [ui] tests/ui/box/unit/unique-move-drop.rs: pass -> [missing] (J0)
  • [ui] tests/ui/box/unit/unique-mutable.rs: pass -> [missing] (J0)
  • [ui] tests/ui/const-generics/mgca/array_elem_type_mismatch.rs: [missing] -> pass (J0)
  • [ui] tests/ui/const-generics/mgca/wrapped_array_elem_type_mismatch.rs: [missing] -> pass (J0)
  • [ui] tests/ui/dep-graph/query-dep-graph-empty.rs: [missing] -> pass (J0)
  • [ui] tests/ui/box/unit/unwind-unique.rs: pass -> [missing] (J2)
  • [ui] tests/ui/box/unit/unwind-unique.rs: ignore (gcc backend is marked as ignore) -> [missing] (J3)

Additionally, 26 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 821537498d4f05f948fe4406aad99742f0e07618 --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: 1h 44m -> 2h 20m (+34.3%)
  2. dist-x86_64-apple: 1h 54m -> 2h 27m (+29.1%)
  3. x86_64-gnu-aux: 2h 24m -> 2h 8m (-10.9%)
  4. aarch64-apple: 3h 23m -> 3h 43m (+9.8%)
  5. dist-aarch64-msvc: 1h 39m -> 1h 49m (+9.7%)
  6. dist-i586-gnu-i586-i686-musl: 1h 31m -> 1h 22m (-9.5%)
  7. x86_64-gnu-llvm-21-3: 1h 59m -> 1h 48m (-9.1%)
  8. armhf-gnu: 1h 22m -> 1h 30m (+8.9%)
  9. arm-android: 1h 37m -> 1h 46m (+8.8%)
  10. dist-ohos-x86_64: 1h 16m -> 1h 10m (-8.2%)
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 (8215374): comparison URL.

Overall result: ❌ regressions - 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.5% [0.5%, 0.5%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Max RSS (memory usage)

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

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: 481.431s -> 479.99s (-0.30%)
Artifact size: 397.60 MiB -> 397.51 MiB (-0.02%)

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

Labels

A-translation Area: Translation infrastructure, and migrating existing diagnostics to SessionDiagnostic 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-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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.