github rust-lang/rust-analyzer 2025-12-29

4 hours ago

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.

See also the changelog post.

Don't miss a new rust-analyzer release

NewReleases is sending notifications on new releases.