This is the last release that supports the 2020.3 IDEs. To receive plugin updates further, please upgrade your IDE to 2021.1.

New Features

  • #7259, #7310 Support 2021.2 EAPs

  • Refactoring improvements:

    • #7135, #7255 Suggested refactoring for changing function signatures (by @Kobzol)

    • #6957 Create target file when moving items (F6 or Refactor | Move) if it doesn’t exist

  • #6825 match postfix template now generates all missing match arms by default (by @Kobzol)

  • #6673 Complete continue and break statements inside expression contexts in loops (by @Kobzol)

  • #7239 Check for missing input file when using redirect input in Cargo command run configuration

  • #7237 Update experimental code completion ranking for Rust based on machine learning. The ranking is disabled by default for now. You can enable it via Editor | General | Code Completion | Machine Learning-Assisted Completion settings.

Fixes

  • Windows Subsystem for Linux (WSL) fixes. It can be enabled using org.rust.wsl experimental feature:

    • #7284 Fix fetching of cfg-options

    • #7268 Fix toolchain validation

  • #7271 Don’t throw exceptions on illegal paths in PATH environment variable during toolchain detection

  • #7253 Add remaining arms intention now prints enum names and variants correctly if they are escaped rust keywords (by @shocoman)

  • #7248 Try to recover corrupted stdlib dependencies when org.rust.cargo.fetch.actual.stdlib.metadata experimental feature is enabled

  • #7244 Don’t annotate async as a reserved keyword in attributes

  • #7236 Change the completion context of path string literals to the containing workspace root (by @Kobzol)

Internal Improvements

  • #7274 Improve cancellation of outdated CI runs

  • #7265 Provide Cargo commands logging when #org.rust.cargo.runconfig is present in Help | Diagnostic Tools | Debug Log Settings

  • #7105 Fix some type annotations in python pretty printers

Full set of changes can be found here