From 79790e5d446282af87ee147ff4c10fca7b786056 Mon Sep 17 00:00:00 2001
From: "philips-software-forest-releaser[bot]"
<80338643+philips-software-forest-releaser[bot]@users.noreply.github.com>
Date: Fri, 30 Jan 2026 10:53:26 +0000
Subject: [PATCH] Update rust-lang.rust-analyzer, usernamehw.errorlens in
devcontainer-metadata.json
---
.devcontainer/rust/devcontainer-metadata.json | 4 +-
pull-request-body.md | 1006 +++++++++++++++++
2 files changed, 1008 insertions(+), 2 deletions(-)
create mode 100644 pull-request-body.md
diff --git a/.devcontainer/rust/devcontainer-metadata.json b/.devcontainer/rust/devcontainer-metadata.json
index 2836216f..7aca2cf6 100644
--- a/.devcontainer/rust/devcontainer-metadata.json
+++ b/.devcontainer/rust/devcontainer-metadata.json
@@ -7,9 +7,9 @@
"extensions": [
"mhutchie.git-graph@1.30.0",
"ms-vsliveshare.vsliveshare@1.0.5959",
- "rust-lang.rust-analyzer@0.3.2761",
+ "rust-lang.rust-analyzer@0.3.2769",
"tamasfe.even-better-toml@0.21.2",
- "usernamehw.errorlens@3.26.0"
+ "usernamehw.errorlens@3.28.0"
]
}
}
diff --git a/pull-request-body.md b/pull-request-body.md
new file mode 100644
index 00000000..29cdd6e7
--- /dev/null
+++ b/pull-request-body.md
@@ -0,0 +1,1006 @@
+> [!NOTE]
+> Before merging this PR, please conduct a manual test checking basic functionality of the updated plug-ins. There are limited automated tests for the VS Code Extension updates.
+
+Updates `usernamehw.errorlens` from 3.26.0 to 3.28.0
+
+Release notes
+
+
+
+
+
+
+Updates `rust-lang.rust-analyzer` from 0.3.2761 to 0.3.2769
+
+Release notes
+
+
+Commit: [`2532c48`](https://www.github.com/rust-lang/rust-analyzer/commit/2532c48f1ed25de1b90d0287c364ee4f306bec0e) \
+Release: [`2026-01-26`](https://www.github.com/rust-lang/rust-analyzer/releases/2026-01-26) (`v0.3.2769`)
+
+## Fixes
+
+- [`#21497`](https://www.github.com/rust-lang/rust-analyzer/pull/21497) (first contribution) allow const evaluation errors in method resolution.
+- [`#21491`](https://www.github.com/rust-lang/rust-analyzer/pull/21491) insert type variables for statics.
+- [`#21490`](https://www.github.com/rust-lang/rust-analyzer/pull/21490) don't mix up regular and built-in derives in "Expand macro recursively".
+- [`#21485`](https://www.github.com/rust-lang/rust-analyzer/pull/21485) avoid emitting redundant block in `move_guard`.
+- [`#21499`](https://www.github.com/rust-lang/rust-analyzer/pull/21499) don't offer `apply_demorgan` on `if let`.
+
+## Internal Improvements
+
+- [`#21492`](https://www.github.com/rust-lang/rust-analyzer/pull/21492) fix parameter capture and drop order in async functions.
+- [`#21385`](https://www.github.com/rust-lang/rust-analyzer/pull/21385) parallelize proc macro expansion.
+- [`#21479`](https://www.github.com/rust-lang/rust-analyzer/pull/21479) add tests for bidirectional communication in proc macro expansion.
+- [`#21509`](https://www.github.com/rust-lang/rust-analyzer/pull/21509) add tests for renaming keywords in imports.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2026/01/26/changelog-312.html).
+
+Commit: [`080e703`](https://www.github.com/rust-lang/rust-analyzer/commit/080e70378c543d26a3a817899cb66934ba76360b) \
+Release: [`2026-01-19`](https://www.github.com/rust-lang/rust-analyzer/releases/2026-01-19) (`v0.3.2761`)
+
+## New Features
+
+- [`#21483`](https://www.github.com/rust-lang/rust-analyzer/pull/21483) trigger flycheck when non-workspace files get modified.
+
+## Fixes
+
+- [`#21475`](https://www.github.com/rust-lang/rust-analyzer/pull/21475) (first contribution) look up flycheck by ID instead of vector index.
+- [`#21462`](https://www.github.com/rust-lang/rust-analyzer/pull/21462) sync cast checks to `rustc` once again.
+- [`#21456`](https://www.github.com/rust-lang/rust-analyzer/pull/21456) make `naked_asm!()` always return `!`.
+- [`#21364`](https://www.github.com/rust-lang/rust-analyzer/pull/21364) fix lowering crash with supertrait predicates.
+- [`#21445`](https://www.github.com/rust-lang/rust-analyzer/pull/21445) disable `unused_variables` and `unused_mut` warnings.
+- [`#21459`](https://www.github.com/rust-lang/rust-analyzer/pull/21459) hide macro-generated renamed imports from symbol index.
+- [`#21464`](https://www.github.com/rust-lang/rust-analyzer/pull/21464) respect re-exports in path symbol search.
+- [`#21484`](https://www.github.com/rust-lang/rust-analyzer/pull/21484) don't show sysroot dependencies in symbol search.
+- [`#21451`](https://www.github.com/rust-lang/rust-analyzer/pull/21451) complete `mut` and `raw` on `&x.foo()`.
+- [`#21442`](https://www.github.com/rust-lang/rust-analyzer/pull/21442) keep `+#[cfg]+` and `+#[track_caller]+` after `extract_function`.
+- [`#21412`](https://www.github.com/rust-lang/rust-analyzer/pull/21412) keep guard expression in `move_guard`.
+- [`#20946`](https://www.github.com/rust-lang/rust-analyzer/pull/20946) offer `convert_to_guarded_return` on `if let ... else`.
+- [`#21465`](https://www.github.com/rust-lang/rust-analyzer/pull/21465) don't offer `remove_parentheses` on `(2 as i32) < 3`.
+
+## Internal Improvements
+
+- [`#21458`](https://www.github.com/rust-lang/rust-analyzer/pull/21458), [`#21443`](https://www.github.com/rust-lang/rust-analyzer/pull/21443) migrate `unwrap_block` and `generate_mut_trait_impl` assists to `SyntaxEditor`.
+- [`#21466`](https://www.github.com/rust-lang/rust-analyzer/pull/21466) remove `postcard-legacy` proc macro server protocol.
+- [`#21468`](https://www.github.com/rust-lang/rust-analyzer/pull/21468) improve `workspace.discoverConfig` docs.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2026/01/19/changelog-311.html).
+
+Commit: [`dd48777`](https://www.github.com/rust-lang/rust-analyzer/commit/dd4877761e927e985593f756e8d71e64f1a99241) \
+Release: [`2026-01-12`](https://www.github.com/rust-lang/rust-analyzer/releases/2026-01-12) (`v0.3.2753`)
+
+## New Features
+
+- [`#21415`](https://www.github.com/rust-lang/rust-analyzer/pull/21415), [`#21446`](https://www.github.com/rust-lang/rust-analyzer/pull/21446) allow Rust paths in symbol search.
+- [`#18043`](https://www.github.com/rust-lang/rust-analyzer/pull/18043) support configuring flycheck using `workspace.discoverConfig`.
+
+## Performance Improvements
+
+- [`#21407`](https://www.github.com/rust-lang/rust-analyzer/pull/21407) reuse scratch allocations for `try_evaluate_obligations`.
+
+## Fixes
+
+- [`#21414`](https://www.github.com/rust-lang/rust-analyzer/pull/21414) (first contribution) include traits defined in other crates in flyimport.
+- [`#21436`](https://www.github.com/rust-lang/rust-analyzer/pull/21436) (first contribution) handle `#[ignore = "reason"]` on tests.
+- [`#21405`](https://www.github.com/rust-lang/rust-analyzer/pull/21405) (first contribution) support `Span::line` and `Span::column` in proc macro expansion.
+- [`#21416`](https://www.github.com/rust-lang/rust-analyzer/pull/21416) support `Span::byte_range` in proc macro expansion.
+- [`#21421`](https://www.github.com/rust-lang/rust-analyzer/pull/21421) fix recursive built-in derive expansion.
+- [`#21399`](https://www.github.com/rust-lang/rust-analyzer/pull/21399) properly lower `SelfOnly` predicates.
+- [`#21434`](https://www.github.com/rust-lang/rust-analyzer/pull/21434) remove code made redundant by method resolution rewrite.
+- [`#21432`](https://www.github.com/rust-lang/rust-analyzer/pull/21432) fix missing lifetimes diagnostics with function pointers.
+- [`#21420`](https://www.github.com/rust-lang/rust-analyzer/pull/21420) ignore escapes when string highlighting is disabled.
+
+## Internal Improvements
+
+- [`#21438`](https://www.github.com/rust-lang/rust-analyzer/pull/21438), [`#21439`](https://www.github.com/rust-lang/rust-analyzer/pull/21439) add integration test infrastructure to proc macro server.
+- [`#21433`](https://www.github.com/rust-lang/rust-analyzer/pull/21433) include private definitions in generated docs.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2026/01/12/changelog-310.html).
+
+Commit: [`6a1246b`](https://www.github.com/rust-lang/rust-analyzer/commit/6a1246b69ca761480b9278df019f717b549cface) \
+Release: [`2026-01-05`](https://www.github.com/rust-lang/rust-analyzer/releases/2026-01-05) (`v0.3.2743`)
+
+## New Features
+
+- [`#21376`](https://www.github.com/rust-lang/rust-analyzer/pull/21376) allow finding references from doc comments.
+- [`#21308`](https://www.github.com/rust-lang/rust-analyzer/pull/21308) add configuration options to override the `test`, `bench` and `doctest` subcommands.
+- [`#21370`](https://www.github.com/rust-lang/rust-analyzer/pull/21370) add #[rust_analyzer::macro_style()] attribute to control macro completion brace style.
+
+## Performance Improvements
+
+- [`#21362`](https://www.github.com/rust-lang/rust-analyzer/pull/21362), [`#21363`](https://www.github.com/rust-lang/rust-analyzer/pull/21363) compress token trees to reduce memory usage (saves 120 MB on `self`).
+- [`#21396`](https://www.github.com/rust-lang/rust-analyzer/pull/21396) only compute lang items for `#![feature(lang_items)]` crates.
+- [`#21390`](https://www.github.com/rust-lang/rust-analyzer/pull/21390) pre-allocate interner storage with 64 KB of data or 1024 elements.
+- [`#21391`](https://www.github.com/rust-lang/rust-analyzer/pull/21391) reduce `impl_signature` query dependencies in method resolution.
+
+## Fixes
+
+- [`#21374`](https://www.github.com/rust-lang/rust-analyzer/pull/21374) (first contribution) suppress `non_camel_case_types` lint for `+#[repr(C)]+` structs and enums.
+- [`#21403`](https://www.github.com/rust-lang/rust-analyzer/pull/21403) suppress false positive missing associated item diagnostics when specialization is used.
+- [`#21397`](https://www.github.com/rust-lang/rust-analyzer/pull/21397) fix `Span::source_text` in proc macro expansion.
+- [`#21377`](https://www.github.com/rust-lang/rust-analyzer/pull/21377), [`#21400`](https://www.github.com/rust-lang/rust-analyzer/pull/21400) support `Span::file` and `Span::local_file` in proc macro expansion.
+- [`#21393`](https://www.github.com/rust-lang/rust-analyzer/pull/21393) add location links for generic parameter type hints.
+- [`#21375`](https://www.github.com/rust-lang/rust-analyzer/pull/21375) fix incorrect `dyn` hint in `impl Tr for`.
+- [`#21361`](https://www.github.com/rust-lang/rust-analyzer/pull/21361) ignore `try_into_` prefix when suggesting a name.
+
+## Internal Improvements
+
+- [`#21367`](https://www.github.com/rust-lang/rust-analyzer/pull/21367) add an `upvars_mentioned` that computes the closure captures.
+- [`#21369`](https://www.github.com/rust-lang/rust-analyzer/pull/21369) migrate `move_arm_cond_to_match_guard` assist to `SyntaxEditor`.
+- [`#21388`](https://www.github.com/rust-lang/rust-analyzer/pull/21388) remove unnecessary `ConstLiteralRef` enum.
+- [`#21401`](https://www.github.com/rust-lang/rust-analyzer/pull/21401) add a `README.md` to `proc-macro-srv-cli`.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2026/01/05/changelog-309.html).
+
+Commit: [`be6975f`](https://www.github.com/rust-lang/rust-analyzer/commit/be6975f8f90d33a3b205265a0a858ee29fabae13) \
+Release: [`2025-12-29`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-12-29) (`v0.3.2735`)
+
+## New Features
+
+- [`#21200`](https://www.github.com/rust-lang/rust-analyzer/pull/21200) don't expand built-in derives, treat them specifically instead (saves 180 MB on `self`).
+- [`#21337`](https://www.github.com/rust-lang/rust-analyzer/pull/21337) stabilize type mismatch diagnostic.
+- [`#20193`](https://www.github.com/rust-lang/rust-analyzer/pull/20193) add setting to disable showing rename conflicts.
+- [`#20741`](https://www.github.com/rust-lang/rust-analyzer/pull/20741) add macro segment completion.
+
+## Fixes
+
+- [`#21326`](https://www.github.com/rust-lang/rust-analyzer/pull/21326) keep flycheck generations in sync across multiple workspaces.
+- [`#21348`](https://www.github.com/rust-lang/rust-analyzer/pull/21348) re-enable fixpoint variance analysis.
+- [`#21351`](https://www.github.com/rust-lang/rust-analyzer/pull/21351) fix parsing of `format_args!(..., keyword=...)`.
+- [`#21358`](https://www.github.com/rust-lang/rust-analyzer/pull/21358) fix type inference when hovering on `_`.
+- [`#21354`](https://www.github.com/rust-lang/rust-analyzer/pull/21354) fix duplicate `default` item in record update syntax.
+- [`#21330`](https://www.github.com/rust-lang/rust-analyzer/pull/21330) fix indent in `convert_to_guarded_return`.
+- [`#20595`](https://www.github.com/rust-lang/rust-analyzer/pull/20595) fix indent in `convert_iter_for_each_to_for`.
+- [`#20521`](https://www.github.com/rust-lang/rust-analyzer/pull/20521) handle `break` in expected type analysis.
+- [`#21359`](https://www.github.com/rust-lang/rust-analyzer/pull/21359) prompt the user to add the `rust-analyzer` component to the toolchain file.
+- [`#21297`](https://www.github.com/rust-lang/rust-analyzer/pull/21297) fix LSP configuration request handling.
+
+## Internal Improvements
+
+- [`#21249`](https://www.github.com/rust-lang/rust-analyzer/pull/21249), [`#21340`](https://www.github.com/rust-lang/rust-analyzer/pull/21340), [`#21345`](https://www.github.com/rust-lang/rust-analyzer/pull/21345) implement bidirectional proc macro server messaging prototype.
+- [`#21335`](https://www.github.com/rust-lang/rust-analyzer/pull/21335) store closures with "tupled" inputs.
+- [`#21341`](https://www.github.com/rust-lang/rust-analyzer/pull/21341) move library and local root inputs to `base-db`.
+- [`#21344`](https://www.github.com/rust-lang/rust-analyzer/pull/21344) stop using MIR `ProjectionElem` in closure analysis.
+- [`#21349`](https://www.github.com/rust-lang/rust-analyzer/pull/21349) make token trees no longer generic over the span.
+- [`#21353`](https://www.github.com/rust-lang/rust-analyzer/pull/21353) pre-allocate some buffers for parsing.
+- [`#21355`](https://www.github.com/rust-lang/rust-analyzer/pull/21355) reduce channel lock contention for drop threads.
+- [`#21357`](https://www.github.com/rust-lang/rust-analyzer/pull/21357) drop `AstIdMap` asynchronously.
+- [`#21356`](https://www.github.com/rust-lang/rust-analyzer/pull/21356) collect garbage when quiescient after events.
+- [`#21334`](https://www.github.com/rust-lang/rust-analyzer/pull/21334) add `cargo-machete` CI step.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/12/29/changelog-308.html).
+
+Commit: [`9d58a93`](https://www.github.com/rust-lang/rust-analyzer/commit/9d58a93602913a1a2ecff29422eb4da67d304d9d) \
+Release: [`2025-12-22`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-12-22) (`v0.3.2727`)
+
+## New Features
+
+- [`#21295`](https://www.github.com/rust-lang/rust-analyzer/pull/21295), [`#21307`](https://www.github.com/rust-lang/rust-analyzer/pull/21307) use GC instead of `salsa` interning for solver types (salves 648 MB and 31 s on `self`).
+- [`#21240`](https://www.github.com/rust-lang/rust-analyzer/pull/21240) show parameter inlay hints for missing arguments.
+- [`#20996`](https://www.github.com/rust-lang/rust-analyzer/pull/20996) add "Insert explicit method call derefs" assist.
+- [`#21309`](https://www.github.com/rust-lang/rust-analyzer/pull/21309) add LSP extension to get failed obligations for a given function.
+- [`#21282`](https://www.github.com/rust-lang/rust-analyzer/pull/21282) add `crate_attrs` field to `rust-project.json`.
+
+## Fixes
+
+- [`#21270`](https://www.github.com/rust-lang/rust-analyzer/pull/21270) (first contribution) fix "file emitted multiple times" errors in `rust-analyzer scip`.
+- [`#21276`](https://www.github.com/rust-lang/rust-analyzer/pull/21276) fix reference-style links in hover.
+- [`#21304`](https://www.github.com/rust-lang/rust-analyzer/pull/21304) strip invisible delimiters in MBE.
+- [`#21262`](https://www.github.com/rust-lang/rust-analyzer/pull/21262) use the HIR to check for used locals.
+- [`#21032`](https://www.github.com/rust-lang/rust-analyzer/pull/21032) don't add semicolons to unit-returning function calls in argument lists.
+- [`#21278`](https://www.github.com/rust-lang/rust-analyzer/pull/21278) suggest `&mut T` for `&T` in completions.
+- [`#21289`](https://www.github.com/rust-lang/rust-analyzer/pull/21289) suggest `&T` for `&&T` in completions.
+- [`#21212`](https://www.github.com/rust-lang/rust-analyzer/pull/21212) use variant name as variable in postfix completions for enums.
+- [`#21166`](https://www.github.com/rust-lang/rust-analyzer/pull/21166) support `this` parameter name in closures.
+- [`#21277`](https://www.github.com/rust-lang/rust-analyzer/pull/21277) fix reference stripping in expected type analysis.
+- [`#21291`](https://www.github.com/rust-lang/rust-analyzer/pull/21291) fix expected type analysis for match arms.
+- [`#20438`](https://www.github.com/rust-lang/rust-analyzer/pull/20438) fix guessing of braces for renamed macros.
+- [`#21293`](https://www.github.com/rust-lang/rust-analyzer/pull/21293) don't offer `move_guard` in blocks with multiple statements.
+- [`#21258`](https://www.github.com/rust-lang/rust-analyzer/pull/21258) support `add_return_type` for functions defined inside closures.
+- [`#20576`](https://www.github.com/rust-lang/rust-analyzer/pull/20576) support nested `if-let` in `merge_nested_if`.
+- [`#20577`](https://www.github.com/rust-lang/rust-analyzer/pull/20577) fix indent in `merge_nested_if`.
+- [`#21266`](https://www.github.com/rust-lang/rust-analyzer/pull/21266) keep expression in `replace_let_with_if_let`.
+- [`#21272`](https://www.github.com/rust-lang/rust-analyzer/pull/21272) prepend workspace root to target file for sysroot metadata.
+- [`#21273`](https://www.github.com/rust-lang/rust-analyzer/pull/21273) fix method resolution for incoherent impls when there are two sysroots in the crate graph.
+
+## Internal Improvements
+
+- [`#21316`](https://www.github.com/rust-lang/rust-analyzer/pull/21316) call out feature freeze on IDE assists.
+- [`#21314`](https://www.github.com/rust-lang/rust-analyzer/pull/21314) add "Use of AI tools" [section](https://www.github.com/rust-lang/rust-analyzer/blob/master/CONTRIBUTING.md#use-of-ai-tools) to developer docs.
+- [`#21279`](https://www.github.com/rust-lang/rust-analyzer/pull/21279) add special `ErasedFileAstId` used to bypassing downmapping.
+- [`#21298`](https://www.github.com/rust-lang/rust-analyzer/pull/21298) pretty-print attributes up to `cfg(false)`.
+- [`#21284`](https://www.github.com/rust-lang/rust-analyzer/pull/21284) bump `rustc` crates.
+- [`#20439`](https://www.github.com/rust-lang/rust-analyzer/pull/20439) add hint to use `T![]` instead of `T! {}`.
+- [`#20472`](https://www.github.com/rust-lang/rust-analyzer/pull/20472) drop style guide entry about precondition checks.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/12/22/changelog-307.html).
+
+Commit: [`87cf663`](https://www.github.com/rust-lang/rust-analyzer/commit/87cf6631c60b7e7c9f4a53693a68920a80966c6f) \
+Release: [`2025-12-15`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-12-15) (`v0.3.2719`)
+
+## New Features
+
+- [`#21243`](https://www.github.com/rust-lang/rust-analyzer/pull/21243) support `#[feature(associated_type_defaults)]`.
+- [`#21242`](https://www.github.com/rust-lang/rust-analyzer/pull/21242) support the 1.93 `format_args!` lowering.
+
+## Fixes
+
+- [`#21253`](https://www.github.com/rust-lang/rust-analyzer/pull/21253) (first contribution) don't register twice for `didSaveTextDocument`.
+- [`#21265`](https://www.github.com/rust-lang/rust-analyzer/pull/21265) (first contribution) properly handle multiple lint attributes on the same item.
+- [`#21238`](https://www.github.com/rust-lang/rust-analyzer/pull/21238) (first contribution) add a stub `is_transmutable` to avoid panicking.
+- [`#21226`](https://www.github.com/rust-lang/rust-analyzer/pull/21226) (first contribution) show generic args when displaying traits.
+- [`#21235`](https://www.github.com/rust-lang/rust-analyzer/pull/21235) pass environment to fix a const generics panic.
+- [`#21251`](https://www.github.com/rust-lang/rust-analyzer/pull/21251) fix a panic in `TypeBound::kind()`.
+- [`#21233`](https://www.github.com/rust-lang/rust-analyzer/pull/21233) revert "turn `BlockLoc` into a tracked struct".
+- [`#21244`](https://www.github.com/rust-lang/rust-analyzer/pull/21244) support `#[rustc_deprecated_safe_2024(audit_that = reason)]`.
+- [`#21210`](https://www.github.com/rust-lang/rust-analyzer/pull/21210) fix completion with `{{{` and `_` in format strings.
+- [`#20754`](https://www.github.com/rust-lang/rust-analyzer/pull/20754) keep labels and attributes in `convert_for_to_while_let`.
+- [`#21239`](https://www.github.com/rust-lang/rust-analyzer/pull/21239) add missing parameter in `replace_method_eager_lazy`.
+- [`#21044`](https://www.github.com/rust-lang/rust-analyzer/pull/21044) keep generics in `generate_fn_type_alias`.
+- [`#21175`](https://www.github.com/rust-lang/rust-analyzer/pull/21175) fix indent in `toggle_ignore`.
+- [`#21264`](https://www.github.com/rust-lang/rust-analyzer/pull/21264) don't offer `bind_unused_param` in closures.
+- [`#21256`](https://www.github.com/rust-lang/rust-analyzer/pull/21256) demote `add_return_type`.
+- [`#21187`](https://www.github.com/rust-lang/rust-analyzer/pull/21187) include overloaded operators in SCIP index.
+- [`#21221`](https://www.github.com/rust-lang/rust-analyzer/pull/21221) don't needlessly add visibility in `no_such_field` quick fix.
+
+## Internal Improvements
+
+- [`#21225`](https://www.github.com/rust-lang/rust-analyzer/pull/21225) give `FileSymbol` a `'db` lifetime.
+- [`#21263`](https://www.github.com/rust-lang/rust-analyzer/pull/21263) use generated names in old `format_args!` lowering.
+- [`#21174`](https://www.github.com/rust-lang/rust-analyzer/pull/21174), [`#21199`](https://www.github.com/rust-lang/rust-analyzer/pull/21199) migrate `convert_iter_for_each_to_for` and `generate_delegate_trait` assists to `SyntaxEditor`.
+- [`#21209`](https://www.github.com/rust-lang/rust-analyzer/pull/21209) do not create stale expressions in body lowering.
+- [`#21252`](https://www.github.com/rust-lang/rust-analyzer/pull/21252) fix two Clippy lints.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/12/15/changelog-306.html).
+
+Commit: [`5e3e9c4`](https://www.github.com/rust-lang/rust-analyzer/commit/5e3e9c4e61bba8a5e72134b9ffefbef8f531d008) \
+Release: [`2025-12-08`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-12-08) (`v0.3.2711`)
+
+## New Features
+
+- [`#21218`](https://www.github.com/rust-lang/rust-analyzer/pull/21218) bump minimum supported toolchain version from 1.78 to 1.90.
+
+## Fixes
+
+- [`#21205`](https://www.github.com/rust-lang/rust-analyzer/pull/21205) (first contribution) handle `#[cfg]` in macro input attribute stripping.
+- [`#21203`](https://www.github.com/rust-lang/rust-analyzer/pull/21203) add configuration option to hide placeholder type hints.
+- [`#21222`](https://www.github.com/rust-lang/rust-analyzer/pull/21222) don't complete unit return type in async associated items.
+- [`#21215`](https://www.github.com/rust-lang/rust-analyzer/pull/21215) don't implement sizedness check via `all_field_tys`.
+- [`#21190`](https://www.github.com/rust-lang/rust-analyzer/pull/21190), [`#21195`](https://www.github.com/rust-lang/rust-analyzer/pull/21195) more proc macro server fixes.
+- [`#21223`](https://www.github.com/rust-lang/rust-analyzer/pull/21223) temporarily disable `postcard`.
+- [`#21198`](https://www.github.com/rust-lang/rust-analyzer/pull/21198) add missing semicolon in incomplete `let` completion.
+- [`#21183`](https://www.github.com/rust-lang/rust-analyzer/pull/21183) register `define_opaque` built-in attribute macro.
+- [`#21164`](https://www.github.com/rust-lang/rust-analyzer/pull/21164) allow multiple active discovery operations.
+
+## Internal Improvements
+
+- [`#21182`](https://www.github.com/rust-lang/rust-analyzer/pull/21182) remove `TraitEnvironment`.
+- [`#21178`](https://www.github.com/rust-lang/rust-analyzer/pull/21178) make `ModuleId` and `BlockLoc` tracked structs.
+- [`#21208`](https://www.github.com/rust-lang/rust-analyzer/pull/21208) handle lint attribute expansion in `hir`.
+- [`#21188`](https://www.github.com/rust-lang/rust-analyzer/pull/21188) fix rustdoc warnings and enable them on CI.
+- [`#21189`](https://www.github.com/rust-lang/rust-analyzer/pull/21189) remove `mdbook-toc` usage from the book.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/12/08/changelog-305.html).
+
+Commit: [`d646b23`](https://www.github.com/rust-lang/rust-analyzer/commit/d646b23f000d099d845f999c2c1e05b15d9cdc78) \
+Release: [`2025-12-01`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-12-01) (`v0.3.2702`)
+
+## New Features
+
+- [`#21027`](https://www.github.com/rust-lang/rust-analyzer/pull/21027) (first contribution) build releases with static CRT for `-windows-msvc` targets.
+- [`#21121`](https://www.github.com/rust-lang/rust-analyzer/pull/21121) add basic support for declarative attribute and derive macros.
+- [`#20125`](https://www.github.com/rust-lang/rust-analyzer/pull/20125) display inferred placeholder types inlay hints and use them in "Extract type as type alias".
+
+## Fixes
+
+- [`#21077`](https://www.github.com/rust-lang/rust-analyzer/pull/21077) (first contribution) handle more block types and show modifiers in closing brace inlay hints.
+- [`#21151`](https://www.github.com/rust-lang/rust-analyzer/pull/21151) don't run cache priming when disabled.
+- [`#21095`](https://www.github.com/rust-lang/rust-analyzer/pull/21095) fix iterator completions after auto-deref.
+- [`#20937`](https://www.github.com/rust-lang/rust-analyzer/pull/20937) don't suggest duplicate `const` completions after `raw`.
+- [`#20976`](https://www.github.com/rust-lang/rust-analyzer/pull/20976) fix completion after inner attributes.
+- [`#21144`](https://www.github.com/rust-lang/rust-analyzer/pull/21144) fix completion after `extern` and add `crate` completion.
+- [`#21028`](https://www.github.com/rust-lang/rust-analyzer/pull/21028) complete enum aliases in patterns.
+- [`#21126`](https://www.github.com/rust-lang/rust-analyzer/pull/21126) fix parameter info with missing arguments.
+- [`#20163`](https://www.github.com/rust-lang/rust-analyzer/pull/20163) use per-token, not global, edition in the parser.
+- [`#20164`](https://www.github.com/rust-lang/rust-analyzer/pull/20164) pass the per-token, not global, edition when expanding declarative macros.
+- [`#20217`](https://www.github.com/rust-lang/rust-analyzer/pull/20217) use root hygiene for speculative resolution.
+- [`#21170`](https://www.github.com/rust-lang/rust-analyzer/pull/21170) support multiple ``enable``d features in `#[target_feature]`.
+- [`#21159`](https://www.github.com/rust-lang/rust-analyzer/pull/21159), [`#21172`](https://www.github.com/rust-lang/rust-analyzer/pull/21172) rewrite `dyn Trait` lowering to follow rustc.
+- [`#20685`](https://www.github.com/rust-lang/rust-analyzer/pull/20685) support multiple variants in `generate_enum_{is,projection}_method`.
+- [`#20967`](https://www.github.com/rust-lang/rust-analyzer/pull/20967) offer `replace_method_eager_lazy` on `and`.
+- [`#21141`](https://www.github.com/rust-lang/rust-analyzer/pull/21141) set `enclosing_range` in the SCIP index.
+- [`#21131`](https://www.github.com/rust-lang/rust-analyzer/pull/21131) check snippet capabilities in `#[cfg(…)]` key completion.
+- [`#21023`](https://www.github.com/rust-lang/rust-analyzer/pull/21023) fix handling of cloned elements in `SyntaxEditor`.
+- [`#21147`](https://www.github.com/rust-lang/rust-analyzer/pull/21147) show a dropdown in the UI for `rust-analyzer.imports.granularity.group`.
+
+## Internal Improvements
+
+- [`#20892`](https://www.github.com/rust-lang/rust-analyzer/pull/20892) reintroduce attribute rewrite.
+- [`#21097`](https://www.github.com/rust-lang/rust-analyzer/pull/21097), [`#21145`](https://www.github.com/rust-lang/rust-analyzer/pull/21145), [`#21146`](https://www.github.com/rust-lang/rust-analyzer/pull/21146), [`#21154`](https://www.github.com/rust-lang/rust-analyzer/pull/21154) reimplement proc macro server token trees as immutable, to speed up concatenation.
+- [`#20986`](https://www.github.com/rust-lang/rust-analyzer/pull/20986), [`#21133`](https://www.github.com/rust-lang/rust-analyzer/pull/21133), [`#21135`](https://www.github.com/rust-lang/rust-analyzer/pull/21135), [`#21139`](https://www.github.com/rust-lang/rust-analyzer/pull/21139), [`#21179`](https://www.github.com/rust-lang/rust-analyzer/pull/21179) integrate `postcard` into the proc-macro server.
+- [`#21149`](https://www.github.com/rust-lang/rust-analyzer/pull/21149) use a single query per crate for lang items.
+- [`#21167`](https://www.github.com/rust-lang/rust-analyzer/pull/21167) shrink `InferenceResult` by ~40 bytes.
+- [`#21169`](https://www.github.com/rust-lang/rust-analyzer/pull/21169) use new `salsa` API for `infer`.
+- [`#21115`](https://www.github.com/rust-lang/rust-analyzer/pull/21115) bump `rustc` crates.
+- [`#21177`](https://www.github.com/rust-lang/rust-analyzer/pull/21177) fix `SmolStr` pretty-printing for `Repr::Static`.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/12/01/changelog-304.html).
+
+Commit: [`4a2b38f`](https://www.github.com/rust-lang/rust-analyzer/commit/4a2b38f49f2c15f4302502027b6ac09914679a8f) \
+Release: [`2025-11-24`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-11-24) (`v0.3.2693`)
+
+## New Features
+
+- [`#21100`](https://www.github.com/rust-lang/rust-analyzer/pull/21100) (first contribution) add semantic token modifier for deprecated items.
+- [`#21068`](https://www.github.com/rust-lang/rust-analyzer/pull/21068) (first contribution) make `dyn` inlay hints configurable.
+- [`#21093`](https://www.github.com/rust-lang/rust-analyzer/pull/21093) add assist to convert char literals.
+- [`#20974`](https://www.github.com/rust-lang/rust-analyzer/pull/20974) rewrite method resolution to follow rustc more closely.
+- [`#21015`](https://www.github.com/rust-lang/rust-analyzer/pull/21015) parse cargo config files with origins.
+
+## Fixes
+
+- [`#21090`](https://www.github.com/rust-lang/rust-analyzer/pull/21090), [`#21092`](https://www.github.com/rust-lang/rust-analyzer/pull/21092) (first contribution) don't offer to remove parantheses around control flow expressions.
+- [`#21083`](https://www.github.com/rust-lang/rust-analyzer/pull/21083) complete `#[cfg(…)]` keys.
+- [`#20980`](https://www.github.com/rust-lang/rust-analyzer/pull/20980) remove some deep normalizations from inference.
+- [`#21084`](https://www.github.com/rust-lang/rust-analyzer/pull/21084) fix formatting request blocking on the `crate_def_map` query.
+- [`#21061`](https://www.github.com/rust-lang/rust-analyzer/pull/21061) infer array lengths.
+- [`#21060`](https://www.github.com/rust-lang/rust-analyzer/pull/21060), [`#21113`](https://www.github.com/rust-lang/rust-analyzer/pull/21113), [`#21026`](https://www.github.com/rust-lang/rust-analyzer/pull/21026) improve pattern inference.
+- [`#21036`](https://www.github.com/rust-lang/rust-analyzer/pull/21036) handle references in postfix completions.
+- [`#21053`](https://www.github.com/rust-lang/rust-analyzer/pull/21053) fix panic in `extract_function` when a variable is used multiple times in a macro call.
+- [`#21074`](https://www.github.com/rust-lang/rust-analyzer/pull/21074) support parameters with the same name as a macro in `add_missing_impl_members`.
+- [`#21065`](https://www.github.com/rust-lang/rust-analyzer/pull/21065) fix field completion in irrefutable patterns.
+- [`#21018`](https://www.github.com/rust-lang/rust-analyzer/pull/21018) handle comments in `private_field` quick fix.
+- [`#21042`](https://www.github.com/rust-lang/rust-analyzer/pull/21042) import full path in `replace_qualified_name_with_use` when triggered on the first segment.
+- [`#21038`](https://www.github.com/rust-lang/rust-analyzer/pull/21038) support multiple selected variants in `generate_from_impl_for_enum`.
+- [`#20559`](https://www.github.com/rust-lang/rust-analyzer/pull/20559) add digit group separators in `add_explicit_enum_discriminant`.
+- [`#21111`](https://www.github.com/rust-lang/rust-analyzer/pull/21111) fill unguarded arms in `add_missing_match_arms`.
+- [`#21047`](https://www.github.com/rust-lang/rust-analyzer/pull/21047) add `#[unsafe(…)]` completion.
+- [`#21048`](https://www.github.com/rust-lang/rust-analyzer/pull/21048) don't report `incorrect_case` on `#[no_mangle]` static items.
+- [`#21098`](https://www.github.com/rust-lang/rust-analyzer/pull/21098) load targets of all types with paths outside package root.
+
+## Internal Improvements
+
+- [`#21094`](https://www.github.com/rust-lang/rust-analyzer/pull/21094) (first contribution) make `DefMap` dumps more verbose.
+- [`#21114`](https://www.github.com/rust-lang/rust-analyzer/pull/21114) (first contribution) disable the `tracing/attributes` in some crates.
+- [`#21011`](https://www.github.com/rust-lang/rust-analyzer/pull/21011) (first contribution) provide a gdb pretty printer for `SmolStr`.
+- [`#21017`](https://www.github.com/rust-lang/rust-analyzer/pull/21017) speed up cloning of inline `SmolStr` variants at the expense of heap ones.
+- [`#21046`](https://www.github.com/rust-lang/rust-analyzer/pull/21046), [`#21088`](https://www.github.com/rust-lang/rust-analyzer/pull/21088) improve start-up speed.
+- [`#21087`](https://www.github.com/rust-lang/rust-analyzer/pull/21087) gather trait implementations during cache priming.
+- [`#21085`](https://www.github.com/rust-lang/rust-analyzer/pull/21085) produce fewer progress reports on start-up.
+- [`#21086`](https://www.github.com/rust-lang/rust-analyzer/pull/21086) reduce allocations in `try_evaluate_obligations`.
+- [`#21059`](https://www.github.com/rust-lang/rust-analyzer/pull/21059) derive `ParamEnv` from `GenericPredicates`.
+- [`#21109`](https://www.github.com/rust-lang/rust-analyzer/pull/21109) migrate `replace_qualified_name_with_use` assist to `SyntaxEditor`.
+- [`#21057`](https://www.github.com/rust-lang/rust-analyzer/pull/21057) implement precedence in HIR printing.
+- [`#21103`](https://www.github.com/rust-lang/rust-analyzer/pull/21103) record lang item queries in `analysis-stats`.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/11/24/changelog-303.html).
+
+Commit: [`2efc800`](https://www.github.com/rust-lang/rust-analyzer/commit/2efc80078029894eec0699f62ec8d5c1a56af763) \
+Release: [`2025-11-17`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-11-17) (`v0.3.2683`)
+
+## Fixes
+
+- [`#20985`](https://www.github.com/rust-lang/rust-analyzer/pull/20985) allow renaming label after `add_label_to_loop`.
+- [`#21003`](https://www.github.com/rust-lang/rust-analyzer/pull/21003) add block on postfix `.const` completion.
+- [`#20542`](https://www.github.com/rust-lang/rust-analyzer/pull/20542) handle guards in `replace_if_let_with_match`.
+- [`#20972`](https://www.github.com/rust-lang/rust-analyzer/pull/20972) parse `impl ! {}`.
+
+## Internal Improvements
+
+- [`#21021`](https://www.github.com/rust-lang/rust-analyzer/pull/21021) fix Docs.rs builds after moving `smol_str`.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/11/17/changelog-302.html).
+
+Commit: [`21f8445`](https://www.github.com/rust-lang/rust-analyzer/commit/21f8445ea523e83cd4f11b0a67a3a5ced2b1f56f) \
+Release: [`2025-11-10`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-11-10) (`v0.3.2675`)
+
+## New Features
+
+- [`#20565`](https://www.github.com/rust-lang/rust-analyzer/pull/20565) add "Convert range `for` to ``while``" assist.
+
+## Fixes
+
+- [`#20964`](https://www.github.com/rust-lang/rust-analyzer/pull/20964) canonicalize `custom-target.json` paths when fetching sysroot metadata.
+- [`#20961`](https://www.github.com/rust-lang/rust-analyzer/pull/20961) consider more expression types as `in_value`.
+- [`#20963`](https://www.github.com/rust-lang/rust-analyzer/pull/20963) expand literals with wrong suffixes into `LitKind::Err`.
+- [`#20971`](https://www.github.com/rust-lang/rust-analyzer/pull/20971) fix panic while resolving callable signatures for `AsyncFnMut`.
+- [`#20957`](https://www.github.com/rust-lang/rust-analyzer/pull/20957) keep associated items in `generate_blanket_trait_impl`.
+- [`#20973`](https://www.github.com/rust-lang/rust-analyzer/pull/20973) handle method calls in `apply_demorgan`.
+
+## Internal Improvements
+
+- [`#21005`](https://www.github.com/rust-lang/rust-analyzer/pull/21005) (first contribution) improve wording in testing docs.
+- [`#20994`](https://www.github.com/rust-lang/rust-analyzer/pull/20994) reduce memory usage of symbol index.
+- [`#20997`](https://www.github.com/rust-lang/rust-analyzer/pull/20997) only populate public items in dependency symbol index.
+- [`#20995`](https://www.github.com/rust-lang/rust-analyzer/pull/20995) use new `salsa` API for `SymbolsDatabase`.
+- [`#20991`](https://www.github.com/rust-lang/rust-analyzer/pull/20991), [`#20990`](https://www.github.com/rust-lang/rust-analyzer/pull/20990), [`#20988`](https://www.github.com/rust-lang/rust-analyzer/pull/20988) merge `text-size`, `ungrammar` and `smol_str` into rust-analyzer.
+- [`#21002`](https://www.github.com/rust-lang/rust-analyzer/pull/21002) bump library editions to 2024 and remove legacy files.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/11/10/changelog-301.html).
+
+Commit: [`bacc5bb`](https://www.github.com/rust-lang/rust-analyzer/commit/bacc5bbd3020b8265e472ff98000ef477ff86e4a) \
+Release: [`2025-11-03`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-11-03) (`v0.3.2667`)
+
+## New Features
+
+- [`#20186`](https://www.github.com/rust-lang/rust-analyzer/pull/20186) add option to exclude nearby derives from "Go to implementations" and implementations lens.
+- [`#20906`](https://www.github.com/rust-lang/rust-analyzer/pull/20906) support opaques properly.
+
+## Fixes
+
+- [`#20921`](https://www.github.com/rust-lang/rust-analyzer/pull/20921) avoid calling `specializes()` query on crates that do not define `#![feature(specialization)]`.
+- [`#20920`](https://www.github.com/rust-lang/rust-analyzer/pull/20920) resolve `target-dir` more precisely.
+- [`#20369`](https://www.github.com/rust-lang/rust-analyzer/pull/20369) change method to associated function calls when renaming `self`.
+- [`#20931`](https://www.github.com/rust-lang/rust-analyzer/pull/20931) show proper async function signatures in the signature help.
+- [`#20930`](https://www.github.com/rust-lang/rust-analyzer/pull/20930) fix handling of nested block modules.
+- [`#20919`](https://www.github.com/rust-lang/rust-analyzer/pull/20919) consider all matches for flyimport even when searched with a qualifier.
+- [`#20942`](https://www.github.com/rust-lang/rust-analyzer/pull/20942) fix false positive syntax errors on frontmatters.
+- [`#20934`](https://www.github.com/rust-lang/rust-analyzer/pull/20934) improve error recovery with malformed function return types.
+- [`#20915`](https://www.github.com/rust-lang/rust-analyzer/pull/20915) offer `replace_is_method_with_if_let_method` in `while` expression.
+
+## Internal Improvements
+
+- [`#20922`](https://www.github.com/rust-lang/rust-analyzer/pull/20922) reduce `client_commands` allocations in LSP conversion.
+- [`#20927`](https://www.github.com/rust-lang/rust-analyzer/pull/20927) support memory profiling using `dhat`.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/11/03/changelog-300.html).
+
+
+
+Commit: [`049767e`](https://www.github.com/rust-lang/rust-analyzer/commit/049767e6faa84b2d1a951d8f227e6ebd99d728a2) \
+Release: [`2025-10-27`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-10-27) (`v0.3.2658`)
+
+## New Features
+
+- [`#20854`](https://www.github.com/rust-lang/rust-analyzer/pull/20854) feat (first contribution) parse script frontmatter.
+- [`#20837`](https://www.github.com/rust-lang/rust-analyzer/pull/20837) feat (first contribution) expose `addConfiguration` API from the Code extension.
+- [`#20329`](https://www.github.com/rust-lang/rust-analyzer/pull/20329), [`#20445`](https://www.github.com/rust-lang/rust-analyzer/pull/20445), [`#20446`](https://www.github.com/rust-lang/rust-analyzer/pull/20446), [`#20454`](https://www.github.com/rust-lang/rust-analyzer/pull/20454), [`#20470`](https://www.github.com/rust-lang/rust-analyzer/pull/20470), [`#20447`](https://www.github.com/rust-lang/rust-analyzer/pull/20447), [`#20496`](https://www.github.com/rust-lang/rust-analyzer/pull/20496), [`#20497`](https://www.github.com/rust-lang/rust-analyzer/pull/20497), [`#20502`](https://www.github.com/rust-lang/rust-analyzer/pull/20502), [`#20506`](https://www.github.com/rust-lang/rust-analyzer/pull/20506), [`#20523`](https://www.github.com/rust-lang/rust-analyzer/pull/20523), [`#20527`](https://www.github.com/rust-lang/rust-analyzer/pull/20527), [`#20537`](https://www.github.com/rust-lang/rust-analyzer/pull/20537), [`#20545`](https://www.github.com/rust-lang/rust-analyzer/pull/20545), [`#20553`](https://www.github.com/rust-lang/rust-analyzer/pull/20553), [`#20563`](https://www.github.com/rust-lang/rust-analyzer/pull/20563), [`#20586`](https://www.github.com/rust-lang/rust-analyzer/pull/20586), [`#20609`](https://www.github.com/rust-lang/rust-analyzer/pull/20609), [`#20578`](https://www.github.com/rust-lang/rust-analyzer/pull/20578), [`#20647`](https://www.github.com/rust-lang/rust-analyzer/pull/20647), [`#20645`](https://www.github.com/rust-lang/rust-analyzer/pull/20645), [`#20649`](https://www.github.com/rust-lang/rust-analyzer/pull/20649), [`#20654`](https://www.github.com/rust-lang/rust-analyzer/pull/20654), [`#20665`](https://www.github.com/rust-lang/rust-analyzer/pull/20665), [`#20671`](https://www.github.com/rust-lang/rust-analyzer/pull/20671), [`#20677`](https://www.github.com/rust-lang/rust-analyzer/pull/20677), [`#20664`](https://www.github.com/rust-lang/rust-analyzer/pull/20664), [`#20717`](https://www.github.com/rust-lang/rust-analyzer/pull/20717), [`#20728`](https://www.github.com/rust-lang/rust-analyzer/pull/20728), [`#20733`](https://www.github.com/rust-lang/rust-analyzer/pull/20733), [`#20735`](https://www.github.com/rust-lang/rust-analyzer/pull/20735), [`#20738`](https://www.github.com/rust-lang/rust-analyzer/pull/20738), [`#20765`](https://www.github.com/rust-lang/rust-analyzer/pull/20765), [`#20777`](https://www.github.com/rust-lang/rust-analyzer/pull/20777), [`#20785`](https://www.github.com/rust-lang/rust-analyzer/pull/20785), [`#20814`](https://www.github.com/rust-lang/rust-analyzer/pull/20814), [`#20834`](https://www.github.com/rust-lang/rust-analyzer/pull/20834), [`#20841`](https://www.github.com/rust-lang/rust-analyzer/pull/20841), [`#20867`](https://www.github.com/rust-lang/rust-analyzer/pull/20867), [`#20873`](https://www.github.com/rust-lang/rust-analyzer/pull/20873), [`#20882`](https://www.github.com/rust-lang/rust-analyzer/pull/20882), [`#20888`](https://www.github.com/rust-lang/rust-analyzer/pull/20888), [`#20896`](https://www.github.com/rust-lang/rust-analyzer/pull/20896), [`#20893`](https://www.github.com/rust-lang/rust-analyzer/pull/20893), [`#20895`](https://www.github.com/rust-lang/rust-analyzer/pull/20895) switch from Chalk to the next trait solver.
+- [`#20632`](https://www.github.com/rust-lang/rust-analyzer/pull/20632) support navigation on primitives.
+- [`#20760`](https://www.github.com/rust-lang/rust-analyzer/pull/20760) add `all`, `any` and `not` completions in `#[cfg]`.
+- [`#20806`](https://www.github.com/rust-lang/rust-analyzer/pull/20806), [`#20835`](https://www.github.com/rust-lang/rust-analyzer/pull/20835) log flycheck `stdout` and `stderr` to files.
+- [`#19771`](https://www.github.com/rust-lang/rust-analyzer/pull/19771) add "Generate blanket trait impl" assist.
+- [`#20705`](https://www.github.com/rust-lang/rust-analyzer/pull/20705) add "Flip range expression" assist.
+- [`#19918`](https://www.github.com/rust-lang/rust-analyzer/pull/19918) add "Remove `else` branches" assist.
+- [`#20855`](https://www.github.com/rust-lang/rust-analyzer/pull/20855) improve fixture support.
+
+## Fixes
+
+- [`#20583`](https://www.github.com/rust-lang/rust-analyzer/pull/20583) (first contribution) add `rust-analyzer.semanticHighlighting.comments.enable` option.
+- [`#20697`](https://www.github.com/rust-lang/rust-analyzer/pull/20697), [`#20745`](https://www.github.com/rust-lang/rust-analyzer/pull/20745) (first contribution) fix negative literals in const generics.
+- [`#19867`](https://www.github.com/rust-lang/rust-analyzer/pull/19867) (first contribution) allow `&raw [mut | const]` for union fields in safe code.
+- [`#20432`](https://www.github.com/rust-lang/rust-analyzer/pull/20432) (first contribution) improve identifier pattern handling in assists.
+- [`#20891`](https://www.github.com/rust-lang/rust-analyzer/pull/20891) (first contribution) add `negation` semantic token type.
+- [`#20425`](https://www.github.com/rust-lang/rust-analyzer/pull/20425) (first contribution) add parser heuristic to warn on unterminated strings.
+- [`#20520`](https://www.github.com/rust-lang/rust-analyzer/pull/20520) add option to hide reborrows in adjustment inlay hints.
+- [`#20721`](https://www.github.com/rust-lang/rust-analyzer/pull/20721) implement fallback properly.
+- [`#20755`](https://www.github.com/rust-lang/rust-analyzer/pull/20755) add `#[doc = include_str!(…)]` completion.
+- [`#20423`](https://www.github.com/rust-lang/rust-analyzer/pull/20423) make import sorting order follow the 2024 edition style.
+- [`#20801`](https://www.github.com/rust-lang/rust-analyzer/pull/20801) small fixes for import insertion.
+- [`#20866`](https://www.github.com/rust-lang/rust-analyzer/pull/20866) run `cargo metadata` on sysroot right from its path.
+- [`#20554`](https://www.github.com/rust-lang/rust-analyzer/pull/20554) improve handling of the `env!` macro.
+- [`#20587`](https://www.github.com/rust-lang/rust-analyzer/pull/20587) deduplicate methods in completion by function ID and not by name.
+- [`#20803`](https://www.github.com/rust-lang/rust-analyzer/pull/20803) replace `--show-output` task defaults with `--nocapture`.
+- [`#20459`](https://www.github.com/rust-lang/rust-analyzer/pull/20459) track diagnostic generations per package.
+- [`#20689`](https://www.github.com/rust-lang/rust-analyzer/pull/20689) make flycheck clearing dependency-aware.
+- [`#20635`](https://www.github.com/rust-lang/rust-analyzer/pull/20635) don't trigger two flychecks when saving files that are part of targets.
+- [`#20402`](https://www.github.com/rust-lang/rust-analyzer/pull/20402) add more workarounds for incorrect startup diagnostics.
+- [`#20787`](https://www.github.com/rust-lang/rust-analyzer/pull/20787) fix spurious `incorrect_generics_len` on generic enum variants used through type aliases.
+- [`#20770`](https://www.github.com/rust-lang/rust-analyzer/pull/20770) don't trigger `trait-impl-incorrect-safety` on unresolved traits.
+- [`#20642`](https://www.github.com/rust-lang/rust-analyzer/pull/20642) make `#[target_feature]` safe on WASM.
+- [`#20504`](https://www.github.com/rust-lang/rust-analyzer/pull/20504) avoid infinite recursion while lowering associated type bounds from supertraits.
+- [`#20720`](https://www.github.com/rust-lang/rust-analyzer/pull/20720) prevent rustup from automatically installing toolchains.
+- [`#20528`](https://www.github.com/rust-lang/rust-analyzer/pull/20528) masquerade as nightly cargo when invoking flycheck with `-Zscript`.
+- [`#20612`](https://www.github.com/rust-lang/rust-analyzer/pull/20612) fix "Expand macro recursively" on nested macro calls.
+- [`#20517`](https://www.github.com/rust-lang/rust-analyzer/pull/20517) only compute unstable paths on nightly toolchains for IDE features.
+- [`#20639`](https://www.github.com/rust-lang/rust-analyzer/pull/20639) resolve paths to snapshot test libraries absolutely.
+- [`#20547`](https://www.github.com/rust-lang/rust-analyzer/pull/20547) don't highlight unrelated unsafe operation on `unsafe` blocks.
+- [`#20579`](https://www.github.com/rust-lang/rust-analyzer/pull/20579) don't pass `--target` to `rustc` twice while fetching target data layout.
+- [`#20475`](https://www.github.com/rust-lang/rust-analyzer/pull/20475) don't duplicate lang items with overridden sysroot crates.
+- [`#20518`](https://www.github.com/rust-lang/rust-analyzer/pull/20518) fix `else` completion in `let _ = if x {} $0`.
+- [`#20390`](https://www.github.com/rust-lang/rust-analyzer/pull/20390) add `if`-`else` completions in `let` statements and argument lists.
+- [`#20620`](https://www.github.com/rust-lang/rust-analyzer/pull/20620), [`#20657`](https://www.github.com/rust-lang/rust-analyzer/pull/20657) add `else` keyword completion after `let` statements.
+- [`#20653`](https://www.github.com/rust-lang/rust-analyzer/pull/20653) don't output an empty generic parameters list in `generate_function`.
+- [`#20708`](https://www.github.com/rust-lang/rust-analyzer/pull/20708) fix panic in `destructure_struct_binding`.
+- [`#20702`](https://www.github.com/rust-lang/rust-analyzer/pull/20702) fix `else` completion before `else` keyword.
+- [`#20700`](https://www.github.com/rust-lang/rust-analyzer/pull/20700) fix `extract_variable` on `if`-`let`.
+- [`#20709`](https://www.github.com/rust-lang/rust-analyzer/pull/20709) fix panic in `destructure_struct_binding`.
+- [`#20710`](https://www.github.com/rust-lang/rust-analyzer/pull/20710) fix shorthand fields in `unused_variables`.
+- [`#20661`](https://www.github.com/rust-lang/rust-analyzer/pull/20661) tighten up expected type completions in `if`.
+- [`#20507`](https://www.github.com/rust-lang/rust-analyzer/pull/20507) handle expected `return` type in completions.
+- [`#20725`](https://www.github.com/rust-lang/rust-analyzer/pull/20725) fix lifetime elision handling for `Fn`-style trait bounds.
+- [`#20624`](https://www.github.com/rust-lang/rust-analyzer/pull/20624) fix `lifetime_bounds`.
+- [`#20723`](https://www.github.com/rust-lang/rust-analyzer/pull/20723) fix `bind_unused_param` with binding modes and underscore prefixes.
+- [`#20722`](https://www.github.com/rust-lang/rust-analyzer/pull/20722) fix `pull_assignment_up` on chained ``if``s.
+- [`#20679`](https://www.github.com/rust-lang/rust-analyzer/pull/20679) fix type completion with nested patterns.
+- [`#20592`](https://www.github.com/rust-lang/rust-analyzer/pull/20592) handle closures inside `match` in `add_braces`.
+- [`#20543`](https://www.github.com/rust-lang/rust-analyzer/pull/20543) don't suggest invalid transformation in `replace_if_let_with_match`.
+- [`#20742`](https://www.github.com/rust-lang/rust-analyzer/pull/20742) don't turn unused variables into raw identifier.
+- [`#20598`](https://www.github.com/rust-lang/rust-analyzer/pull/20598) support `let` chains in `convert_to_guarded_return`.
+- [`#20731`](https://www.github.com/rust-lang/rust-analyzer/pull/20731) handle tuple and slice rest patterns in `expand_rest_pattern`.
+- [`#20729`](https://www.github.com/rust-lang/rust-analyzer/pull/20729) add `const` generic parameter keyword completion.
+- [`#20793`](https://www.github.com/rust-lang/rust-analyzer/pull/20793) add missing parentheses on ambiguity in `missing_unsafe`.
+- [`#20513`](https://www.github.com/rust-lang/rust-analyzer/pull/20513) complete `let` in `let`-chains.
+- [`#20812`](https://www.github.com/rust-lang/rust-analyzer/pull/20812) complete `self` parameters in associated trait functions.
+- [`#20805`](https://www.github.com/rust-lang/rust-analyzer/pull/20805) improve parse errors for `static` and `const`.
+- [`#20824`](https://www.github.com/rust-lang/rust-analyzer/pull/20824) fix completion type analysis in empty closures.
+- [`#20817`](https://www.github.com/rust-lang/rust-analyzer/pull/20817) support `add_explicit_type` on parameters in `let` statements.
+- [`#20816`](https://www.github.com/rust-lang/rust-analyzer/pull/20816) handle closure return type adjustments in `add_return_type`.
+- [`#20526`](https://www.github.com/rust-lang/rust-analyzer/pull/20526) support `let`-chains for `.let` completions.
+- [`#20788`](https://www.github.com/rust-lang/rust-analyzer/pull/20788) allow more string literal conversions from raw strings.
+- [`#20838`](https://www.github.com/rust-lang/rust-analyzer/pull/20838) don't make `convert_to_guarded_return` applicable on `let-else`.
+- [`#20758`](https://www.github.com/rust-lang/rust-analyzer/pull/20758) support `else` blocks with `!` return type in `convert_to_guarded_return`.
+- [`#20772`](https://www.github.com/rust-lang/rust-analyzer/pull/20772) support `match` inside `if` in `pull_assignment_up`.
+- [`#20673`](https://www.github.com/rust-lang/rust-analyzer/pull/20673) support `break` with value in completions.
+- [`#20858`](https://www.github.com/rust-lang/rust-analyzer/pull/20858) include trailing underscores when hiding inlay hints.
+- [`#20872`](https://www.github.com/rust-lang/rust-analyzer/pull/20872) add missing rest pattern in `convert_named_struct_to_tuple_struct`.
+- [`#20880`](https://www.github.com/rust-lang/rust-analyzer/pull/20880) fix invalid rest pattern in `convert_tuple_struct_to_named_struct`.
+- [`#20455`](https://www.github.com/rust-lang/rust-analyzer/pull/20455) fix indent in `convert_match_to_let_else`.
+- [`#20509`](https://www.github.com/rust-lang/rust-analyzer/pull/20509) fix indent in `move_guard_to_arm_body`.
+- [`#20613`](https://www.github.com/rust-lang/rust-analyzer/pull/20613) fix indent in `unresolved_field` diagnostic fixes.
+- [`#20845`](https://www.github.com/rust-lang/rust-analyzer/pull/20845) fix indent in `add_braces`.
+- [`#20850`](https://www.github.com/rust-lang/rust-analyzer/pull/20850) fix indent in `add_missing_match_arms`.
+- [`#20670`](https://www.github.com/rust-lang/rust-analyzer/pull/20670) improve incomplete statement heuristic.
+- [`#20831`](https://www.github.com/rust-lang/rust-analyzer/pull/20831) add shorthand record field completions.
+- [`#20571`](https://www.github.com/rust-lang/rust-analyzer/pull/20571) add type keyword completions.
+- [`#20886`](https://www.github.com/rust-lang/rust-analyzer/pull/20886) improve handling of missing names in `MethodCallExpr`.
+- [`#20905`](https://www.github.com/rust-lang/rust-analyzer/pull/20905) fix array inhabitedness check.
+- [`#20889`](https://www.github.com/rust-lang/rust-analyzer/pull/20889) improve field completion parentheses heuristic.
+- [`#20658`](https://www.github.com/rust-lang/rust-analyzer/pull/20658) complete `else` in more expressions.
+- [`#20611`](https://www.github.com/rust-lang/rust-analyzer/pull/20611) add parantheses for precedence in `replace_arith_op`.
+- [`#20912`](https://www.github.com/rust-lang/rust-analyzer/pull/20912) complete `let` before expression in `if`.
+- [`#20764`](https://www.github.com/rust-lang/rust-analyzer/pull/20764) handle `if`-`let` in `convert_to_guarded_return`.
+- [`#20712`](https://www.github.com/rust-lang/rust-analyzer/pull/20712) handle shorthand field patterns in `destructure_tuple_binding`.
+- [`#20589`](https://www.github.com/rust-lang/rust-analyzer/pull/20589) place new module outside `impl` block in `extract_module`.
+- [`#20913`](https://www.github.com/rust-lang/rust-analyzer/pull/20913) support `let`-chains in `replace_is_method_with_if_let_method`.
+- [`#20626`](https://www.github.com/rust-lang/rust-analyzer/pull/20626) improve whitespace in `make::struct_field_list`.
+- [`#20534`](https://www.github.com/rust-lang/rust-analyzer/pull/20534) improve semicolon handling in `toggle_macro_delimiter`.
+- [`#20442`](https://www.github.com/rust-lang/rust-analyzer/pull/20442) only import the item in "Unqualify method call" when needed.
+- [`#20686`](https://www.github.com/rust-lang/rust-analyzer/pull/20686) only offer `generate_default_from_enum_variant` when the variant name is completely selected.
+- [`#20771`](https://www.github.com/rust-lang/rust-analyzer/pull/20771) offer `invert_if` on `else`.
+- [`#20844`](https://www.github.com/rust-lang/rust-analyzer/pull/20844) offer `add_braces` on assignments.
+- [`#20599`](https://www.github.com/rust-lang/rust-analyzer/pull/20599) offer `apply_demorgan` on `!`.
+- [`#20456`](https://www.github.com/rust-lang/rust-analyzer/pull/20456) support guards in `replace_match_with_if_let`.
+- [`#20714`](https://www.github.com/rust-lang/rust-analyzer/pull/20714) allow trailing comma in `remove_dbg!`.
+- [`#20511`](https://www.github.com/rust-lang/rust-analyzer/pull/20511) don't offer `convert_integer_literal` on selections.
+- [`#20512`](https://www.github.com/rust-lang/rust-analyzer/pull/20512) don't offer `replace_arith_op` on selections.
+- [`#20736`](https://www.github.com/rust-lang/rust-analyzer/pull/20736) don't offer `invert_if` on `if-let` chains.
+- [`#20682`](https://www.github.com/rust-lang/rust-analyzer/pull/20682) don't offer `change_visibility` for variant fields.
+- [`#20688`](https://www.github.com/rust-lang/rust-analyzer/pull/20688) reduce `replace_is_method_with_if_let_method` applicability range.
+- [`#20759`](https://www.github.com/rust-lang/rust-analyzer/pull/20759) fix casts and use typed syntax tree API in `convert_to_guarded_return`.
+- [`#20876`](https://www.github.com/rust-lang/rust-analyzer/pull/20876) fix `signature_help` LSP conversion creating invalid UTF-16 offsets.
+
+## Internal Improvements
+
+- [`#20379`](https://www.github.com/rust-lang/rust-analyzer/pull/20379) (first contribution) consistently use `---` for horizontal rules.
+- [`#20483`](https://www.github.com/rust-lang/rust-analyzer/pull/20483) (first contribution) optimize VS Code extension icon.
+- [`#20794`](https://www.github.com/rust-lang/rust-analyzer/pull/20794) (first contribution) deduplicate `sort` and `dedup` calls.
+- [`#20667`](https://www.github.com/rust-lang/rust-analyzer/pull/20667) add regression test for The One and Only Issue.
+- [`#20376`](https://www.github.com/rust-lang/rust-analyzer/pull/20376) merge `Trait` and `TraitAlias` handling.
+- [`#20399`](https://www.github.com/rust-lang/rust-analyzer/pull/20399) enable warning logs by default.
+- [`#20706`](https://www.github.com/rust-lang/rust-analyzer/pull/20706) avoid allocating in `stdx::replace`.
+- [`#20730`](https://www.github.com/rust-lang/rust-analyzer/pull/20730), [`#20748`](https://www.github.com/rust-lang/rust-analyzer/pull/20748), [`#20860`](https://www.github.com/rust-lang/rust-analyzer/pull/20860) migrate `expand_record_rest_pattern`, `replace_arith_op` and `generate_single_field_struct_from` assists to `SyntaxEditor`.
+- [`#20796`](https://www.github.com/rust-lang/rust-analyzer/pull/20796) bump `salsa`.
+- [`#20852`](https://www.github.com/rust-lang/rust-analyzer/pull/20852) do not enable `force-always-assert` by default.
+- [`#20631`](https://www.github.com/rust-lang/rust-analyzer/pull/20631) remove support for `#[register_attr]`.
+- [`#20804`](https://www.github.com/rust-lang/rust-analyzer/pull/20804) pass `--target` to `xtask install`.
+- [`#20683`](https://www.github.com/rust-lang/rust-analyzer/pull/20683) expose iterators over the types in `InferenceResult`.
+- [`#20669`](https://www.github.com/rust-lang/rust-analyzer/pull/20669) add a testing guide.
+- [`#20633`](https://www.github.com/rust-lang/rust-analyzer/pull/20633) clarify introduction in the README and manual.
+- [`#20638`](https://www.github.com/rust-lang/rust-analyzer/pull/20638) add FAQ entry about Cargo build lock and cache conflicts.
+- [`#20560`](https://www.github.com/rust-lang/rust-analyzer/pull/20560) add progress bars to more places in `analysis-stats`.
+- [`#20652`](https://www.github.com/rust-lang/rust-analyzer/pull/20652) improve `rust-analyzer diagnostics`.
+- [`#20774`](https://www.github.com/rust-lang/rust-analyzer/pull/20774) build `x86_64-apple-darwin` binaries on `macos-14`.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/10/27/changelog-299.html).
+
+
+
+Commit: [`9db0550`](https://www.github.com/rust-lang/rust-analyzer/commit/9db05508ed08a4c952017769b45b57c4ad505872) \
+Release: [`2025-08-11`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-08-11) (`v0.3.2577`)
+
+## An Update on the Next Trait Solver
+
+We are very close to switching from `chalk` to the next trait solver, which will be shared with `rustc`.
+`chalk` is _de-facto_ unmaintained, and sharing the code with the compiler will greatly improve trait solving accuracy and fix long-standing issues in `rust-analyzer`.
+This will also let us enable more on-the-fly diagnostics (currently marked as experimental), and even significantly improve performance.
+
+However, in order to avoid regressions, we will suspend the weekly releases until the new solver is stabilized.
+In the meanwhile, please test the pre-release versions (nightlies) and report any issues or improvements you notice, either on [GitHub Issues](https://www.github.com/rust-lang/rust-analyzer/issues), [GitHub Discussions](https://www.github.com/rust-lang/rust-analyzer/discussions/20426), or [Zulip](https://rust-lang.zulipchat.com/#narrow/channel/185405-t-compiler.2Frust-analyzer/topic/New.20Trait.20Solver.20feedback).
+
+## New Features
+
+- [`#20420`](https://www.github.com/rust-lang/rust-analyzer/pull/20420) (first contribution) add config option to exclude locals from document symbol search.
+
+## Fixes
+
+- [`#20381`](https://www.github.com/rust-lang/rust-analyzer/pull/20381) check expected type for assignments in completions.
+- [`#20382`](https://www.github.com/rust-lang/rust-analyzer/pull/20382) correctly go to `impl From` from `into()` even inside macros.
+- [`#20387`](https://www.github.com/rust-lang/rust-analyzer/pull/20387) do not remove the original token when descending into derives.
+- [`#20412`](https://www.github.com/rust-lang/rust-analyzer/pull/20412) properly handle names matching identifiers in `generate_function`.
+- [`#20418`](https://www.github.com/rust-lang/rust-analyzer/pull/20418) fix `extract_expressions_from_format_string` on `write!` calls.
+- [`#20354`](https://www.github.com/rust-lang/rust-analyzer/pull/20354) remove no-op calls in `remove_dbg`.
+- [`#20384`](https://www.github.com/rust-lang/rust-analyzer/pull/20384) fix external docs URL for exported macros.
+
+## Internal Improvements
+
+- [`#20417`](https://www.github.com/rust-lang/rust-analyzer/pull/20417) (first contribution) fix parsing of trait bound polarity and `for`-binders.
+- [`#20419`](https://www.github.com/rust-lang/rust-analyzer/pull/20419), [`#20429`](https://www.github.com/rust-lang/rust-analyzer/pull/20429), [`#20434`](https://www.github.com/rust-lang/rust-analyzer/pull/20434) make flycheck generational.
+- [`#20385`](https://www.github.com/rust-lang/rust-analyzer/pull/20385) migrate `expand_glob_import` assist to `SyntaxEditor`.
+- [`#20373`](https://www.github.com/rust-lang/rust-analyzer/pull/20373) generate an `ast::Module`, not `String`, in `extract_module`.
+- [`#20383`](https://www.github.com/rust-lang/rust-analyzer/pull/20383) remove `ted` from `replace_named_generic_with_impl`.
+- [`#20380`](https://www.github.com/rust-lang/rust-analyzer/pull/20380) remove `add_attr` from `edit_in_place` because it use `ted`.
+- [`#20409`](https://www.github.com/rust-lang/rust-analyzer/pull/20409) add `write!` and `writeln!` to `minicore`.
+- [`#20400`](https://www.github.com/rust-lang/rust-analyzer/pull/20400) disable error reporting when clamping a position.
+- [`#20393`](https://www.github.com/rust-lang/rust-analyzer/pull/20393) fix non-LSP compliant `Response` definition.
+- [`#20392`](https://www.github.com/rust-lang/rust-analyzer/pull/20392) report the incorrect payload when failing to deserialize LSP messages.
+- [`#20389`](https://www.github.com/rust-lang/rust-analyzer/pull/20389) slim down compile-time artifact progress reports.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/08/11/changelog-298.html).
+
+Commit: [`8d75311`](https://www.github.com/rust-lang/rust-analyzer/commit/8d75311400a108d7ffe17dc9c38182c566952e6e) \
+Release: [`2025-08-04`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-08-04) (`v0.3.2563`)
+
+## New Features
+
+- [`#20351`](https://www.github.com/rust-lang/rust-analyzer/pull/20351) change callers to use method call syntax when renaming a parameter to `self`.
+
+## Fixes
+
+- [`#20313`](https://www.github.com/rust-lang/rust-analyzer/pull/20313) fix variable substitution in `runnables.extraEnv`.
+- [`#20333`](https://www.github.com/rust-lang/rust-analyzer/pull/20333) do not require all rename definitions to be renameable.
+- [`#20336`](https://www.github.com/rust-lang/rust-analyzer/pull/20336) check for snippet cap in `generate_mut_trait_impl`.
+- [`#20337`](https://www.github.com/rust-lang/rust-analyzer/pull/20337) fix bounds display with `impl Trait`.
+- [`#20300`](https://www.github.com/rust-lang/rust-analyzer/pull/20300) don't add `Panics` section for `debug_assert!`.
+- [`#20327`](https://www.github.com/rust-lang/rust-analyzer/pull/20327) don't show `$saved_file` literally in IDE status updates.
+
+## Internal Improvements
+
+- [`#20342`](https://www.github.com/rust-lang/rust-analyzer/pull/20342) reorganize `proc-macro-srv`, add `--format` and `--version` args.
+- [`#20311`](https://www.github.com/rust-lang/rust-analyzer/pull/20311), [`#20314`](https://www.github.com/rust-lang/rust-analyzer/pull/20314), [`#20364`](https://www.github.com/rust-lang/rust-analyzer/pull/20364), [`#20368`](https://www.github.com/rust-lang/rust-analyzer/pull/20368), [`#20371`](https://www.github.com/rust-lang/rust-analyzer/pull/20371) migrate `convert_tuple_struct_to_named_struct`, `inline_type_alias`, `convert_from_to_tryfrom`, `generate_delegate_methods` and `generate_trait_from_impl` assists to `SyntaxEditor`.
+- [`#20303`](https://www.github.com/rust-lang/rust-analyzer/pull/20303), [`#20372`](https://www.github.com/rust-lang/rust-analyzer/pull/20372) migrate `path_transform` to `SyntaxEditor`.
+- [`#20345`](https://www.github.com/rust-lang/rust-analyzer/pull/20345) add `SyntaxEditor::delete_all`.
+- [`#20349`](https://www.github.com/rust-lang/rust-analyzer/pull/20349) fix new Clippy lints.
+- [`#20154`](https://www.github.com/rust-lang/rust-analyzer/pull/20154) improve settings tree descriptions.
+- [`#20335`](https://www.github.com/rust-lang/rust-analyzer/pull/20335) use GitHub app for authenticating sync PRs.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/08/04/changelog-297.html).
+
+Commit: [`db02cdc`](https://www.github.com/rust-lang/rust-analyzer/commit/db02cdc7fc8b0e0b9aa1be4110a74620bbac1f98) \
+Release: [`2025-07-28`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-07-28) (`v0.3.2555`)
+
+## New Features
+
+- [`#19938`](https://www.github.com/rust-lang/rust-analyzer/pull/19938) add "Generate impl for type" assist.
+
+## Fixes
+
+- [`#20271`](https://www.github.com/rust-lang/rust-analyzer/pull/20271) disable tests in flycheck if `cfg.setTest` is set to `false`.
+- [`#20262`](https://www.github.com/rust-lang/rust-analyzer/pull/20262) fix search of raw labels and lifetimes.
+- [`#20273`](https://www.github.com/rust-lang/rust-analyzer/pull/20273) apply adjustments to patterns and expressions when doing pattern analysis.
+- [`#20281`](https://www.github.com/rust-lang/rust-analyzer/pull/20281) parse `for<'a> [const]`.
+- [`#20318`](https://www.github.com/rust-lang/rust-analyzer/pull/20318) ignore `Destruct` bounds again.
+- [`#20290`](https://www.github.com/rust-lang/rust-analyzer/pull/20290), [`#20315`](https://www.github.com/rust-lang/rust-analyzer/pull/20315) use temporary directory for copied lockfiles.
+- [`#20319`](https://www.github.com/rust-lang/rust-analyzer/pull/20319) consider all produced artifacts for proc macro dylib search.
+- [`#20302`](https://www.github.com/rust-lang/rust-analyzer/pull/20302) fix doc-comment folding with multi-line parameter lists.
+- [`#20285`](https://www.github.com/rust-lang/rust-analyzer/pull/20285) use `Self` when renaming `self` parameter.
+- [`#20256`](https://www.github.com/rust-lang/rust-analyzer/pull/20256) support `Deref` in `generate_mut_trait_impl`.
+- [`#20297`](https://www.github.com/rust-lang/rust-analyzer/pull/20297) fix whitespace in `generate_trait_from_impl`.
+
+## Internal Improvements
+
+- [`#20272`](https://www.github.com/rust-lang/rust-analyzer/pull/20272) (first contribution) fix size asserts on `x86_64-unknown-linux-gnux32`.
+- [`#20293`](https://www.github.com/rust-lang/rust-analyzer/pull/20293), [`#20306`](https://www.github.com/rust-lang/rust-analyzer/pull/20306), [`#20307`](https://www.github.com/rust-lang/rust-analyzer/pull/20307), [`#20270`](https://www.github.com/rust-lang/rust-analyzer/pull/20270) migrate `replace_derive_with_manual_impl`, `add_missing_impl_members`, `convert_to_guarded_return`, `extract_expressions_from_format_string` and `generate_new` to `SyntaxEditor`.
+- [`#20269`](https://www.github.com/rust-lang/rust-analyzer/pull/20269) migrate `AstNodeEdit::Indent` to `SyntaxEditor`.
+- [`#20289`](https://www.github.com/rust-lang/rust-analyzer/pull/20289) remove `ExpressionStoreDiagnostics::MacroError`.
+- [`#20278`](https://www.github.com/rust-lang/rust-analyzer/pull/20278) fupport filtering in `analysis-stats` MIR lowering.
+- [`#20280`](https://www.github.com/rust-lang/rust-analyzer/pull/20280), [`#20282`](https://www.github.com/rust-lang/rust-analyzer/pull/20282), [`#20279`](https://www.github.com/rust-lang/rust-analyzer/pull/20279) set up `rustc-josh-sync`.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/07/28/changelog-296.html).
+
+Commit: [`58e507d`](https://www.github.com/rust-lang/rust-analyzer/commit/58e507d80728f6f32c93117668dc4510ba80bac9) \
+Release: [`2025-07-21`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-07-21) (`v0.3.2547`)
+
+## New Features
+
+- [`#19783`](https://www.github.com/rust-lang/rust-analyzer/pull/19783) add "Generate `From` impl from single field" assist.
+- [`#20265`](https://www.github.com/rust-lang/rust-analyzer/pull/20265) support `cfg_select!` for the standard library.
+
+## Fixes
+
+- [`#20238`](https://www.github.com/rust-lang/rust-analyzer/pull/20238) infer lifetimes for GATs in expression/pattern positions.
+- [`#19917`](https://www.github.com/rust-lang/rust-analyzer/pull/19917) handle `AsRef` and `Borrow` in "Generate `IndexMut` impl from ``Index``".
+- [`#20247`](https://www.github.com/rust-lang/rust-analyzer/pull/20247) transform tail expression `&` to `&mut` in "Generate `TraitMut` impl from ``Trait``".
+- [`#20255`](https://www.github.com/rust-lang/rust-analyzer/pull/20255) fix bounds in "Generate `Deref` impl".
+
+## Internal Improvements
+
+- [`#20233`](https://www.github.com/rust-lang/rust-analyzer/pull/20233) (first contribution) expand `lsp-server` example.
+- [`#20178`](https://www.github.com/rust-lang/rust-analyzer/pull/20178) clean up cargo config querying.
+- [`#20234`](https://www.github.com/rust-lang/rust-analyzer/pull/20234) remove `{ConstParam,TypeParam}::remove_default`.
+- [`#20246`](https://www.github.com/rust-lang/rust-analyzer/pull/20246) add `AsMut` to `minicore` prelude.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/07/21/changelog-295.html).
+
+Commit: [`591e3b7`](https://www.github.com/rust-lang/rust-analyzer/commit/591e3b7624be97e4443ea7b5542c191311aa141d) \
+Release: [`2025-07-14`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-07-14) (`v0.3.2539`)
+
+## New Features
+
+- [`#20054`](https://www.github.com/rust-lang/rust-analyzer/pull/20054) support folding multi-line parameter list with the function body:
+
+ 
+- [`#20185`](https://www.github.com/rust-lang/rust-analyzer/pull/20185) include enum variants in world symbols.
+- [`#20109`](https://www.github.com/rust-lang/rust-analyzer/pull/20109) make `generate_new` work for tuple structs.
+
+## Fixes
+
+- [`#20192`](https://www.github.com/rust-lang/rust-analyzer/pull/20192) fix a panic in documentation rendering.
+- [`#20180`](https://www.github.com/rust-lang/rust-analyzer/pull/20180) always bump in the parser in `err_and_bump`.
+- [`#20200`](https://www.github.com/rust-lang/rust-analyzer/pull/20200) revert "re-enable fixpoint iteration for variance computation".
+- [`#20212`](https://www.github.com/rust-lang/rust-analyzer/pull/20212) fix `dyn` inlay hints with parantheses and don't display them on HRTBs.
+- [`#20210`](https://www.github.com/rust-lang/rust-analyzer/pull/20210) make `naked_asm!` safe to call and fix `global_asm!`.
+- [`#20232`](https://www.github.com/rust-lang/rust-analyzer/pull/20232) normalize projection types before const eval.
+- [`#20235`](https://www.github.com/rust-lang/rust-analyzer/pull/20235) fix `where` clause position in trait associated item completion.
+
+## Internal Improvements
+
+- [`#20219`](https://www.github.com/rust-lang/rust-analyzer/pull/20219) outline parts of `ExpressionStore` into a different allocation.
+- [`#20198`](https://www.github.com/rust-lang/rust-analyzer/pull/20198), [`#20211`](https://www.github.com/rust-lang/rust-analyzer/pull/20211), [`#20218`](https://www.github.com/rust-lang/rust-analyzer/pull/20218) migrate `pull_assignment_up`, `convert_named_struct_to_tuple_struct`, `convert_match_to_let_else`, `generate_impl` and `remove_dbg` assists to `SyntaxEditor`.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/07/14/changelog-294.html).
+
+Commit: [`e429bac`](https://www.github.com/rust-lang/rust-analyzer/commit/e429bac8793c24a99b643c4813ece813901c8c79) \
+Release: [`2025-07-09`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-07-09) (`v0.3.2533`)
+
+## New Features
+
+- [`#20185`](https://www.github.com/rust-lang/rust-analyzer/pull/20185) include enum variants in world symbols.
+
+## Fixes
+
+- [`#20192`](https://www.github.com/rust-lang/rust-analyzer/pull/20192) fix a panic in documentation rendering.
+- [`#20180`](https://www.github.com/rust-lang/rust-analyzer/pull/20180) always bump in the parser in `err_and_bump`.
+- [`#20200`](https://www.github.com/rust-lang/rust-analyzer/pull/20200) revert "re-enable fixpoint iteration for variance computation".
+
+## Internal Improvements
+
+- [`#20198`](https://www.github.com/rust-lang/rust-analyzer/pull/20198) migrate `pull_assignment_up` assist to `SyntaxEditor`.
+
+Commit: [`0ac6559`](https://www.github.com/rust-lang/rust-analyzer/commit/0ac65592a833bf40238831dd10e15283d63c46d5) \
+Release: [`2025-07-07`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-07-07) (`v0.3.2527`)
+
+## New Features
+
+## Fixes
+
+- [`#20151`](https://www.github.com/rust-lang/rust-analyzer/pull/20151) only remove keyword prefixes (`macro@` or ``macro ``) from links in the docs if the target is inferred.
+- [`#20158`](https://www.github.com/rust-lang/rust-analyzer/pull/20158) don't warn about the proc macro server when the sysroot is missing.
+- [`#20160`](https://www.github.com/rust-lang/rust-analyzer/pull/20160) reduce diagnostic range for `macro_calls!`.
+- [`#20120`](https://www.github.com/rust-lang/rust-analyzer/pull/20120) fix value resolution in `match` patterns.
+- [`#20161`](https://www.github.com/rust-lang/rust-analyzer/pull/20161) fix closure capture analysis for `let` expressions.
+- [`#20167`](https://www.github.com/rust-lang/rust-analyzer/pull/20167) improve `#[derive(Default)]` expansion.
+- [`#20031`](https://www.github.com/rust-lang/rust-analyzer/pull/20031) respect length limit and improve adjustment hint tooltips.
+- [`#20179`](https://www.github.com/rust-lang/rust-analyzer/pull/20179) handle divergence in destructuring assignments.
+- [`#20159`](https://www.github.com/rust-lang/rust-analyzer/pull/20159) always couple `--compile-time-deps` with `--all-targets`.
+- [`#20170`](https://www.github.com/rust-lang/rust-analyzer/pull/20170) improve flycheck and build script progress reporting.
+- [`#20112`](https://www.github.com/rust-lang/rust-analyzer/pull/20112) add workaround for missing `Delimiter::None` support to built-in macros.
+- [`#20126`](https://www.github.com/rust-lang/rust-analyzer/pull/20126) improve panic message on discover command spawning errors.
+- [`#20148`](https://www.github.com/rust-lang/rust-analyzer/pull/20148) honor `rust-analyzer.cargo.noDeps` option when fetching sysroot metadata.
+
+## Internal Improvements
+
+- [`#20175`](https://www.github.com/rust-lang/rust-analyzer/pull/20175) (first contribution) remove special handling for box patterns in `match_check`.
+- [`#20124`](https://www.github.com/rust-lang/rust-analyzer/pull/20124) remove last use of `rustc_pattern_analysis::Captures`.
+- [`#20156`](https://www.github.com/rust-lang/rust-analyzer/pull/20156) restructure proc macro loading erros.
+- [`#20157`](https://www.github.com/rust-lang/rust-analyzer/pull/20157) re-enable fixpoint iteration for variance computation.
+- [`#20184`](https://www.github.com/rust-lang/rust-analyzer/pull/20184) remove dead field from `InferenceContext`.
+- [`#20169`](https://www.github.com/rust-lang/rust-analyzer/pull/20169) skip unnecessary ``BodySourceMap``'s `eq`.
+- [`#20134`](https://www.github.com/rust-lang/rust-analyzer/pull/20134), [`#20135`](https://www.github.com/rust-lang/rust-analyzer/pull/20135), [`#20136`](https://www.github.com/rust-lang/rust-analyzer/pull/20136), [`#20137`](https://www.github.com/rust-lang/rust-analyzer/pull/20137), [`#20165`](https://www.github.com/rust-lang/rust-analyzer/pull/20165) migrate `replace_is_method_with_if_let_method`, `promote_local_to_const`, `toggle_macro_delimiter`, `wrap_unwrap_cfg_attr` and `unmerge_match_arm` assists to `SyntaxEditor`.
+- [`#20132`](https://www.github.com/rust-lang/rust-analyzer/pull/20132) add `AsMut`, `Borrow` and `BorrowMut` to `minicore`.
+- [`#20144`](https://www.github.com/rust-lang/rust-analyzer/pull/20144) add `load_workspace_into_db` version of `load_workspace`.
+- [`#19923`](https://www.github.com/rust-lang/rust-analyzer/pull/19923) bump `salsa`.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/07/07/changelog-293.html).
+
+Commit: [`6df1213`](https://www.github.com/rust-lang/rust-analyzer/commit/6df12139bccaaeecf6a34789e0ca799d1fe99c53) \
+Release: [`2025-06-30`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-06-30) (`v0.3.2519`)
+
+## New Features
+
+- [`#20077`](https://www.github.com/rust-lang/rust-analyzer/pull/20077) (first contribution) take an optional `"args": "cursor"` in the VS Code "Run" command.
+- [`#19546`](https://www.github.com/rust-lang/rust-analyzer/pull/19546) highlight return values as related to `match` / `if` / `=>`.
+- [`#20100`](https://www.github.com/rust-lang/rust-analyzer/pull/20100) lower `PointeeSized` to `?Sized` to support the new `Sized` trait hierarchy.
+- [`#20105`](https://www.github.com/rust-lang/rust-analyzer/pull/20105) parse new `[const] Trait` syntax.
+
+## Fixes
+
+- [`#20110`](https://www.github.com/rust-lang/rust-analyzer/pull/20110) don't show float completions on integer literals.
+- [`#20096`](https://www.github.com/rust-lang/rust-analyzer/pull/20096) don't show notifications on failed `rustfmt` calls.
+- [`#20121`](https://www.github.com/rust-lang/rust-analyzer/pull/20121) don't append `--compile-time-deps` to build script commands.
+- [`#20073`](https://www.github.com/rust-lang/rust-analyzer/pull/20073) use `ROOT` hygiene for `args` in the new `format_args!` expansion.
+- [`#20069`](https://www.github.com/rust-lang/rust-analyzer/pull/20069) fix cargo project manifest not pointing to the workspace root.
+- [`#20072`](https://www.github.com/rust-lang/rust-analyzer/pull/20072) respect configured `build.target-dir`.
+- [`#20061`](https://www.github.com/rust-lang/rust-analyzer/pull/20061) don't wrap exit points with the right type in "Wrap return type".
+- [`#20103`](https://www.github.com/rust-lang/rust-analyzer/pull/20103) prettify AST in `PathTransform` if it's coming from a macro.
+- [`#20080`](https://www.github.com/rust-lang/rust-analyzer/pull/20080) clean up and expand `folding_ranges`.
+- [`#20092`](https://www.github.com/rust-lang/rust-analyzer/pull/20092) don't complain about `rustc` workspace loading if it's not required.
+- [`#20036`](https://www.github.com/rust-lang/rust-analyzer/pull/20036) don't default to `'static` for trait object lifetimes.
+
+## Internal Improvements
+
+- [`#20012`](https://www.github.com/rust-lang/rust-analyzer/pull/20012) (first contribution) bump `literal-escaper`.
+- [`#20088`](https://www.github.com/rust-lang/rust-analyzer/pull/20088) de-`Arc` trait items query.
+- [`#20087`](https://www.github.com/rust-lang/rust-analyzer/pull/20087) short-circuit a couple of queries.
+- [`#20106`](https://www.github.com/rust-lang/rust-analyzer/pull/20106) make the `VariantFields` query more idiomatic.
+- [`#20098`](https://www.github.com/rust-lang/rust-analyzer/pull/20098) unify formatting of progress messages.
+- [`#20104`](https://www.github.com/rust-lang/rust-analyzer/pull/20104) clean up `provideCodeActions` VS Code hook.
+- [`#20116`](https://www.github.com/rust-lang/rust-analyzer/pull/20116) cancel CI workflow only after the main matrix has finished.
+- [`#20084`](https://www.github.com/rust-lang/rust-analyzer/pull/20084) fix CI job cancellation on Windows.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/06/30/changelog-292.html).
+
+Commit: [`0100bc7`](https://www.github.com/rust-lang/rust-analyzer/commit/0100bc737358e56f5dc2fc7d3c15b8a69cefb56b) \
+Release: [`2025-06-23`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-06-23) (`v0.3.2509`)
+
+## New Features
+
+- [`#19939`](https://www.github.com/rust-lang/rust-analyzer/pull/19939) add `rust-analyzer.assist.preferSelf` to prefer `Self` instead of the enum name in assists.
+- [`#20047`](https://www.github.com/rust-lang/rust-analyzer/pull/20047) use `cargo check --compile-time-deps` when available.
+- [`#20020`](https://www.github.com/rust-lang/rust-analyzer/pull/20020) reload workspaces when `cargo` config changes.
+- [`#20018`](https://www.github.com/rust-lang/rust-analyzer/pull/20018) copy lockfile into target directory before invoking `cargo metadata`.
+- [`#20056`](https://www.github.com/rust-lang/rust-analyzer/pull/20056) support the new `format_args!` expansion in 1.89.
+- [`#20014`](https://www.github.com/rust-lang/rust-analyzer/pull/20014) show what `cargo metadata` is doing.
+
+## Fixes
+
+- [`#19945`](https://www.github.com/rust-lang/rust-analyzer/pull/19945) add quickfix to the `private-field` diagnostic.
+- [`#20025`](https://www.github.com/rust-lang/rust-analyzer/pull/20025) (first contribution) hide imported private methods if "private editable" is disabled.
+- [`#20041`](https://www.github.com/rust-lang/rust-analyzer/pull/20041) revert "turn `BlockId` into a ``#[salsa::tracked]``".
+- [`#20022`](https://www.github.com/rust-lang/rust-analyzer/pull/20022) never make type mismatch diagnostic stable, even when there is a fix.
+- [`#20023`](https://www.github.com/rust-lang/rust-analyzer/pull/20023) improve completions in `if` / `while` expression conditions.
+- [`#20039`](https://www.github.com/rust-lang/rust-analyzer/pull/20039) fix closure capturing in `let` expressions.
+- [`#20035`](https://www.github.com/rust-lang/rust-analyzer/pull/20035) pass `--color=always` from Test Explorer.
+
+## Internal Improvements
+
+- [`#19495`](https://www.github.com/rust-lang/rust-analyzer/pull/19495) start infesting `ide` crates with a `'db` lifetime.
+- [`#20046`](https://www.github.com/rust-lang/rust-analyzer/pull/20046) add `hir::TypeParam::parent` method.
+- [`#20050`](https://www.github.com/rust-lang/rust-analyzer/pull/20050) improve documentation for excluding imports from symbol search.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/06/23/changelog-291.html).
+
+Commit: [`a207299`](https://www.github.com/rust-lang/rust-analyzer/commit/a207299344bf7797e4253c3f6130313e33c2ba6f) \
+Release: [`2025-06-16`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-06-16) (`v0.3.2500`)
+
+## New Features
+
+- [`#19996`](https://www.github.com/rust-lang/rust-analyzer/pull/19996) add support for excluding imports from symbol search.
+- [`#19837`](https://www.github.com/rust-lang/rust-analyzer/pull/19837), [`#19985`](https://www.github.com/rust-lang/rust-analyzer/pull/19985) provide better incrementality when items are changed.
+
+## Fixes
+
+- [`#19963`](https://www.github.com/rust-lang/rust-analyzer/pull/19963) do not report errors for unsized types without `where Self: Sized` items.
+- [`#19970`](https://www.github.com/rust-lang/rust-analyzer/pull/19970) fix proc macro server handling of strings with minuses.
+- [`#19973`](https://www.github.com/rust-lang/rust-analyzer/pull/19973) hide `dyn` inlay hints for incomplete ``impl``s.
+- [`#19942`](https://www.github.com/rust-lang/rust-analyzer/pull/19942) fix completions with some attribute macros.
+- [`#19981`](https://www.github.com/rust-lang/rust-analyzer/pull/19981) do not force-descend into derives for goto IDE features.
+- [`#19983`](https://www.github.com/rust-lang/rust-analyzer/pull/19983) fix comparison of proc macros.
+- [`#20000`](https://www.github.com/rust-lang/rust-analyzer/pull/20000) allow lifetime repeats in macros (`$($x)'a*`).
+- [`#19990`](https://www.github.com/rust-lang/rust-analyzer/pull/19990) generate annotations for macro-defined items if their name is in the input.
+
+## Internal Improvements
+
+- [`#19982`](https://www.github.com/rust-lang/rust-analyzer/pull/19982), [`#19991`](https://www.github.com/rust-lang/rust-analyzer/pull/19991) simplify and optimize `ItemTree`.
+- [`#20009`](https://www.github.com/rust-lang/rust-analyzer/pull/20009) optimize `pub(crate)` and `pub(self)` visibility resolution.
+- [`#20007`](https://www.github.com/rust-lang/rust-analyzer/pull/20007), [`#20008`](https://www.github.com/rust-lang/rust-analyzer/pull/20008) make `salsa` usage more idiomatic.
+- [`#19995`](https://www.github.com/rust-lang/rust-analyzer/pull/19995) turn `BlockId` into a `#[salsa::tracked]`.
+- [`#20006`](https://www.github.com/rust-lang/rust-analyzer/pull/20006) clean up incremental tests and verify query execution.
+- [`#19997`](https://www.github.com/rust-lang/rust-analyzer/pull/19997) remove `InternedCallableDefId`.
+- [`#19980`](https://www.github.com/rust-lang/rust-analyzer/pull/19980) de-duplicate`ItemTree` `ItemVisibilities`.
+- [`#19992`](https://www.github.com/rust-lang/rust-analyzer/pull/19992) use `ThinVec` in `ItemScope` in a couple places.
+- [`#19984`](https://www.github.com/rust-lang/rust-analyzer/pull/19984) remove `pref_align_of` intrinsic handling, rename `{min_=>}align_of{,_val}`.
+- [`#19930`](https://www.github.com/rust-lang/rust-analyzer/pull/19930) add support for type-erased `Semantics<'db, dyn HirDatabase>`.
+- [`#19975`](https://www.github.com/rust-lang/rust-analyzer/pull/19975) test incremental trait solving.
+- [`#19989`](https://www.github.com/rust-lang/rust-analyzer/pull/19989) bump some deps.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/06/16/changelog-290.html).
+
+Commit: [`9fc1b90`](https://www.github.com/rust-lang/rust-analyzer/commit/9fc1b9076cf49c7f54497df9cfa4485a63f14d3e) \
+Release: [`2025-06-09`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-06-09) (`v0.3.2490`)
+
+## New Features
+
+- [`#19893`](https://www.github.com/rust-lang/rust-analyzer/pull/19893) enhance renaming to include identifier variations that are generated by macros.
+- [`#19908`](https://www.github.com/rust-lang/rust-analyzer/pull/19908) implement completions for `#[diagnostics]`.
+- [`#19922`](https://www.github.com/rust-lang/rust-analyzer/pull/19922) ddd `dyn` keyword inlay hints.
+
+## Fixes
+
+- [`#19901`](https://www.github.com/rust-lang/rust-analyzer/pull/19901) (first contribution) increase the range of the tuple to named struct assists.
+- [`#19869`](https://www.github.com/rust-lang/rust-analyzer/pull/19869) (first contribution) add diagnostic and quickfix to make private struct fields public.
+- [`#19894`](https://www.github.com/rust-lang/rust-analyzer/pull/19894) handle cycles in `infer` and `const_param_ty_with_diagnostics`.
+- [`#19935`](https://www.github.com/rust-lang/rust-analyzer/pull/19935) always emit quickfixes, even when diagnostics are disabled.
+- [`#19936`](https://www.github.com/rust-lang/rust-analyzer/pull/19936), [`#19949`](https://www.github.com/rust-lang/rust-analyzer/pull/19949) stabilize the unlinked file and "JSON is not Rust" diagnostics.
+- [`#19932`](https://www.github.com/rust-lang/rust-analyzer/pull/19932), [`#19937`](https://www.github.com/rust-lang/rust-analyzer/pull/19937) record macro calls in signatures and fields in `ChildBySource` impls.
+
+## Internal Improvements
+
+- [`#19933`](https://www.github.com/rust-lang/rust-analyzer/pull/19933) improve parser recovery for macro calls in type bound position.
+- [`#19897`](https://www.github.com/rust-lang/rust-analyzer/pull/19897) produce `CLOSURE_BINDER` nodes.
+- [`#19905`](https://www.github.com/rust-lang/rust-analyzer/pull/19905) clean up macro descension.
+- [`#19928`](https://www.github.com/rust-lang/rust-analyzer/pull/19928) deduplicate some code in proc macro server.
+- [`#19914`](https://www.github.com/rust-lang/rust-analyzer/pull/19914) add incremental tests checking for `infer` invalidation.
+- [`#19915`](https://www.github.com/rust-lang/rust-analyzer/pull/19915), [`#19919`](https://www.github.com/rust-lang/rust-analyzer/pull/19919), [`#19920`](https://www.github.com/rust-lang/rust-analyzer/pull/19920), [`#19921`](https://www.github.com/rust-lang/rust-analyzer/pull/19921) try to fix autopublishing workflow.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/06/09/changelog-289.html).
+
+Commit: [`2a388d1`](https://www.github.com/rust-lang/rust-analyzer/commit/2a388d1103450d814a84eda98efe89c01b158343) \
+Release: [`2025-06-02`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-06-02) (`v0.3.2482`)
+
+## New Features
+
+- [`#19876`](https://www.github.com/rust-lang/rust-analyzer/pull/19876) render padding information when hovering on structs.
+- [`#19881`](https://www.github.com/rust-lang/rust-analyzer/pull/19881) add assist to desugar `let pat = expr?;` into `let else`.
+- [`#19819`](https://www.github.com/rust-lang/rust-analyzer/pull/19819) change import prefix default to `crate`.
+- [`#19890`](https://www.github.com/rust-lang/rust-analyzer/pull/19890) make import insertion `#[cfg]`-aware.
+
+## Fixes
+
+- [`#19879`](https://www.github.com/rust-lang/rust-analyzer/pull/19879) fix IDE layer not resolving some macro calls.
+- [`#19880`](https://www.github.com/rust-lang/rust-analyzer/pull/19880) handle included files better at the IDE layer.
+- [`#19872`](https://www.github.com/rust-lang/rust-analyzer/pull/19872) fix inference of `AsyncFn` return types.
+- [`#19864`](https://www.github.com/rust-lang/rust-analyzer/pull/19864) properly implement `might_be_inside_macro_call` using semantic information instead of syntactical hacks.
+- [`#19851`](https://www.github.com/rust-lang/rust-analyzer/pull/19851) normalize when checking for uninhabited types for pattern exhaustiveness checks.
+- [`#19875`](https://www.github.com/rust-lang/rust-analyzer/pull/19875) skip pattern analysis on type mismatches.
+- [`#19899`](https://www.github.com/rust-lang/rust-analyzer/pull/19899) account for "Generate" actions when filtering the allowed ones.
+- [`#19785`](https://www.github.com/rust-lang/rust-analyzer/pull/19785), [`#19792`](https://www.github.com/rust-lang/rust-analyzer/pull/19792) keep indent in `generate_new` and `generate_mut_trait`.
+- [`#19900`](https://www.github.com/rust-lang/rust-analyzer/pull/19900) generate diagnostics docs for the manual.
+
+## Internal Improvements
+
+- [`#19877`](https://www.github.com/rust-lang/rust-analyzer/pull/19877) (first contribution) remove support for `concat_idents!`.
+- [`#19861`](https://www.github.com/rust-lang/rust-analyzer/pull/19861) (first contribution) add documentation for `find_all_refs` constructor search.
+- [`#19896`](https://www.github.com/rust-lang/rust-analyzer/pull/19896) restructure some semantics APIs for virtual macro files.
+- [`#19898`](https://www.github.com/rust-lang/rust-analyzer/pull/19898) remove unncessary duplication in `highlight_related`.
+- [`#19888`](https://www.github.com/rust-lang/rust-analyzer/pull/19888) recognize salsa cycles in `thread_result_to_response`.
+- [`#19850`](https://www.github.com/rust-lang/rust-analyzer/pull/19850) add support for type-erased `Semantics<'db, dyn HirDatabase>`.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/06/02/changelog-288.html).
+
+Commit: [`d2f1787`](https://www.github.com/rust-lang/rust-analyzer/commit/d2f17873ff19786a121fb3302f91779c1a1b957f) \
+Release: [`2025-05-26`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-05-26) (`v0.3.2474`)
+
+## Fixes
+
+- [`#19839`](https://www.github.com/rust-lang/rust-analyzer/pull/19839) correctly set the span of the proc_macro crate's `Group` delimiters.
+- [`#19824`](https://www.github.com/rust-lang/rust-analyzer/pull/19824) fix caching problems with lint levels.
+
+## Internal Improvements
+
+- [`#19757`](https://www.github.com/rust-lang/rust-analyzer/pull/19757) request cancellation while processing changed files.
+- [`#19814`](https://www.github.com/rust-lang/rust-analyzer/pull/19814) debounce workspace fetching for workspace structure changes.
+- [`#19809`](https://www.github.com/rust-lang/rust-analyzer/pull/19809) catch inference panics in `analysis-stats`.
+- [`#19840`](https://www.github.com/rust-lang/rust-analyzer/pull/19840) fix `integrated_benchmarks`.
+- [`#19853`](https://www.github.com/rust-lang/rust-analyzer/pull/19853) bump `salsa`.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/05/26/changelog-287.html).
+
+Commit: [`e464ff8`](https://www.github.com/rust-lang/rust-analyzer/commit/e464ff8c755c6e12540a45b83274ec4de4829191) \
+Release: [`2025-05-19`](https://www.github.com/rust-lang/rust-analyzer/releases/2025-05-19) (`v0.3.2466`)
+
+## Fixes
+
+- [`#19793`](https://www.github.com/rust-lang/rust-analyzer/pull/19793) keep derive macros when removing unused imports.
+- [`#19687`](https://www.github.com/rust-lang/rust-analyzer/pull/19687) highlight unsafe operations as related when the caret is on `unsafe`.
+- [`#19801`](https://www.github.com/rust-lang/rust-analyzer/pull/19801) improve `asm!` support.
+- [`#19794`](https://www.github.com/rust-lang/rust-analyzer/pull/19794) don't allow duplicate crates in the `all_crates` list.
+- [`#19807`](https://www.github.com/rust-lang/rust-analyzer/pull/19807) don't override `RUSTUP_TOOLCHAIN` if it is already set.
+
+## Internal Improvements
+
+- [`#19796`](https://www.github.com/rust-lang/rust-analyzer/pull/19796) (first contribution) bump some dependencies for Cygwin support.
+- [`#19808`](https://www.github.com/rust-lang/rust-analyzer/pull/19808) run metrics on the beta channel.
+
+See also the [changelog post](https://rust-analyzer.github.io/thisweek/2025/05/19/changelog-286.html).
+
+