New Features

  • #4001 Add initial completion inside macro calls

  • #3792 Navigation works inside macro calls now. Note, it works only when the new experimental macro expansion engine is enabled. You can turn it on via Preferences | Languages & Frameworks | Rust | Expand declarative macros option

  • #4002 Support Duplicated code fragment inspection for Rust. The inspection can detect duplicates even with different names of local variables, functions and fields, and values of literals. By default, only anonymization of local variable names is enabled. You may change default settings via Preferences | Editor | Duplicates | Rust. Note, this inspection is available since 2019.2 and not available in free IDEs like IDEA Community or PyCharm Community

  • #4064 Add Create field quick fix for No such field error annotation (by @t-kameyama)

  • #3991 Add Convert to struct and Convert to tuple intentions to invoke the corresponding refactorings via Alt + Enter (by @rrevenantt)

  • #4055 Provide proper navigation from derive arguments and custom attributes to the corresponding definition of procedural macros (by @fedochet)

  • #3946 Add quick fix to create a subdirectory with the corresponding mod.rs for unresolved module declaration (by @mibac138)

  • #4069 Support arbitrary enum discriminants (by @mibac138)

  • #4050 Automatically open lib.rs/main.rs when project is created

  • #4059 Detect E0586 compiler error (by @mibac138)

Fixes

  • #4071 Make Auto Import works correctly when an imported trait is re-exported

  • #4101 Fix occurred exception while invoking Make public fix quick fix for module declarations

  • #4067 Correctly parse macro calls with the same names as stdlib provides

Internal Improvements

  • #4082 Make lexer incremental (by @rrevenantt)

  • #4113 Add Create New Issue action. Now it’s possible to open issue in our tracker right from your IDE. The action automatically collects environment information about IDE, plugin, Rust versions, etc. Also, selected code is added into Steps to reproduce issue section