IntelliJ Rust Changelog #159
New Features
- #7914, #8029 Use info calculated by new name resolution engine for
Import
quick-fix and completion of out-of-scope items. It brings:- Better processing of complex re-exports, including proper visibility handling
- Significant performance improvement
-
Auto-import for macros
-
#7898 Provide completion of the
rust-version
field in the[package]
table of theCargo.toml
manifest (by @HTG-YT) - #7928 Enable
Unresolved reference
inspection for attribute macros iforg.rust.macros.proc
experimental feature is enabled
Performance Improvements
-
#7944 Slightly optimize
Find usages
for public items in binary crates -
#7936 Slightly optimize memory consumption of name resolution internal structures
Fixes
-
#8033 Fix name resolution of explicit type-qualified associated types in type aliases (like
type Alias<T> = <T as Trait>::Item;
). Particularly, this fixes type inference inhecs
library -
#8025 Fix type inference for breaks out of the loop nested within expression blocks (by @afetisov)
-
#8022 Fix expansion of procedural macros that contain
_
in the macro body -
#8006 Simplify negation of boolean literal (e.g. in
Invert if condition
intention) -
#8004 Allow deeper path nesting in parser. This fixes deep nested type qualifiers and fixes code insight in projects like
diesel
-
#7993 Don’t try to detect procedural macros in stdlib to avoid attempts to expand unstable built-in attributes
-
#7989 Highlight errors in single string literal argument of
panic!
macro according new rules in 2021 edition -
#7987 Take into account type aliases in
Add safe cast
quick fix -
#7963 Fix parsing of const generic arguments and defaults
-
#7933 Show the
Import
quick fix higher in intention list (by @Kobzol)
Full set of changes can be found here