Skip to content

Conversation

@lnicola
Copy link
Member

@lnicola lnicola commented Dec 8, 2025

Subtree update of rust-analyzer to rust-lang/rust-analyzer@5e3e9c4.

Created using https://github.com/rust-lang/josh-sync.

r? @ghost

ChayimFriedman2 and others added 19 commits December 1, 2025 02:31
So that we'll correctly treat it as an attribute.

I don't like that we have to register every builtin macro even if we don't need it, but that's what we got.
fix: Register `define_opaque` builtin attribute macro
In the inferred type hints, expand the line too long. add config to disable it.

Example
---
```json
{"rust-analyzer.inlayHints.typeHints.hideInferredTypes": true}
```

```rust
use std::collections::HashMap;
fn foo(iter: Vec<Result<HashMap<String, String>, std::io::Error>>) {
    let output = iter.into_iter().collect::<Result<Vec<_>, _>>().unwrap();
}
```

**Before this PR**

```rust
let output: Vec<HashMap<String, String>> = iter.into_iter().collect::<Result<Vec<_ = HashMap<String, String>>, _ = Error>>().unwrap();
```

**After this PR**

```rust
let output: Vec<HashMap<String, String>> = iter.into_iter().collect::<Result<Vec<_>, _>>().unwrap();
```
…match

 fix: Skip cfg attributes in macro input attribute stripping
internal: Handle lint attributes via hir-expand attr handling
Since we don't implement it currently for perf reasons, but here we only need a struct's tail field, it will be wrong.
We no longer work properly with older versions.
…ted-version

internal: Update supported Rust version to 1.90.0
fix: Don't implement sizedness check via `all_field_tys()`
optimize some stuff

Optimize `pub(crate)` visibility resolution

Optimize private visibility resolution
internal: Make `ModuleId` a tracked struct
Example
---
```rust
use core::future::Future;

trait DesugaredAsyncTrait {
    fn foo(&self) -> impl Future<Output = ()> + Send;
}

impl DesugaredAsyncTrait for () {
    $0
}
```

**Before this PR**

```rust
use core::future::Future;

trait DesugaredAsyncTrait {
    fn foo(&self) -> impl Future<Output = ()> + Send;
}

impl DesugaredAsyncTrait for () {
    async fn foo(&self) -> () {
        $0
    }
}
```

**After this PR**

```rust
use core::future::Future;

trait DesugaredAsyncTrait {
    fn foo(&self) -> impl Future<Output = ()> + Send;
}

impl DesugaredAsyncTrait for () {
    async fn foo(&self) {
        $0
    }
}
```
…-ret-ty

No complete unit RetType in resugar async assoc item
@rustbot
Copy link
Collaborator

rustbot commented Dec 8, 2025

rust-analyzer is developed in its own repository. If possible, consider making this change to rust-lang/rust-analyzer instead.

cc @rust-lang/rust-analyzer

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-rust-analyzer Relevant to the rust-analyzer team, which will review and decide on the PR/issue. labels Dec 8, 2025
@lnicola
Copy link
Member Author

lnicola commented Dec 8, 2025

@bors r+ p=1 subtree sync

@bors
Copy link
Collaborator

bors commented Dec 8, 2025

📌 Commit 632acd7 has been approved by lnicola

It is now in the queue for this repository.

@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 Dec 8, 2025
@bors
Copy link
Collaborator

bors commented Dec 8, 2025

⌛ Testing commit 632acd7 with merge 37aa213...

@bors
Copy link
Collaborator

bors commented Dec 8, 2025

☀️ Test successful - checks-actions
Approved by: lnicola
Pushing 37aa213 to main...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Dec 8, 2025
@bors bors merged commit 37aa213 into rust-lang:main Dec 8, 2025
12 checks passed
@rustbot rustbot added this to the 1.94.0 milestone Dec 8, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Dec 8, 2025

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 5bc3450 (parent) -> 37aa213 (this PR)

Test differences

Show 4 test diffs

4 doctest diffs were found. These are ignored, as they are noisy.

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard 37aa2135b5d0936bd13aa699d941aaa94fbaa645 --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: 2048.0s -> 1696.2s (-17.2%)
  2. x86_64-rust-for-linux: 3173.3s -> 2660.2s (-16.2%)
  3. dist-apple-various: 4085.4s -> 4733.9s (+15.9%)
  4. x86_64-gnu-llvm-20: 2770.5s -> 2345.5s (-15.3%)
  5. tidy: 162.9s -> 187.1s (+14.8%)
  6. i686-gnu-nopt-1: 8238.0s -> 7071.5s (-14.2%)
  7. x86_64-gnu-miri: 5028.5s -> 4377.6s (-12.9%)
  8. i686-gnu-1: 8449.2s -> 7380.4s (-12.6%)
  9. x86_64-gnu-tools: 3646.6s -> 3198.0s (-12.3%)
  10. aarch64-gnu-llvm-20-2: 2579.0s -> 2280.2s (-11.6%)
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 (37aa213): 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 -1.6%, secondary -1.8%)

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

Cycles

Results (secondary -0.1%)

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

Binary size

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

Bootstrap: 473.701s -> 470.452s (-0.69%)
Artifact size: 389.02 MiB -> 389.00 MiB (-0.01%)

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

Labels

merged-by-bors This PR was explicitly merged by bors. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-rust-analyzer Relevant to the rust-analyzer team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants