Skip to content

Rollup of 11 pull requests#152739

Merged
rust-bors[bot] merged 176 commits intorust-lang:mainfrom
Zalathar:rollup-8qaJ8F2
Feb 17, 2026
Merged

Rollup of 11 pull requests#152739
rust-bors[bot] merged 176 commits intorust-lang:mainfrom
Zalathar:rollup-8qaJ8F2

Conversation

@Zalathar
Copy link
Member

Successful merges:

r? @ghost

Create a similar rollup

A4-Tacks and others added 30 commits January 1, 2026 22:21
Example
---
```rust
trait Trait {
    fn f() -> Self;
}
struct Foo<'a>(&'a ());
impl<'a> Trait for Foo<'a> {
    fn f() -> Self { Self(&()) }
}
impl Foo<'_> {
    fn new() -> Self {
        Self::$0f()
    }
}
```

**Before this PR**

```rust
trait Trait {
    fn f() -> Self;
}
struct Foo<'a>(&'a ());
impl<'a> Trait for Foo<'a> {
    fn f() -> Self { Self(&()) }
}
impl Foo<'_> {
    fn new() -> Self {
        Foo<'a>(&())
    }
}
```

**After this PR**

```rust
trait Trait {
    fn f() -> Self;
}
struct Foo<'a>(&'a ());
impl<'a> Trait for Foo<'a> {
    fn f() -> Self { Self(&()) }
}
impl Foo<'_> {
    fn new() -> Self {
        Foo(&())
    }
}
```
Example
---
```rust
fn foo() {}
fn bar() {
    let _ = [fo$0];
}
```

**Before this PR**

```rust
fn foo() {}
fn bar() {
    let _ = [foo();$0];
}
```

**After this PR**

```rust
fn foo() {}
fn bar() {
    let _ = [foo()$0];
}
```
This updates the rust-version file to 5a07626.
document guidelines for which shims have a place in Miri
This updates the rust-version file to 873d468.
This updates the rust-version file to e96bb7e.
This updates the rust-version file to 35a31ba.
This updates the rust-version file to 878374e.
Pull recent changes from https://github.com/rust-lang/rust via Josh.

Upstream ref: 878374e
Filtered ref: a46a01d9de0d6a8cb834a0cc04b9156d61493c39
Upstream diff: rust-lang/rust@35a31ba...878374e

This merge was created using https://github.com/rust-lang/josh-sync.
and reset MIRIFLAGS as well just to be safe
…r items that will resolve with the after segments
@rustbot rustbot added A-rustdoc-json Area: Rustdoc JSON backend S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. 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. T-rustfmt Relevant to the rustfmt team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) labels Feb 17, 2026
@Zalathar
Copy link
Member Author

Rollup of everything except iffy, as we have two elevated-priority subtree updates.

@bors r+ rollup=never p=5

@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 17, 2026

📌 Commit f769905 has been approved by Zalathar

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 17, 2026
@rust-bors rust-bors bot mentioned this pull request Feb 17, 2026
@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 Feb 17, 2026
@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 17, 2026

☀️ Test successful - CI
Approved by: Zalathar
Duration: 4h 15m 59s
Pushing d1a11b6 to main...

@rust-bors rust-bors bot merged commit d1a11b6 into rust-lang:main Feb 17, 2026
12 checks passed
@rustbot rustbot added this to the 1.95.0 milestone Feb 17, 2026
@rust-bors rust-bors bot mentioned this pull request Feb 17, 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 3c9faa0 (parent) -> d1a11b6 (this PR)

Test differences

Show 906 test diffs

Stage 0

  • handlers::auto_import::tests::with_after_segments: [missing] -> pass (J5)
  • handlers::inline_call::tests::inline_trait_method_call_with_lifetimes: [missing] -> pass (J5)
  • handlers::replace_derive_with_manual_impl::tests::add_custom_impl_clone_generic_tuple_struct_with_associated: [missing] -> pass (J5)
  • hover::tests::test_hover_function_with_too_long_param: [missing] -> pass (J5)
  • render::function::tests::no_semicolon_in_array: [missing] -> pass (J5)
  • tests::never_type::assign_never_place_no_mismatch: [missing] -> pass (J5)
  • tests::never_type::diverging_place_match_ref_mut: [missing] -> pass (J5)
  • tests::regression::extern_fns_cannot_have_param_patterns: [missing] -> pass (J5)
  • tests::regression::regression_21605: [missing] -> pass (J5)
  • tests::simple::proc_macros_are_functions_inside_defining_crate_and_macros_outside: [missing] -> pass (J5)

