This is the last release that supports the 2019.3 platform. To receive plugin updates further, please upgrade your IDE to 2020.1.

New Features

  • Debugger support outside of CLion:
    • Do not interrupt debugging session if debugger is not loaded. Now, if your debugger is not loaded or should be updated, the corresponding dialog and debugger loading don’t interrupt debugger session and it continues after successful loading. Also, there is option to download/update debugger automatically

  • Add Replace with block/EOL comment intentions (by @Jezza)

  • Highlight never (!) type as exit points (by @Kobzol)

    Never type exit points highlighting

  • Show breadcrumbs for control flow constructions like if, match, loop, etc. You may configure editor breadcrumbs via Preferences | Editor | General | Breadcrumbs settings (by @Stzx)

Performance Improvements

  • Optimize module declaration name resolution
  • Slightly speed up macro expansion

Fixes

  • Add use declarations to Rust REPL commands context. It enables completion of imported names
  • Fix false positive Redundant else error for slice patterns
  • Fix struct field name resolution. Now Go to declaration works for destructured fields when using type alias
  • Fix inlay type hints for type placeholders. Previously, they were wrong in some complex cases
  • Fix control flow analysis of paren expressions. Previously, unclosed paren expression led to IllegalStateException, and there were false-positive move errors on paren expressions inside struct literals
  • Use the proper grammar for path fragments in macro_rules!. Now macro calls with type-like paths (i.e. paths without :: token before <) like foo!(Foo<u32>) are expanded properly (by @mrobakowski)
  • Fix debugging when terminal emulation is enabled

Internal Improvements

  • Improve release actions script

Full set of changes can be found here