Changelog #173

Commit: 825833c
Release: 2023-03-20 (v0.3.1443)

New Features

  • #14281 add quick fix for inserting an unsafe block:

  • #13789 prioritize missing variants in match pattern completions:

    Screenshot showing existing enum variants being de-prioritized in a match
  • #14354 add signature help for record and tuple struct patterns:

    Screenshot showing the doc comments and fields of a struct in a pattern
  • #13994 lint incoherent inherent impls:

    Screenshot showing an error on `impl Vec<i32> {}`

Fixes

  • #12958 fix return type of async closures.

  • #14337 allow the status bar item to be clicked again.

  • #14347 add StorageDead for let bindings without initializer (fixes false positive needs-mut in loops).

  • #14348 fix rustc proc-macro handling in the rustc workspace.

  • #14349 respect parent blocks in visibility resolution.

  • #14338 only skip reborrow adjustment hints for block, if and match expressions.

  • #14353 don’t replace SyntaxToken with SyntaxNode in "Inline call".

  • #14355 don’t emit unnecessary reference completions.

  • #14357 don’t pass feature flags to rustc private crates metadata invocation.

  • #14359 don’t retry inlay hint requests.

  • #14361 fix ast::IfExpr child accessors.

Internal Improvements

  • #14307 add Cargo-style project discovery for Buck and Bazel users.

  • #14362 prioritize "Remove dbg!" assist over "Inline macro".

  • #14358 report sysroot and rustc crate loading errors.

  • #14334, #14336 add is_float, is_char and as_slice to hir::Type.

  • #14378 bump chalk to fix a GAT bug.

  • #14342 add path of workspace root folders to status output.

  • #14340 rename AstDatabase to ExpandDatabase.