Stage 1

  • handlers::auto_import::tests::with_after_segments: [missing] -> pass (J2)
  • handlers::inline_call::tests::inline_trait_method_call_with_lifetimes: [missing] -> pass (J2)
  • handlers::replace_derive_with_manual_impl::tests::add_custom_impl_clone_generic_tuple_struct_with_associated: [missing] -> pass (J2)
  • hover::tests::test_hover_function_with_too_long_param: [missing] -> pass (J2)
  • render::function::tests::no_semicolon_in_array: [missing] -> pass (J2)
  • tests::never_type::assign_never_place_no_mismatch: [missing] -> pass (J2)
  • tests::never_type::diverging_place_match_ref_mut: [missing] -> pass (J2)
  • tests::regression::extern_fns_cannot_have_param_patterns: [missing] -> pass (J2)
  • tests::regression::regression_21605: [missing] -> pass (J2)
  • tests::simple::proc_macros_are_functions_inside_defining_crate_and_macros_outside: [missing] -> pass (J2)
  • floats::max_exact_integer_constant::const_::test_f128: [missing] -> pass (J4)
  • floats::max_exact_integer_constant::const_::test_f16: [missing] -> pass (J4)
  • floats::max_exact_integer_constant::const_::test_f32: [missing] -> pass (J4)
  • floats::max_exact_integer_constant::const_::test_f64: [missing] -> pass (J4)
  • floats::max_exact_integer_constant::test_f128: [missing] -> pass (J4)
  • floats::max_exact_integer_constant::test_f16: [missing] -> pass (J4)
  • floats::max_exact_integer_constant::test_f32: [missing] -> pass (J4)
  • floats::max_exact_integer_constant::test_f64: [missing] -> pass (J4)
  • floats::min_exact_integer_constant::const_::test_f128: [missing] -> pass (J4)
  • floats::min_exact_integer_constant::const_::test_f16: [missing] -> pass (J4)
  • floats::min_exact_integer_constant::const_::test_f32: [missing] -> pass (J4)
  • floats::min_exact_integer_constant::const_::test_f64: [missing] -> pass (J4)
  • floats::min_exact_integer_constant::test_f128: [missing] -> pass (J4)
  • floats::min_exact_integer_constant::test_f16: [missing] -> pass (J4)
  • floats::min_exact_integer_constant::test_f32: [missing] -> pass (J4)
  • floats::min_exact_integer_constant::test_f64: [missing] -> pass (J4)
  • [rustdoc-html] tests/rustdoc-html/final-trait-method.rs: [missing] -> pass (J5)
  • [ui] tests/ui/feature-gates/feature-gate-final-associated-functions.rs: [missing] -> pass (J5)
  • [ui] tests/ui/traits/final/dyn-compat.rs: [missing] -> pass (J5)
  • [ui] tests/ui/traits/final/final-kw.rs#gated: [missing] -> pass (J5)
  • [ui] tests/ui/traits/final/final-kw.rs#ungated: [missing] -> pass (J5)
  • [ui] tests/ui/traits/final/final-must-have-body.rs: [missing] -> pass (J5)
  • [ui] tests/ui/traits/final/overriding.rs: [missing] -> pass (J5)
  • [ui] tests/ui/traits/final/positions.rs: [missing] -> pass (J5)
  • [ui] tests/ui/traits/final/works.rs: [missing] -> pass (J5)
  • [ui] tests/ui/traits/next-solver-ice.rs: [missing] -> pass (J5)
  • [ui] tests/ui/traits/nightly-only-unstable.rs#force: [missing] -> pass (J5)
  • [ui] tests/ui/traits/nightly-only-unstable.rs#normal: [missing] -> pass (J5)

