Rollup of 14 pull requests - #162406
Conversation
Installing cargo tools (`cargo install`) without locked dependencies exposes users to supply-chain attacks to all the dependencies of the tool (https://blog.rust-lang.org/2026/08/20/supply-chain-attack-on-arrayref/). Using `cargo install --locked` reduces this risk to a compromise of the tool itself, while using the locked and hashed version of the dependencies. I went through all `rg "cargo install"` hits in the repository and added `--locked` to all but explanatory examples (such as cargo's docs on `cargo install` itself). I validated that those tools publish functioning `Cargo.lock`s with https://gist.github.com/konstin/bcb1169c1c1120c259dca64e777a64d0.
For two reasons: - This simplifies my work to fix rust-lang/rust-analyzer#23088; to fix that issue, macros must have to be able to return doc comments (and not just desugared doc comments), and code in `syntax-bridge` doesn't expect macros to return trivia. Making doc comments non-trivia solves that. - It should simplify the work to attach trivia to tokens; doc comments have no obvious place to attach (for example, when between two attributes we must attach them to either the preceding `]` or the following `#`, both will complicate code handling them). Furthermore, arguably doc comments are really not a trivia: it's an error to put them in an unexpected place, and reason 2 above reveals that they're more like a kind of an attribute than a comment. This touches a lot of places (especially assists etc.) subtly; I fixed what I found and the tests helped reveal more, but it's certainly possible some places are still not handling them correctly now.
internal: rename some stuff in mir
`body` is no longer a neighbouring module, but rather a child of `expr_store`
The `continue` was aimed at the incorrect loop. I thought this will cause an infinite loop but it doesn't seem to, still it's incorrect.
fix: Fix handling of `#[unsafe()]` attrs without inner meta
A lot of callsites handled these variants similarly, so this ended up simplifying things.
Example
---
```diff
-fn method(&mut self,params: <ty!()as SomeTrait>::Output) {}
+fn method(&mut self, params: <ty!()as SomeTrait>::Output) {}
```
merge `hir_def::hir::Expr::Unsafe` into `Expr::Block`
minor: add space after comma in prettify macro expansion
update typos-cli
…ource Address FIXME in base-db and update docs
…locked Install cargo tools with locked dependencies
Example
---
```rust
fn main() {
$01f64;
}
```
**Before this PR**
```rust
value of literal: ` 1 (0x1|0b1) `
```
**After this PR**
```rust
value of literal: ` 1 (bits: 0x3FF0000000000000) `
```
fix: hover `1f64` use float instead of integer
This updates the rust-version file to 59dabe5.
Pull recent changes from https://github.com/rust-lang/rust via Josh. Upstream ref: rust-lang/rust@59dabe5 Filtered ref: rust-lang/rust-analyzer@4821b91 Upstream diff: rust-lang/rust@f7d782a...59dabe5 This merge was created using https://github.com/rust-lang/josh-sync.
Rustc pull update
…lf-segment fix: accept Self as non-leading path segment in attribute paths
…etails render const value in completions label details
|
@bors r+ p=5 |
This comment has been minimized.
This comment has been minimized.
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 32d94cc (parent) -> 656a9da (this PR) Test differencesShow 1510 test diffsStage 0
Stage 1
Stage 2
Additionally, 1468 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 656a9da186dacaf3bf8f7f7296a825d256cb4ae3 --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 (656a9da): 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 (secondary -6.9%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 4.8%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis perf run didn't have relevant results for this metric. Bootstrap: 477.995s -> 478.991s (0.21%) |
Successful merges:
rust-analyzersubtree update #162404 (rust-analyzersubtree update)ComplexABI-compatible on sparc64 and powerpc64 #161697 (makeComplexABI-compatible on sparc64 and powerpc64)reasonfor tracked item diagnostics fromcfg_select!#162367 (Usereasonfor tracked item diagnostics fromcfg_select!)nolimitto the limiting error message #162383 (Add a hint for usingnolimitto the limiting error message)UnsafeCell::raw_getsource #162390 (remove outdated comment inUnsafeCell::raw_getsource)r? @ghost
Create a similar rollup