Changelog #87

Commit: 5983d37
Release: 2021-07-26

Sponsors

Become a sponsor: On OpenCollective or GitHub Sponsors.

New Features

  • #9660 (first contribution) hide keyword suggestions in non-trivial paths:

    126478222 54c742bb 2bd3 4e5b b533 f835264604be
    126479635 819127d8 322b 4e34 acd2 194d1e9ba504
  • #9678 add configuration for "highlight related" features:

    126728849 a38b560c b687 42c1 9c41 7584ad718469
  • #9665 only complete ancestors and self in visibility path completions.

  • #9681, #9684 respect #[doc(hidden)] in dot-completion.

  • #9688 resolve derive attribute input macro paths.

Fixes

  • #9634 (first contribution) improve rust-analyzer.files.excludeDirs docs.

  • #9637 overhaul doc_links testing infra and fix several issues.

  • #9646 show use prefix in completion list for auto-imports.

  • #9651 restrict completions inside visibility modifiers.

  • #9662 only import public items from other crates.

  • #9663 don’t offer "Extract variable" when there is no surrounding block.

  • #9674 fix pattern name resolution when the name also exists as a type.

  • #9677 correctly classify renamed imports.

  • #9691 keep catch-all arm in "Fill match arms" if it has a non-empty expression.

Internal Improvements

  • #9453 (first contribution) add Limit struct.

  • #9631 (fisrt contribution) add some metadata to make cargo deb happy.

  • #9641 link to the "Explaining Rust Analyzer" series.

  • #9625 simplify handling of build scripts.

  • #9633 add TreeId to identify ItemTrees.

  • #9635 explain why we avoid serializing everything.

  • #9638 replace some unwraps with types.

  • #9645 make CI logs easier to skim.

  • #9644 add simple smoke test for project model.

  • #9647 remove potentially slow method.

  • #9652 don’t concat path in the "Replace qualified name with use" assist when it starts with a keyword.

  • #9675 move and clean up record completion tests.

  • #9683 move out expression-based unqualified_path completion tests.

  • #9685 add tests for tuple struct field completion and resolve a FIXME.