-
Notifications
You must be signed in to change notification settings - Fork 14k
Rollup of 19 pull requests #149361
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
Open
Zalathar
wants to merge
46
commits into
rust-lang:main
Choose a base branch
from
Zalathar:rollup-ygtgbn5
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Rollup of 19 pull requests #149361
+2,894
−2,126
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This addition allows an end-user to inspect whether the env clear value is set on a `Command` instance or not. Discussed in: - rust-lang#149070 - rust-lang/libs-team#194
v0 mangling can produce symbols with 'br' as a substring, leading to false positives for CHECK-NOT
mostly: `par` -> `per` but also move some words around and hyphenate to (hopefully) make sentence a bit clearer
Implement `gather_bits`, `scatter_bits` functions on unsigned integers Add tests to coretests
Relocate issues/issue-51154.rs to closures/box-generic-closure.rs Relocate issues/issue-51515.rs to borrowck/assignment-to-immutable-ref.rs Relocate issues/issue-53348.rs to mismatched_types/deref-string-assign.rs Relocate issues/issue-52717.rs to pattern/match-enum-struct-variant-field-missing.rs Relocate issues/issue-53300.rs to type/cannot-find-wrapper-with-impl-trait.rs
…write-slice, r=Mark-Simulacrum Stabilize `maybe_uninit_write_slice` Stabilize feature `maybe_uninit_write_slice` (closes rust-lang#79995). Note that this also const-stabilizes `<[MaybeUninit<_>]>::write_copy_of_slice`. That method depends on `<[_]>::copy_from_slice`, which is already const-stable, and `<[MaybeUninit<_>]>::assume_init_mut` which is now also stable.
Add a diagnostic attribute for special casing const bound errors for non-const impls Somewhat of a follow-up to rust-lang#144194 My plan is to resolve https://github.com/rust-lang/rust/blob/f4e19c68786211f3c3cf2593442629599678800a/compiler/rustc_hir_typeck/src/callee.rs#L907-913 but doing so without being able to mark impls the way I do in this PR wrould cause all nice diagnostics about for loops and pointer comparisons to just be a `*const u32 does not implement [const] PartialEq` errors.
std: split up the `thread` module Almost all functionality in `std::thread` is currently implemented in `thread/mod.rs`, resulting in a *huge* file with more than 2000 lines and multiple, interoperating `unsafe` sections. This PR splits the file up into multiple different private modules, each implementing mostly independent parts of the functionality. The only remaining `unsafe` interplay is that of the `lifecycle` and `scope` modules, the `spawn_scoped` implementation relies on the live thread count being updated correctly by the `lifecycle` module. This PR contains no functional changes and only moves code around for the most part, with a few notable exceptions: * `with_current_name` is moved to the already existing `current` module and now uses the `name` method instead of calculating the name from private fields. The old code was just a reimplementation of that method anyway. * The private `JoinInner` type used to implement both join handles now has some more methods (`is_finished`, `thread` and the `AsInner`/`IntoInner` implementations) to avoid having to expose private fields and their invariants. * The private `spawn_unchecked_` (note the underscore) method of `Builder` is now a freestanding function in `lifecycle`. The rest of the changes are just visibility annotations. I realise this PR ended up quite large – let me know if there is anyway I can aid the review process. Edit: I've simplified the diff by adding an intermediate commit that creates all the new files by duplicating `mod.rs`. The actual changes in the second commit thus appear to delete the non-relevant parts from the respective file.
clarify float min/max behavios for NaNs and signed zeros The first comment is internal, it only documents the intrinsics to more clearly say what they do. This makes the currently implemented semantics more explicit, so one does not have to go look for the publicly exposed version of the operation to figure out what exactly should happen. The second commit adds a NaN test to the doc comment for `min`/`max`, which matches what we already have for `minimum`/`maximum`.
…r=Mark-Simulacrum Fix typo and clarify bootstrap change tracker entry mostly: `par` -> `per` but also move some words around and hyphenate to (hopefully) make sentence a bit clearer
…on, r=Mark-Simulacrum
implement `Iterator::{exactly_one, collect_array}`
As per rust-lang#149266
…ulacrum Suggest _bytes versions of endian-converting methods As pointed out [in this article](https://purplesyringa.moe/blog/ntoh-hton-is-a-bad-api/), the `int.to_be()`/`int.to_le()` functions are technically returning a wrong type, because endian-specific representations of integers and Rust's always-native-endian integers are different things. I wanted to make the docs state more directly that byte swapping will result in the type having a "wrong" value, but I wasn't sure whether to delve into the special case of palindrome-like values (`0x12343412`) not changing. I've updated the docs to suggest `{to,from}_[lb]e_bytes()` instead. These methods use `[u8; _]` for endian-specific representations, which is a different type than the native-endian `u16`/`u32`/`u64`, and this is a type-safety improvement.
Motor OS: make decode_error_kind more comprehensive A minor refactoring of a Tier 3 target (Motor OS).
…=Kobzol bootstrap: Miri now handles jemalloc like everything else rust-lang#149252 made Miri work like clippy here, so I think this comment can be removed?
…0968, r=GuillaumeGomez rustdoc: add regression test for rust-lang#140968 fixes rust-lang#140968
…eGomez fix rustdoc search says “Consider searching for "null" instead.” rust-lang#149324 fix rust-lang#149324 Now builds the “generic parameter” correction banner from discrete sentence fragments and appends the “Consider searching …” clause only when query.proposeCorrectionTo is non-null, so the UI no longer renders null as the suggested type. Adds a PARSED section with two queries: one typo (Result<SomeTraiz>) that still produces a concrete suggestion and one fully unknown type (Result<NoSuchTrait>) that leaves proposeCorrectionTo null.
…rk-Simulacrum Fix typo in comment.
Tidying up UI tests [3/N] > [!NOTE] > Intermediate commits are intended to help review, but will be squashed prior to merge. part of rust-lang#133895 Relocate 5 tests from tests/ui/issues
…3557, r=Mark-Simulacrum Document that `build.description` affects symbol mangling and crate IDs Addresses issue rust-lang#103557 Adds warning to `bootstrap.example.toml` explaining that changing build.description affects crate IDs and symbol name mangling, which makes compiled artifacts incompatible across different values. As `@Mark-Simulacrum` points out, "if you're building with different settings, we really can't guarantee compatibility in any nice way." This documentation attempts to make that clear. This is my first contribution here, so any feedback would be greatly appreciated!
…Simulacrum Enable CI download for windows-gnullvm This works now!
Member
Author
|
Rollup of everything. @bors r+ rollup=never p=5 |
Collaborator
Collaborator
bors
added a commit
that referenced
this pull request
Nov 26, 2025
Rollup of 19 pull requests Successful merges: - #148048 (Stabilize `maybe_uninit_write_slice`) - #148641 (Add a diagnostic attribute for special casing const bound errors for non-const impls) - #148765 (std: split up the `thread` module) - #149074 (Add Command::get_env_clear) - #149097 (num: Implement `uint_gather_scatter_bits` feature for unsigned integers) - #149131 (optimize `slice::Iter::next_chunk`) - #149190 (Forbid `CHECK: br` and `CHECK-NOT: br` in codegen tests (suggest `br {{.*}}` instead)) - #149239 (clarify float min/max behavios for NaNs and signed zeros) - #149243 (Fix typo and clarify bootstrap change tracker entry) - #149270 (implement `Iterator::{exactly_one, collect_array}`) - #149295 (Suggest _bytes versions of endian-converting methods) - #149301 (Motor OS: make decode_error_kind more comprehensive) - #149306 (bootstrap: Miri now handles jemalloc like everything else) - #149325 (rustdoc: add regression test for #140968) - #149332 (fix rustdoc search says “Consider searching for "null" instead.” #149324) - #149349 (Fix typo in comment.) - #149353 (Tidying up UI tests [3/N]) - #149355 (Document that `build.description` affects symbol mangling and crate IDs) - #149360 (Enable CI download for windows-gnullvm) r? `@ghost` `@rustbot` modify labels: rollup
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
A-attributes
Area: Attributes (`#[…]`, `#![…]`)
A-rustdoc-search
Area: Rustdoc's search feature
A-tidy
Area: The tidy tool
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-clippy
Relevant to the Clippy team.
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-rust-analyzer
Relevant to the rust-analyzer 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.
T-rustdoc-frontend
Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Successful merges:
maybe_uninit_write_slice#148048 (Stabilizemaybe_uninit_write_slice)threadmodule #148765 (std: split up thethreadmodule)uint_gather_scatter_bitsfeature for unsigned integers #149097 (num: Implementuint_gather_scatter_bitsfeature for unsigned integers)slice::Iter::next_chunk#149131 (optimizeslice::Iter::next_chunk)CHECK: brandCHECK-NOT: brin codegen tests (suggestbr {{.*}}instead) #149190 (ForbidCHECK: brandCHECK-NOT: brin codegen tests (suggestbr {{.*}}instead))Iterator::{exactly_one, collect_array}#149270 (implementIterator::{exactly_one, collect_array})build.descriptionaffects symbol mangling and crate IDs #149355 (Document thatbuild.descriptionaffects symbol mangling and crate IDs)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup