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

New Features

  • #9241 Change the rendering of folded blocks for use, mod, extern crate, and where blocks to make them more distinct from folded block comments (by @afetisov)

  • #9176 Use the –keep-going cargo option when building and evaluating build scripts. This allows building and executing as much as possible even if some build scripts or procedural macros can be compiled or executed succesfully. Previously, it was possible to break analysis of code by some error in unrelated build script or procedural macros. Note, build script evaluation still requires enabling of the org.rust.cargo.evaluate.build.scripts experimental feature

  • #9043 Add Redundant semicolons inspection and quick-fix for it

  • #9242 Complete target_feature, proc_macro, proc_macro_derive, and proc_macro_attribute attributes for functions (by @afetisov)

  • #9271 Mark public re-exports in binary crates as unused by Unused imports inspection. Note that the inspection works only when the procedural macro support is enabled

  • #9317 Complete crates from a workspace in extern crate

  • #9325 Enable build script evaluation in nightly plugin builds for 2022.2 platform

Performance Improvements

  • #9338, #9337, #9334, #9331, #9322 Slightly speed up name resolution and type inference

  • #9211 Speed up name resolution of large nested paths like Foo<Foo<Foo<Foo<...>>>> by resolving and caching them at once. This is particularly helpful in the case of typenum crate

  • #9213 Reduce unnecessary invalidations of caches for dependencies by changes in workspace code

Fixes

  • #9351 Fix Tools | Rust | Share in Playground action

  • #9327 Fix name resolution of an associated type of a type parameter inside a trait bound, in the case where the type parameter is declared on a level other than the bound

  • #9314 Don’t suggest Import quick-fix for associated type bindings

  • #9302 Provide proper names for Undo/Redo actions and records in Local history for changes made by Promote Module to Directory and Downgrade Module to File refactorings (by @afetisov)

  • #9298 Fix Inline function dialog when the number of occurrences is unknown

  • #9297 Don’t show parameters by Inline function refactoring dialog. Otherwise, the dialog looks cluttered, especially in case of large number of arguments

  • #8963 Fix links to error codes in messages provided by external linters

  • #5911 Fix detection of a misplaced derive attribute (E0774) (by @Stzx)

  • #9352 Allow empty precision in formatting parameter of format macros like println (by @KarelPeeters)

Internal Improvements

  • #9296 Remove resolve engine info from the Create new issue action because it’s not possible to use the old resolve engine and the old macro expander anymore

  • #9228 Use ubuntu-latest runners instead of deprecated ubuntu-18.04

Full set of changes can be found here