github rust-lang/rust-analyzer 2024-01-22

latest releases: nightly, 2024-11-11, 2024-11-04...
9 months ago

Changelog #217

Commit: d410d4a
Release: 2024-01-22 (v0.3.1815)

New Features

  • #16370 show additional value information when hovering over literals.
  • #16374, #16375 show implemented notable traits on hover.
  • #16391 add config to allow renaming of non-local definitions.
  • #16372 add One import granularity.

Fixes

  • #16349 add error recovery for use_tree_list parsing:

    Screenshot showing only one error for an unclosed brace in a use declaration

  • #16385 fix intra-doc links.

  • #15868 infer OUT_DIR when workspace root contains a symlink.

  • #16396 fix panic when extracting struct from enum variant.

  • #16378 handle SelfParam better in "Inline call".

  • #16405 include for in "Convert to guarded return".

  • #16314 parse macro_rules as macro name.

  • #16367 make value_ty query fallible.

Internal Improvements

  • #15636, #16383 (first contribution) show which roots are being scanned in progress messages.
  • #16196 (first contribution) rename generator to coroutine.
  • #16409 (first contribution) remove some unused code.
  • #16350 speed up line index calculation via NEON for aarch64.
  • #16395 speed up line ending normalization using memchr.
  • #16366 make data queries transparent over their diagnostics variant.
  • #16352, #16389 port rustfmt's algorithm for import ordering.
  • #16351 eagerly lower enum variants in CrateDefMap construction.
  • #16388 record FnAbi.
  • #16356 add unstable config for loading the sysroot sources via cargo metadata.
  • #16380, #16387 run cargo metadata on sysroot for CI metrics.
  • #16384 make use of some new SmolStr improvements.
  • #16397 refactor macro_call to be consistent with other parsers.
  • #16398 automatically fix Clippy lints.
  • #16401 expand lint tables and make Clippy happy.
  • #16404 work through temporarily allowed Clippy lints, part 1.
  • #16406 add max_line_length to .editorconfig.
  • #16364, #16412 sync from downstream.

See also the changelog post.

Don't miss a new rust-analyzer release

NewReleases is sending notifications on new releases.