Changelog #55

Commit: dbd0cfb
Release: 2020-12-14

Sponsors

Become a sponsor: On OpenCollective or GitHub Sponsors.

New Features

  • #6761, #6776 editor-independent description of configuration format. All server configs are now documented in the manual: https://rust-analyzer.github.io/manual.html#configuration

  • #6769, #6841 Remove this semicolon fix:

    101530533 b76c3180 399a 11eb 9d18 5c8457721655
  • #6731 Replace match With if let assist:

    102076127 88751600 3e07 11eb 8333 ef5a83459cf2
  • #6706 lazily compute text edits for completion. This significantly speeds up completion in certain cases.

  • #6754, #6752, #6807 handle cross-compilation and cfg attributes from build scripts.

  • #6760 Open Cargo.toml now opens Cargo.toml for current package of the workspace.

    102076855 aee78100 3e08 11eb 8e98 777e712e67c4
  • #6771 handle inner attributes.

  • #6790 ask the editor to refresh code lenses when the project structure changes.

  • #6795 support key=value pairs in format!-like macros.

  • #6819 support built-in attributes in name resolution.

  • #6839 type inference for labeled blocks.

  • #6840 add VS Code level language configuration (indent, matching parenthesis, etc).

Fixes

  • #6805 fix accidentally quadratic tree modification code. This speeds up new auto-import completions a lot. See this stream for an interesting discussion about tree editing API.

  • #6813 fix negative literals handling in declarative macros.

  • #6743 fix desugaring of doc attributes.

  • #6751 fix name resolution for builtin macros.

  • #6719 fix attachment of doc comments for modules and use items.

  • #6759 fix rollup build.

  • #6765 fix misplaced diagnostics in macros.

  • #6768 fix concat! with integer literals.

  • #6774 don’t bail to early when expanding erroneous macros.

  • #6796 fix FileId calculation in incorrect case diagnostics.

  • #6798 ignore extern items in incorrect-case check.

  • #6804 raise the size limit for macro-generated files.

  • #6816 complete PartialEq, Eq rather than Eq, PartialEq.

  • #6824 don’t highlight parent nodes of comments on hover.

  • #6845 fix source code generation with only partially substituted generics.

Internal Improvements

  • #6806 improve docs for building from source.

  • #6597 upgrade chalk and make CHALK_OVERFLOW_DEPTH and CHALK_SOLVER_MAX_SIZE configurable via corresponding env variables.

  • #6745 proc macro cleanups.

  • #6750, #6834, #6836 completely move doc comments handling to attributes.

  • #6767 better handling of panicking proc macros.

  • #6766 install from source now supports code-exploration.

  • #6784 add AnchoredPath abstraction to describe file-system paths in Rust files.

  • #6797 document preference for american spelling for code.

  • #6825, #6827, #6828, #6829, #6830 try hard to fix perf collection.

  • #6818 plumbing to support lifetimes in hir.