IntelliJ Rust Changelog #173
New Features
-
#8927 Take into account
#![recursion_limit]
which controls the maximum depth of macro expansions. This fixes some unresolved references when using such crates asasync-std
andtokio
. If you don’t want/need to expand macros to full depth, you can adjustMaximum recursion limit for macro expansion
in Advanced Settings. -
#8934 Add
clippy::all
group to lint compeltion suggestions (by @Kobzol) -
#8900 Remove Old Macro Expansion Engine option
Performance Improvements
- #8955 Reduce memory usage by trait implementation metadata since it’s extensively cached and thus bloat old generation heap space a lot
Fixes
-
#8957 Take into account impls for macro types. For example,
impl foo!() { fn bar(&self) {} }
-
#8952 Complete more methods when auto dereference occurs
-
#8950 Consider methods in impls for a reference (
&Foo
) when the receiver is not a reference type -
#8943 Consider negative impls (e.g.
impl !Sync for T {}
) in type inference
Internal Improvements
-
#8919 Implement a new approach to better detect changes that possibly affect the project model. It’s disabled by default for now.
-
#8926 Increase Kotlin language level to 1.7 and API level to 1.6. So now it’s possible to use all language features added in Kotlin 1.7 and any API from stdlib added in Kotlin 1.6
The full set of changes can be found here