2

Changelog #78

 2 years ago
source link: https://rust-analyzer.github.io/thisweek/2021/05/24/changelog-78.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Changelog #78

May 24, 2021

New Features

  • #7698, #8877 (first contribution) add new LSP extension for workspace symbol lookup.

  • #8873 implement import granularity guessing.

  • #8948 "Generate getter" assist places the cursor at the generated function.

  • #8953 "Generate getter" avoids generating types like &Vec<T>.

Fixes

  • #8345 (first contribution) add pub mod option to the "Unlinked file" diagnostic fix.

  • #8766 (first contribution) add async if required in "Extract function" assist.

  • #8945 make expected type work in more situations:

    119269023 dd5a5b00 bbf5 11eb 993a b6e122c3b9a6
    119269025 dfbcb500 bbf5 11eb 983c fc415b8428e0
  • #8795 allow semantic tokens for strings to be disabled.

  • #8858 ignore macro imports from extern crate self.

  • #8863 don’t add extra whitespace around fields.

  • #8880 fix module renaming.

  • #8875 avoid false positive "Missing match arm" when an or-pattern has mismatched types.

  • #8884 fix "Add explicit type" producing invalid code on @ patterns.

  • #8893 update outdated auto-import documentation.

  • #8902 fix code completion not inserting borrow text when client supports InsertAndReplace.

  • #8910 don’t hang on unresolved attribute on extern block and its children.

  • #8918 fix hang caused by non-unique attribute IDs.

  • #8901 speed up fill_match_arms on tuples of large enums.

  • #8935 mention rust-tools.nvim for nvim-lsp in the manual.

  • #8936 improve nightly downloads with better local state management.

  • #8940 give unsafe semantic token modifier to unsafe traits.

  • #8947 correctly resolve crate name in use paths when import shadows it.

Internal Improvements

  • #8856, #8921, #8938 use Chalk for unification.

  • #8862 reorganize module structure of fixits.

  • #8871 simplify DefCollector::resolve_macros.

  • #8882, #8887, #8888 resolve attributes in name resolution (minimal version).

  • #8885 greatly simplify eager macro representation.

  • #8889 track in-scope derive helpers during name resolution.

  • #8898 resolve derive helpers.

  • #8900 support #[register_attr] and #[register_tool].

  • #8914 remove StructDefKind.

  • #8916, #8932 implement ItemTree pretty-printing.

  • #8868 replace AstTransformer with mutable syntax trees.

  • #8922, #8923, #8924 add more docs.

  • #8926 drop uncompressed release artifacts and those following the old naming convention.

  • #8954 document ItemTree design.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK