This is the last release which supports IDEA 2018.3. If you want to continue to receive plugin updates, please upgrade your IDE to 2019.1.

New Features

  • Improve postfix await syntax support:
    • #3893 Highlight postfix await as a keyword
    • #3895 Suggest await during the code completion if receiver’s type is impl Future
  • #3833 Introduce Make public quick fix for Item is private error annotation (by @shevtsiv)

  • #3725 Add Add format string argument intention to insert arguments into formating macros like println easier

  • #3920 Add Convert to tuple refactoring to convert tuple struct into block one (by @rrevenantt)

  • Detection of the new compiler errors: E0084, E0118 and E0518 (by @mibac138)

  • #3947 Support dotted keys like a.b.c in Toml plugin (by @mibac138)

  • #3929 Improve Fill match arms intention. Now it supports match ergonomics. Also, it respects imports and doesn’t add enum prefix for imported enum variants. Previously, it worked only for Option and Result enums

  • #3188 Provide line marker to run tests or benches in a module from the module declaration

  • #3509 Implement Reformat Cargo Project with Rustfmt action to reformat whole cargo project with rustfmt. You can launch it via Code | Reformat Cargo Project with Rustfmt or Cargo tool window

  • #3907 Now Run Cargo command action opens Run Anything dialog starting with 2019.2

  • #3876 Support more cases by Match Check inspection

Fixes

  • #3917 Fix freezes during parameter hints rendering and avoid annoying Preparing parameter info... popup while typing

  • Fix Auto import quick fix regression introduced while adding support of paths in 2018 edition. Now it’s correctly suggested in project crates

  • Name resolution fixes:
    • #3913 Process wildcard imports in 2018 edition correctly
    • #3714 Improve name resolution for items declared inside a function body
    • #3932 Correctly resolve method calls to default trait methods for type params
  • Type inference fixes:
    • #3933 Make unification of never (!) type properly
    • #3930 Fix closure type inference with impl Trait Fn* type
  • New macro expansion improvements:
    • #3945 Make macro expansion progress more precise
    • #3967 Fix some exceptions on 2019.2
  • Completion improvements:
  • #3922 Do not show error annotations related to mutability if the plugin failed to infer expression type

  • #3951 Fix false positive error annotation of E0603 error for trait members

  • #3797 Correctly highlight block doc comments without * prefix on each line (by @rrevenantt)

  • #3931 Provide correct access type for struct literals in Find Usages dialog

Internal Improvements

  • #3880 Identify plugin in requests to crates.io during completion in Cargo.toml properly (by @sgrif)