New Features

  • #5704 Now rustfmt can be used instead of built-in formatter. To turn this feature on, enable Use rustfmt instead of built-in formatter option in Preferences | Languages & Frameworks | Rust | Rustfmt settings. Note, only whole file can be formatted with rustfmt for now. If you select some range inside Rust file, it will be formatted with built-in formatter regardless if the option is enabled or not

  • #6152 Support 2020.3 EAPs

  • #6167 Implicit trait objects are deprecated inspection supports lint attributes now. I.e. the inspection takes these attributes into account while highlighting and #[allow(bare_trait_objects)] attribute can be inserted by suppression quick fix

  • #3829 Now Un-elide lifetimes intention supports generic types (by @Kobzol)

Fixes

  • #6113 Properly update debugger binaries after Native Debugging Support plugin update. Note, Native Debugging Support plugin provides debugging support in IntelliJ IDEA Ultimate

  • #6170 Fix Run with Coverage with the latest nightly toolchain

  • #6071 Add missing options of Cargo commands in completion while run configuration editing and in Run Anything (double Ctrl) dialog

  • #6126 Fix exception after variable inlining

  • #5456 Use fully qualified names for types to avoid ambiguity in some cases (by @Kobzol)

  • #6156 Now the plugin tries to find stdlib sources in $(rustc --print sysroot)/lib/rustlib/src/rust directory even if a user doesn’t use rustup

  • #6122 Get rid of Don't reformat child modules option in Preferences | Languages & Frameworks | Rust | Rustfmt settings

  • #6118 Don’t rename src directory while Rename (Shift + F6) refactoring

  • #6127 Fix “Incorrect CachedValue use” exception

  • #6125 Fix exception while initialization of the Cargo tool window

Internal Improvements

  • #6153 Use Java 11 to build and develop the plugin

  • #6071 Provide updateCargoOptions gradle task to update options of Cargo commands automatically. These options are used to provide proper completion while run configuration editing and inside Run Anything (double Ctrl) dialog

Full set of changes can be found here