Changelog #22

Commit: 7a9ba16
Release: 2020-04-27

New Features

  • #4065, #4128 complete unqualifed enum variants

    80367186 ecec6080 888a 11ea 8968 37f93424106a
  • #4105 code completion for attributes.

  • #3954 we now pre-select completion variant if it matches the expected type.

  • #4006 syntax highlighting for format strings

    80368064 6e90be00 888c 11ea 9395 85d6c3371000
  • #4069, #4070, #4158 improve documentation.

  • #4098 add setup instructions for YouCompleteMe.

  • #4082 implement rust-analyzer --help.

  • #4090 fix naming of two config options:

    • featureFlags.lsp.diagnosticsdiagnostics.enable (enables native rust-analyzer diagnostics)

    • procMacro.enabledprocMacro.enable (enables support for procedural macros)

  • #4092 allow running #[ignore] tests.

  • #4107 custom onEnter command is disabled by default. To re-enable it, use the following config:

    1
    2
    3
    4
    5
    
    {
        "key": "Enter",
        "command": "rust-analyzer.onEnter",
        "when": "editorTextFocus && !suggestWidgetVisible && editorLangId == rust"
    },
    
  • #4111 support for extern "C" {} blocks.

  • #3998 Add Function assist can now add functions in other files.

  • #4133 eagerly prime caches to reduce startup latency in certain vim setups.

  • #4137 prefer core/alloc paths on #![no_std].

  • #4136 support #[cfg] on expressions.

  • #4154 add cargo test to the list of Run commands.

Fixes

  • #4096 fix default tasks.json generation.

  • #4057 fix panic in split_imports assist.

  • #4076 fix handing of derive attributes for macros.

  • #4078 do not add default and closure types in 'add explicit type' assist.

  • #4106 fix panic in type inference.

  • #4116, #4117 honor client’s snippet capability.

  • #4113 honor hierarchical document symbols client capability.

  • #4126 don’t omit methods with self from path completion.

  • #4127 more helpful diagnostic message if PATH doesn’t contain cargo (this PR also broke everything)

  • #4129 unbreak everything.

  • #4134 fix panic on empty doc comment.

  • #4139 fix infinite macro loop on an empty repetition.

  • #4146 completion doesn’t add () when completiing high-order function argument.

Internal Improvements

  • #4060 update chalk, the new version uses more caching and should be faster.

  • #4061, #4066, #4101 cleanups of proc macro infrastructure.

  • #4094 show stderr from proc macro server.

  • #4038 when generating code for AST, move boring impl out of the way.

  • #4080, #4081 improve Show Syntax Tree internal action.

  • #4099, #4108 hide implementation details of "pointer" to a syntax tree node.

  • #4131 switch to text-size crate for representing text offsets and ranges.

  • #4135 rename StructFieldField everywhere.