Changelog #308

Commit: be6975f
Release: 2025-12-29 (v0.3.2735)

New Features

  • #21200 don’t expand built-in derives, treat them specifically instead (saves 180 MB on self).

  • #21337 stabilize type mismatch diagnostic.

  • #20193 add setting to disable showing rename conflicts.

  • #20741 add macro segment completion.

Fixes

  • #21326 keep flycheck generations in sync across multiple workspaces.

  • #21348 re-enable fixpoint variance analysis.

  • #21351 fix parsing of format_args!(…​, keyword=…​).

  • #21358 fix type inference when hovering on _.

  • #21354 fix duplicate default item in record update syntax.

  • #21330 fix indent in convert_to_guarded_return.

  • #20595 fix indent in convert_iter_for_each_to_for.

  • #20521 handle break in expected type analysis.

  • #21359 prompt the user to add the rust-analyzer component to the toolchain file.

  • #21297 fix LSP configuration request handling.

Internal Improvements

  • #21249, #21340, #21345 implement bidirectional proc macro server messaging prototype.

  • #21335 store closures with "tupled" inputs.

  • #21341 move library and local root inputs to base-db.

  • #21344 stop using MIR ProjectionElem in closure analysis.

  • #21349 make token trees no longer generic over the span.

  • #21353 pre-allocate some buffers for parsing.

  • #21355 reduce channel lock contention for drop threads.

  • #21357 drop AstIdMap asynchronously.

  • #21356 collect garbage when quiescient after events.

  • #21334 add cargo-machete CI step.