IntelliJ Rust Changelog #154
New Features
- #7640 Improve external ABI support:
-
Parse any literal in ABI name position (including raw strings) and annotate non-string literals as invalid (in the same way as
rustcdoes)
-
Annotate invalid ABI names and experimental ABIs without the corresponding feature attribute

-
Provide completion for ABI names

-
-
#7682 Detect E0121 in structs and enum variants (by @t-kameyama)

-
#7646 Implement
Expand into separate tableintention to expand an inline TOML table into a full one
-
#7666 Show macro 2.0 items in Structure View (
Ctrl+F12) - #7664 Improve parser recovery for function pointers (by @afetisov)
Performance Improvements
- #7703 Suggest keywords much more quickly during Rust code completion
Fixes
-
#7635, #7676 Take into account type aliases in most of intention actions, quick fixes, and refactorings (by @Kobzol)
-
#7557 Reduce the number of false-positive annotations caused by
Self conventioninspection (by @Kobzol) -
#7692 Do not substitute type alias names for associated types in inlay hints like
Chained method(by @Kobzol) -
#7690 Import types after invoking
Create function,Create structandCreate tuple structintentions (by @Kobzol) -
#7711 Fix some quick-fixes and intentions to make them work with aliased types properly. For example,
Convert to String using `ToString` traitquick-fix now works even when the expected type is an alias forStringtype -
#7638
Surround with unsafeinspection now works identically inside statements and tail expressions -
#7598 Display implied shortcut reference links in quick documentation (by @shocoman)
-
#7582 Don’t show a completion popup automatically when typing a
letbinding identifier starting with a lowercase letter. You still can invoke the completion explicitly (usingCtrl+Space, for example) -
#7668 Do not offer the
Make publicquick-fix on method calls from trait impls (by @Kobzol) -
#7614 Allow removing
Buildstep in Cargo Command configurations
Internal Improvements
- #7711 Introduce
Ty.isEquivalentTo(Ty)forTys comparison. Unlike==, it ignoresaliasedByfield
Full set of changes can be found here