Rollup of 9 pull requests#154489
Conversation
The warning has no error code, so in a `-D warnings` environment, it's impossible to ignore if it consistently breaks your build. Change it to a note so it is still visible, but doesn't break the build
Remove the confusing word "error". The diagnostic is already prefixed
with a level when it is displayed, so this is redundant and possibly
confusing ("warning: error ...").
Add some help text summarizing the impact of what happened: the next
build won't be able to reuse work from the current run.
…e fail Use a proc macro to observe the incremental session directory and do something platform specific so that renaming the '-working' session directory during finalize_session_directory will fail. On Unix, change the permissions on the parent directory to be read-only. On Windows, open and leak a file inside the `-working` directory.
To match other references to that type
And make `Ipv6MulticastScope` exhaustive, with `repr(u8)` and the proper discriminant values. The variants for the two reserved scopes are gated behind a perma-unstable feature, in order to avoid committing to names for them. [IETF RFC 4291](https://datatracker.ietf.org/doc/html/rfc4291#section-2.7) and [IETF RFC 7346](https://datatracker.ietf.org/doc/html/rfc7346#section-2) define the list of multicast scopes. The former document says: > scopes labeled "(unassigned)" are available for administrators > to define additional multicast regions.
Co-authored-by: David Rheinsberg <david@readahead.eu>
Returning dedicated structs and enums makes the meaning of each return value more obvious, and provides a more natural home for documentation. The intermediate `load_data` function was unhelpful, and has been inlined into the main function.
The standard library has helper methods for converting integers to/from little-endian bytes, for checked conversion from `usize` to `u8`, and for treating `&mut T` as `&mut [T; 1]`.
The test needs proc-macros to function
uefi: extend comment for TcpStream Send impl Based on discussion on [Zulip](https://rust-lang.zulipchat.com/#narrow/channel/136281-t-opsem/topic/Send.20on.20thread-free.20targets/with/581473760).
…wesleywiser Clean up the API for opening/checking incremental-compilation files Returning dedicated structs and enums makes the meaning of each return value more obvious, and provides a more natural home for documentation. This part of the codebase is fairly crufty, and I doubt anyone feels fully confident about reviewing changes to it, but hopefully these particular cleanups should be fairly straightforward. I have more changes planned in this area (e.g. cleaning up `LoadResult`), but I stopped here to make review a bit easier.
format safety doc of Rc/Arc::from_raw/from_raw_in The following APIs previously had safety notes, but they were not placed under a dedicated Safety section. This PR adds a Safety section for each API and moves the original safety descriptions there: - [`Rc::from_raw`](https://doc.rust-lang.org/nightly/alloc/rc/struct.Rc.html#method.from_raw) - [`Rc::from_raw_in`](https://doc.rust-lang.org/nightly/alloc/rc/struct.Rc.html#method.from_raw_in) - [`Arc::from_raw`](https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html#method.from_raw) - [`Arc::from_raw_in`](https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html#method.from_raw_in) Additionally, we updated the parameter requirements to clarify that the raw pointer may be returned not only from `into_raw`, but also from `into_raw_with_allocator`.
…r=wesleywiser Change "error finalizing incremental compilation" text and emit it as a note, not a warning As mentioned in rust-lang#151181 (comment) and rust-lang#151181 (comment) the current message could be improved: 1. Right now it displays as "warning: error ..." which is confusing (is it an error or a warning) 2. It doesn't give the user a clear indication of what the consequences are 3. The _current_ build is successful. The _next_ build might be slower The new message is now ```text note: did not finalize incremental compilation session directory ... | = help: the next build will not be able to reuse work from this compilation ``` I started a zulip thread [#t-compiler/incremental > Ergonomics of "error finalizing incremental session"](https://rust-lang.zulipchat.com/#narrow/channel/241847-t-compiler.2Fincremental/topic/Ergonomics.20of.20.22error.20finalizing.20incremental.20session.22/with/580191447)
…criminant, r=Mark-Simulacrum Make `Ipv6Addr::multicast_scope()` exhaustive And make `Ipv6MulticastScope` exhaustive, with `repr(u8)` and the proper discriminant values. The variants for the two reserved scopes are gated behind a perma-unstable feature, in order to avoid committing to names for them. [IETF RFC 4291](https://datatracker.ietf.org/doc/html/rfc4291#section-2.7) and [IETF RFC 7346](https://datatracker.ietf.org/doc/html/rfc7346#section-2) define the list of multicast scopes. The former document says: > scopes labeled "(unassigned)" are available for administrators to define additional multicast regions. Tracking issue: rust-lang#27709 @rustbot label A-io
…imulacrum `vec::as_mut_slice()`: use lowercase "isize" in safety comment To match other references to that type
…-Simulacrum Use common Timestamp impl in Hermit (attempt 2) The goal is to have less code to maintain, so to be able to make changes easier. Previous attempt rust-lang#148847 was asked to postpone because there was restructure of code, which is complete now. r? joboet
chore(deps): update rust crate tar to v0.4.45 Fix [RUSTSEC-2026-0068](https://rustsec.org/advisories/RUSTSEC-2026-0068.html): tar-rs incorrectly ignores PAX size headers if header size is nonzero Fix [RUSTSEC-2026-0067](https://rustsec.org/advisories/RUSTSEC-2026-0067.html): `unpack_in` can chmod arbitrary directories by following symlinks
Revert "Unstable book options parser" - Reverts rust-lang#154070 This reverts commit 6fd8466, reversing changes made to fda6d37. --- The changes in rust-lang#154070 are well-intentioned, but in their current form they place an unreasonable maintenance burden on the affected part of the compiler, out of proportion to the benefit gained. - Moving the unstable options to a separate `include!` file is marginally more convenient for the unstable-book-gen tool, but a big hassle for compiler contributors looking to read or modify the list of unstable options. It breaks normal file layout conventions, interferes with navigation, and interferes with IDE features, all without ever being truly necessary. - The extra `syn`-based parser in unstable-book-gen is quite complicated, almost entirely undocumented, and seemingly buggy. That makes it extremely difficult to understand or modify, which in turn makes it effectively impossible to ever change the `options!` macro on the compiler side. - The new tests in unstable-book-gen don't appear to be hooked up to run in CI. - The compiler changes don't appear to have been approved by a T-compiler reviewer. Before contemplating a revert, I tried to put together a fix-forward to resolve or mitigate some of these issues. But unstable-book-gen in its current state makes that impractical, so unfortunately I believe that the only way forward is to revert the original changes. --- I do think the reverted functionality is potentially useful, and I'm not fundamentally opposed to a revised version of it landing in the future, if the relevant concerns are addressed. But I feel strongly that the current version does not justify the real and troublesome maintenance burden that it imposes on compiler contributors.
|
Rollup of everything. @bors r+ rollup=never p=5 |
This comment has been minimized.
This comment has been minimized.
Rollup of 9 pull requests Successful merges: - #154357 (uefi: extend comment for TcpStream Send impl) - #154410 (Clean up the API for opening/checking incremental-compilation files ) - #154081 (format safety doc of Rc/Arc::from_raw/from_raw_in) - #154110 (Change "error finalizing incremental compilation" text and emit it as a note, not a warning) - #154196 (Make `Ipv6Addr::multicast_scope()` exhaustive) - #154221 (`vec::as_mut_slice()`: use lowercase "isize" in safety comment) - #154234 (Use common Timestamp impl in Hermit (attempt 2)) - #154396 (chore(deps): update rust crate tar to v0.4.45) - #154488 (Revert "Unstable book options parser")
|
Auto build was cancelled. Cancelled workflows: The next pull request likely to be tested is #154485. |
This comment has been minimized.
This comment has been minimized.
|
📌 Perf builds for each rolled up PR:
previous master: c4db0e127c In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
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 c4db0e1 (parent) -> 79531c5 (this PR) Test differencesShow 875 test diffsStage 1
Stage 2
Additionally, 870 doctest diffs were found. These are ignored, as they are noisy. Job group index
Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 79531c53ded6316bd4973f60bc992954255b8b10 --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
|
Finished benchmarking commit (79531c5): comparison URL. Overall result: ❌✅ regressions and improvements - no action needed@rustbot label: -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 1.0%, secondary -6.8%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 2.0%, secondary 4.5%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 485.299s -> 484.626s (-0.14%) |
Successful merges:
Ipv6Addr::multicast_scope()exhaustive #154196 (MakeIpv6Addr::multicast_scope()exhaustive)vec::as_mut_slice(): use lowercase "isize" in safety comment #154221 (vec::as_mut_slice(): use lowercase "isize" in safety comment)r? @ghost
Create a similar rollup