Changelog #211

Commit: 457b966
Release: 2023-12-11 (v0.3.1766)

New Features

  • #15959 replace TokenMap with an abstraction that matches reality.

  • #16027 add support for implicit format args:

  • #16034 support multiple navigation targets when the focus range is in the macro definition site:

    Screen recording showing two Go to definition results for `tcx.def_span` in the rustc source code
  • #15990 diagnose extra trait impl items:

    Screenshot showing an error on a trait impl item that’s not a member of original trait
  • #15627 prioritize import suggestions based on the expected type:

    Screenshot showing the flyimport pop-up prioritizing `std::sync::atomic::Ordering` in a `fetch_add` call


  • #15896 (first contribution) show placeholder while getting runnable list from server:

    Screenshot showing a `Looking for runnables…​` in the picker before `cargo test` and `cargo check` show up
  • #15515 (first contribution) improve handling of binary expressions on the left-hand side of "Flip binary expression".

  • #16009 (first contribution) don’t search for ControlFlow as string in "Extract function".

  • #16028 make drop inlay hints more readable:

    Screenshot showing drop hints appearing now after the semicolon
  • #16024 fix runnables working directory on Windows.

  • #16054 fix token downmapping being quadratic.

  • #16016 don’t insert parantheses around fields in struct literals.

  • #16041 fix WideChar offsets calculation in line-index.

  • #16073 replace doc_comments_and_attrs with collect_attrs.

  • #16035 fix diagnostics panicking when resolving to different files due to macros.

  • #16037 don’t print proc-macro panic backtraces in the logs.

  • #15486 fix item tree lowering pub(self) to pub().

  • #15705 resolve Self type references in delegate method assist.

  • #16048 fix concat_bytes! expansion emitting an identifier.

  • #16058 reduce spans for unresolved field and method diagnostics.

  • #16060 fix completion in format_args! with invalid template.

  • #16078 fix "View Mir", "View Hir" and "Interpret function" when the caret is inside a macro.

  • #16039 don’t emit missing items diagnostic for negative impls.

  • #16045 fix panic with closure inside array length.

  • #16055 fall back to method resolution on unresolved field access.

Internal Improvements

  • #16036 (first contribution) make ParamLoweringMode accessible.

  • #15986 use triomphe::Arc::from_iter.

  • #16042 bump salsa.

  • #16022 don’t explicitly warn against semicolon_in_expressions_from_macros.

  • #16038 publish lsp-server 0.7.5.

  • #16043 bump and unlock some dependencies.