Stage 2

  • [ui] tests/ui/feature-gates/feature-gate-final-associated-functions.rs: [missing] -> pass (J0)
  • [ui] tests/ui/traits/final/dyn-compat.rs: [missing] -> pass (J0)
  • [ui] tests/ui/traits/final/final-kw.rs#gated: [missing] -> pass (J0)
  • [ui] tests/ui/traits/final/final-kw.rs#ungated: [missing] -> pass (J0)
  • [ui] tests/ui/traits/final/final-must-have-body.rs: [missing] -> pass (J0)
  • [ui] tests/ui/traits/final/overriding.rs: [missing] -> pass (J0)
  • [ui] tests/ui/traits/final/positions.rs: [missing] -> pass (J0)
  • [ui] tests/ui/traits/final/works.rs: [missing] -> pass (J0)
  • [ui] tests/ui/traits/next-solver-ice.rs: [missing] -> pass (J0)
  • [ui] tests/ui/traits/nightly-only-unstable.rs#force: [missing] -> pass (J0)
  • [ui] tests/ui/traits/nightly-only-unstable.rs#normal: [missing] -> pass (J0)
  • floats::max_exact_integer_constant::test_f128: [missing] -> pass (J1)
  • floats::max_exact_integer_constant::test_f16: [missing] -> pass (J1)
  • floats::min_exact_integer_constant::test_f128: [missing] -> pass (J1)
  • floats::min_exact_integer_constant::test_f16: [missing] -> pass (J1)
  • floats::max_exact_integer_constant::const_::test_f128: [missing] -> pass (J3)
  • floats::max_exact_integer_constant::const_::test_f16: [missing] -> pass (J3)
  • floats::max_exact_integer_constant::const_::test_f32: [missing] -> pass (J3)
  • floats::max_exact_integer_constant::const_::test_f64: [missing] -> pass (J3)
  • floats::max_exact_integer_constant::test_f32: [missing] -> pass (J3)
  • floats::max_exact_integer_constant::test_f64: [missing] -> pass (J3)
  • floats::min_exact_integer_constant::const_::test_f128: [missing] -> pass (J3)
  • floats::min_exact_integer_constant::const_::test_f16: [missing] -> pass (J3)
  • floats::min_exact_integer_constant::const_::test_f32: [missing] -> pass (J3)
  • floats::min_exact_integer_constant::const_::test_f64: [missing] -> pass (J3)
  • floats::min_exact_integer_constant::test_f32: [missing] -> pass (J3)
  • floats::min_exact_integer_constant::test_f64: [missing] -> pass (J3)
  • [rustdoc-html] tests/rustdoc-html/final-trait-method.rs: [missing] -> pass (J6)

Additionally, 830 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 d1a11b670b617f1370f7b1cdf86e225a4e070f15 --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. pr-check-1: 24m 26s -> 34m 3s (+39.3%)
  2. dist-apple-various: 2h 21m -> 1h 41m (-28.3%)
  3. aarch64-gnu-debug: 1h 4m -> 1h 19m (+23.6%)
  4. x86_64-gnu-aux: 1h 55m -> 2h 20m (+22.1%)
  5. x86_64-rust-for-linux: 45m 38s -> 54m 9s (+18.6%)
  6. x86_64-gnu-miri: 1h 15m -> 1h 28m (+17.8%)
  7. dist-x86_64-apple: 2h 17m -> 1h 53m (-17.4%)
  8. aarch64-apple: 3h 34m -> 4h 8m (+15.6%)
  9. armhf-gnu: 1h 21m -> 1h 32m (+14.3%)
  10. dist-aarch64-apple: 2h 38m -> 3h (+14.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

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#151783 Implement RFC 3678: Final trait methods 30ad77a52a794f177072dc3e30427ea1b9600ef3 (link)
#152206 misc doc improvements c8c430448a368ca8f428a85e07038ee74d2c0c47 (link)
#152512 core: Implement feature float_exact_integer_constants 309f9b7b9e5ac2f2e4cda3f56faa94d5dbb4279a (link)
#152661 Avoid ICE in From/TryFrom diagnostic under -Znext-solver 8b0b16680873fc9b0cc541f3a0f9911f23ff55ef (link)
#152664 Fix mis-constructed file_span when generating scraped exa… 8b9d85f4264068c7254569c23df4684bbd6e7ee3 (link)
#152698 Suppress unstable-trait notes under `-Zforce-unstable-if-un… d82ff89a7437cafb01cc7929df273e3971ce39b9 (link)
#152700 miri subtree update 8b07ac3ea2313da73dddb1424899f41b98c1885a (link)
#152703 Remove rustc_query_system 8576dfe64eda5f3cabcd2ba75c8b95c21a1bed5b (link)
#152715 rust-analyzer subtree update 5b188d12064fb9d79bfb55ba099271263a6b7d33 (link)
#152727 probe_op silence ambiguity errors if tainted 52572086659363dbb602aeb990913d916c69f95b (link)
#152728 Port #![default_lib_allocator] to the new attribute parser 70556276e16e0882e1cfc4f6c198be8960cbeeba (link)

previous master: 3c9faa0d03

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 (d1a11b6): 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
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.5% [-1.0%, -0.4%] 7
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary -2.5%)

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)
-2.5% [-2.5%, -2.5%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -2.5% [-2.5%, -2.5%] 1

Cycles

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

Binary size

Results (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
Improvements ✅
(secondary)
-0.0% [-0.0%, -0.0%] 1
All ❌✅ (primary) - - 0

Bootstrap: 480.798s -> 483.207s (0.50%)
Artifact size: 395.81 MiB -> 397.79 MiB (0.50%)

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

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-run-make Area: port run-make Makefiles to rmake.rs A-rustc-dev-guide Area: rustc-dev-guide A-rustdoc-json Area: Rustdoc JSON backend merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup 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. T-rustfmt Relevant to the rustfmt 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.