Changelog #304

Commit: d646b23
Release: 2025-12-01 (v0.3.2702)

New Features

  • #21027 (first contribution) build releases with static CRT for -windows-msvc targets.

  • #21121 add basic support for declarative attribute and derive macros.

  • #20125 display inferred placeholder types inlay hints and use them in "Extract type as type alias".

Fixes

  • #21077 (first contribution) handle more block types and show modifiers in closing brace inlay hints.

  • #21151 don’t run cache priming when disabled.

  • #21095 fix iterator completions after auto-deref.

  • #20937 don’t suggest duplicate const completions after raw.

  • #20976 fix completion after inner attributes.

  • #21144 fix completion after extern and add crate completion.

  • #21028 complete enum aliases in patterns.

  • #21126 fix parameter info with missing arguments.

  • #20163 use per-token, not global, edition in the parser.

  • #20164 pass the per-token, not global, edition when expanding declarative macros.

  • #20217 use root hygiene for speculative resolution.

  • #21170 support multiple enabled features in #[target_feature].

  • #21159, #21172 rewrite dyn Trait lowering to follow rustc.

  • #20685 support multiple variants in generate_enum_{is,projection}_method.

  • #20967 offer replace_method_eager_lazy on and.

  • #21141 set enclosing_range in the SCIP index.

  • #21131 check snippet capabilities in #[cfg(…)] key completion.

  • #21023 fix handling of cloned elements in SyntaxEditor.

  • #21147 show a dropdown in the UI for rust-analyzer.imports.granularity.group.

Internal Improvements

  • #20892 reintroduce attribute rewrite.

  • #21097, #21145, #21146, #21154 reimplement proc macro server token trees as immutable, to speed up concatenation.

  • #20986, #21133, #21135, #21139, #21179 integrate postcard into the proc-macro server.

  • #21149 use a single query per crate for lang items.

  • #21167 shrink InferenceResult by ~40 bytes.

  • #21169 use new salsa API for infer.

  • #21115 bump rustc crates.

  • #21177 fix SmolStr pretty-printing for Repr::Static.