

IntelliJ Rust Changelog #122
source link: https://intellij-rust.github.io/2020/05/19/changelog-122.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Most of the new features in the release have been added by third-party contributors. Many thanks to @Kobzol for the extraordinary amount of contributions!
You can participate too! Join our open source development on Github .
New Features
- Inlay hints improvements:
-
New inlay hints for chained method calls (by @Kobzol )
-
Show type hints for type placeholders
_
(by @avrong )
- Support blacklisting for inlay parameter hints. You can find these settings in
Settings | Editor | Inlay Hints | Rust | Parameter hints | Blacklist...
(by @Kobzol )
If you don’t like one of our new inlay hints, you can disable it in
Settings | Editor | Inlay Hints | Rust
. -
- Refactorings improvements:
-
Provide
Introduce Constant
refactoring. You can invoke it viaRefactor | Extract | Constant
or Ctrl+Alt+C (by @Kobzol )
-
Improve
Extract Enum Variant
refactoring. Nowderive
andrepr
attributes are copied from the parent enum to the generated struct (by @Kobzol )
- Also,
Extract Enum Variant
is now available fromRefactor | Extract
andRefactor | Refactor This
menus (by @Kobzol )
-
-
Highlight errors in format string literal in macros like
println
,write
,format
, etc. (by @Kobzol )
-
Automatically insert missing
<>
when completing generic types (by @Kobzol )
- Support
include!
macro calls generated by another macro call. Note, full support (name resolution and completion for code from including file in included one and correct module hierarchy recognition, i.e. absence of false positive “File is not included in module tree” editor notification), is available only when the new macro expansion engine is enabled (You can enable it inSettings | Languages & Frameworks | Rust | Expand Declarative macros
).
- Show value of
NonZero*
numbers in the debugger (by @Kobzol )
Performance Improvements
- Slightly optimized macro name resolution and expansion
- Fixes UI freezes during project save if the new macro expansion engine is enabled
- Improved macro expansion task cancellation. Typing in
Cargo.toml
should be smoother. This affects you only if the new macro expansion engine is enabled.
Fixes
- Take into account
extern
keyword byImplement members
quick fix (by @t-kameyama )
-
Fix false-positive
E0603 module is private
if the module is declared multiple times (e.g. inlib.rs
andmain.rs
) -
Go To Super
action ( Ctrl+U ) now allows choosing a module declaration (if multiple)
- Fix
#[cfg()]
attributes support. Ignoreimpl
’s from disabled submodules
- Improve
"complete current statement
( Ctrl+Shift+Enter ) action:;
-
Implement Members
andGenerate Construct
actions now take into account all trait bounds of trait object types
- Omit unchanged default type parameters of parameters by
Extract Function
refactoring (by @Kobzol )
- Fix
Find Usages
action:include!() pub(crate)
- Fix the issue with non-rust directory renaming. Previously, the plugin sometimes broke “Rename” refactoring applied to a directory in non-rust projects.
- Properly do
Invalidate caches & Restart
action
- Fix
Use of moved value
false-positive error
- Do not throw the
exception
while building a project viaBuild
action
- Fix
IndexNotReadyException
while completion during indexing
- Fix possible
java.lang.AssertionError
exception during indexing
- Fetch cargo metadata even with compilation error. Previously, if
org.rust.cargo.evaluate.build.scripts
experimental feature was enabled and there was compilation error, fetching cargo workspace data failed
Internal Improvements
- Improve developer workflows ( read more )
Full set of changes can be found here
Recommend
-
36
This is the last release that supports the 2019.3 platform. To receive plugin updates further, please upgrade your IDE to 2020.1. New Features Debugger support outside of CLion: Do no...
-
22
New Features Support 2020.2 EAPs Enable new macro expansion engine in nightly builds ...
-
43
New Features Provide initial support for debugging with MSVC toolchain in CLion 2020.2. You can track current progress and restrictions
-
26
New Features Support Rust documentation rendering in an editor. Just click to the corresponding icon on gutter to look at rendered version of a particular comment. Also, you can enable it by default v...
-
13
IntelliJ Rust Changelog #137 14 Dec 2020 New Features Support Find Usages action (Edit | Find Usages or Alt+F7) for Cargo
-
16
IntelliJ Rust Changelog #136 30 Nov 2020 New Features Introduce the new experimental engine for name resolution (disabled by default). The new algorithm (aka name resolution 2.0) uses the fixed-...
-
16
IntelliJ Rust Changelog #138 28 Dec 2020 New Features Enable Build tool window by default. The Build tool window provides structured output for build
-
8
New Features Cargo features and cfg support improvements: Take into account attributes under
-
17
Please welcome our new documentation 🥳 It covers almost everything about the plugin, from basic how-to-s to detailed feature descriptions ✍️. And we’...
-
4
Changelog #122 Mar 28, 2022 New Features #11780 add experimental type mismatch diagnostic (can...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK