Skip to content

Rollup of 10 pull requests #137046

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 33 commits into from
Feb 15, 2025
Merged

Rollup of 10 pull requests #137046

merged 33 commits into from
Feb 15, 2025

Conversation

workingjubilee
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

zachs18 and others added 30 commits December 7, 2024 17:36
A small workaround for rust-lang#136899,
rustdoc's invalid_rust_codeblocks was not handling this well in 2024.
This may be needed when migrating to 2024 when building with stage0.
This generates a warning of irrefutable patterns. I decided to slightly
tweak the example so the closure returns unit, since the intent wasn't
to show the weird behavior of returning `!`.
…straintInfo`

`fr_is_local` was fully unused, and `outlived_fr_is_local` was used once
Change description from compiletest to regression test

Co-authored-by: 许杰友 Jieyou Xu (Joe) <39484203+jieyouxu@users.noreply.github.com>

Improve test name, location, and description

Update tests/ui/impl-trait/impl-fn-rpit-opaque-107883.rs

Co-authored-by: waffle <waffle.lapkin@gmail.com>
llvm/llvm-project@7e3735d introduces
`captures` annotations. Adjust regexes to be tolerant of these.
… r=Amanieu

Stabilize `const_is_char_boundary` and `const_str_split_at`.

Tracking issues: rust-lang#131516, rust-lang#131518

Stabilized const API:

```rs
// in `core`
impl str {
    // const_is_char_boundary feature
    const fn is_char_boundary(&self, index: usize) -> bool;

    // const_str_split_at feature, depends on const_is_char_boundary
    const fn split_at(&self, mid: usize) -> (&str, &str);
    const fn split_at_mut(&mut self, mid: usize) -> (&mut str, &mut str);
    const fn split_at_checked(&self, mid: usize) -> Option<(&str, &str)>;
    const fn split_at_mut_checked(&mut self, mid: usize) -> Option<(&mut str, &mut str)>;
}
```

This will allow safely splitting string slices during const-eval.

Closes rust-lang#131516, Closes rust-lang#131518

This will need FCP.
r? libs-api

IIUC these do not use any new const language features (i.e. they are implementable manually on stable 1.83.0 using `unsafe`: [playground link](https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=3679632cd1041084796241b7ac8edfbd)).

Cc ``@rust-lang/wg-const-eval`` (I don't know if I have the permissions for this ping; if not, someone else please ping wg-const-eval if it is necessary)
Add a new check-pass UI test for returning `impl Fn(T) -> impl Trait`

This PR closes rust-lang#107883 by adding a ui test.
Prepare standard library for Rust 2024 migration

This includes a variety of commits preparing the standard library for migration to Rust 2024.

The actual migration is blocked on a few things, so I wanted to get this out of the way in a relatively digestable PR.
…iler-errors

borrowck diagnostics cleanup: remove an unused and a barely-used field

This removes the fields `fr_is_local` and `outlived_fr_is_local` from the struct `ErrorConstraintInfo`. `fr_is_local` was fully unused, but wasn't caught by dead-code analysis. For symmetry, and since `outlived_fr_is_local` was used only once and is easy to recompute, I've removed it too. That makes its one use a bit longer, but constructing/destructuring an `ErrorConsraintInfo` now fits on one line.
Decode metadata buffer in one go

Not sure if this is perf relevant at all, but it was a bit odd before

r? ``@the8472``
@rustbot rustbot added T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) 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. rollup A PR which is a rollup labels Feb 14, 2025
@workingjubilee
Copy link
Member Author

waiting on the tree opening, but
@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented Feb 14, 2025

📌 Commit 9d659fc has been approved by workingjubilee

It is now in the queue for this repository.

@bors
Copy link
Collaborator

bors commented Feb 14, 2025

🌲 The tree is currently closed for pull requests below priority 100. This pull request will be tested once the tree is reopened.

@bors bors 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 14, 2025
@ChrisDenton
Copy link
Member

@bors treeclosed-

@bors
Copy link
Collaborator

bors commented Feb 15, 2025

⌛ Testing commit 9d659fc with merge 54a0f38...

@bors
Copy link
Collaborator

bors commented Feb 15, 2025

☀️ Test successful - checks-actions
Approved by: workingjubilee
Pushing 54a0f38 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Feb 15, 2025
@bors bors merged commit 54a0f38 into rust-lang:master Feb 15, 2025
7 checks passed
@rustbot rustbot added this to the 1.86.0 milestone Feb 15, 2025
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#133312 triagebot: automatically add more rustdoc related labels b8aeae26be4e59a9162cc750b36464df4c6e3dd1 (link)
#134016 Stabilize const_is_char_boundary and const_str_split_at. 04eafc4139a115583576bc2744a47869c7acba33 (link)
#136971 Add a new check-pass UI test for returning `impl Fn(T) -> i… 8c864be80ff75ca1684beabb4495bf0ab5f745d4 (link)
#136983 Prepare standard library for Rust 2024 migration dac107442aa51ae37b01649128d812d6fad62f28 (link)
#137002 Fix early lint check desc in query 627ff469245b8fa05d0519add051e950e37d95fa (link)
#137006 borrowck diagnostics cleanup: remove an unused and a barely… 4e63e7ec501fb805870ada1aeb6e4f9b5f6233be (link)
#137032 Decode metadata buffer in one go fa91148003023e266cf325d04aada799dbabe942 (link)
#137035 Normalize closure instance before eagerly monomorphizing it 2b286f900a4472570afa1a23d01770a1acd83f3c (link)
#137037 add x86-sse2 (32bit) ABI that requires SSE2 target feature 7ef4f54733aa2e55d0d7ccec5b3a3185f841ce58 (link)
#137038 llvm: Tolerate captures in tests efc0fe0bbb65c1ad9f1977260221c53ae6a52155 (link)

previous master: fc147b4a81

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 (54a0f38): 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 (primary -7.3%, secondary 3.1%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
3.1% [3.1%, 3.1%] 1
Improvements ✅
(primary)
-7.3% [-7.3%, -7.3%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -7.3% [-7.3%, -7.3%] 1

Cycles

Results (primary -2.3%, secondary -3.1%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-2.3% [-2.3%, -2.3%] 1
Improvements ✅
(secondary)
-3.1% [-3.1%, -3.1%] 1
All ❌✅ (primary) -2.3% [-2.3%, -2.3%] 1

Binary size

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

Bootstrap: 791.712s -> 790.529s (-0.15%)
Artifact size: 347.74 MiB -> 347.33 MiB (-0.12%)

@workingjubilee workingjubilee deleted the rollup-u56aw1m branch June 3, 2025 01:09
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-tidy Area: The tidy tool merged-by-bors This PR was explicitly merged by bors. O-apple Operating system: Apple (macOS, iOS, tvOS, visionOS, watchOS) O-hermit Operating System: Hermit O-SGX Target: SGX 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 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-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.
Projects
None yet
Development

Successfully merging this pull request may close these issues.