New Features

  • Infer types for try blocks and generators

  • Support Introduce Parameter refactoring gif (by @DaryaShirokova)

  • Provide Make mutable quick fix for Assign to immutable inspection gif

  • Support dbg! macro introduced in rust 1.32. Now all common IDE features work for expressions inside this macro

  • Show type hints for local variables provided by bindings in if let, while let, match and struct destructure patterns

  • Add Put arguments on separate lines and Put arguments on one line intentions gif (by @t-kameyama)

  • Add println postfix template gif (by @SomeoneToIgnore)

  • Initial support of macro 2.0 syntax. Note, all other features like name resolution, completion, etc. are not supported yet

  • Provide lldb formatter for OsString

  • Annotate the yield keyword as experimental

Fixes

  • Correctly show variable values while debugging

  • Fix false positive Use of moved value error annotations: correctly process bindings in if let and while let, and handle noreturn functions

  • More precise type inference for types with complex trait bounds

  • Correctly process impls for impl Trait types while name resolution

  • Take into account super traits defined with where clause while name resolution (by @vlad9486 & @vlad20012)

  • Enable console colors for output on Windows

  • Perform name resolution for associated type paths like Self::Item properly

  • Do not add extra lifetimes by Implement members quick fix (by @SomeoneToIgnore)

  • Fix lldb formatters for Vec, String and other structures for nightly rust builds

  • Fix name resolution of macros imported via wildcard

  • Forbid Unwrap Single Expr intention for async and try blocks

  • Do not show two build actions in CLion 2019.1 toolbar

  • Improve type inference for str type. Now it doesn’t implement the trait Sized (by @kumbayo)

  • Expand macros correctly when vis fragment specifier should be mapped to the empty token

Internal Improvements

  • Introduce lldb pretty-printers test runner

  • Run tests with CLion

  • Drop 2018.2 platform support; compile plugin with 2019.1 EAP sources