New Features

  • #5514 Support 2020.2 EAPs

  • #5496 Enable new macro expansion engine in nightly builds

  • #4460 Provide initial version of Inline method (Ctrl+Alt+N) refactoring. Note, actual arguments are not inlined properly so far (by @SaarYogev & @sohich)

  • #5430 Add completion of existing file paths inside path-like string literals in function arguments (by @Kobzol)

  • #5490 Provide quick-fix to attach a file to module tree for File is not included in module tree inspection (by @Kobzol)

  • #5495 Add .some, .ok, .err postfix templates for Result and Option wrapping (by @panstromek)

  • #5481 Show E0601 error if the main function doesn’t exist in binary crates and provide quick-fix to add the function (by @Stzx)

  • #5416 Handle doc comments when uncommenting (Ctrl+/). Commenter can be configured using code style settings located in Preferences | Editor | Code Style | Rust (by @Kobzol)

  • #4993 Place the caret near a type when navigating to an impl item

  • #5486 Add --ignored to command line when launching tests marked with #[ignore]. Now Cargo actually run them (by @Kobzol)

  • #5472 Sort packages and targets alphabetically in Cargo tool window (by @Kobzol)

Performance Improvements

  • #5423 Significantly speed up macro expansion phase for new macro expansion engine

  • #5501 Fix UI freezes caused by chain method hints


  • #5521 Add unsafe to function quick-fix now works inside loops and conditions (by @Kobzol)

  • #5493 Fix parsing crate at the beginning of macro call as visibility modifier

  • #5392 Fix false-positive Argument never used annotation when using raw format strings in macro calls (by @Kobzol)

  • #5489 Fix run icon displaying when main function is declared in a nested method (by @Stzx)

  • #5504 Fix exception in RsFileTypeOverriderForMacroExpansionFileSystem

Internal Improvements

Full set of changes can be found here