Changelog #83

Commit: 1fa82ad
Release: 2021-06-28

Sponsors

Become a sponsor: On OpenCollective or GitHub Sponsors.

New Features

  • #9375 highlight exit and yield points:

    123292155 0f235200 d513 11eb 92e0 bef9aaea76a1
    123128988 e1bfa100 d44b 11eb 9c81 6a6031aad740
  • #9396, #9397 highlight loop exit points:

    123318732 d47be280 d52f 11eb 8a9a cb3f591d4195
  • #9362 massively improve performance for large files.

  • #9264 make documentation on hover configurable.

  • #9080 improve completion of cfg attributes.

  • #9031 add public semantic token modifier for public items.

  • #9380 add "Go to declaration" support.

  • #9227 add config setting to disable the cfg(test) cfg in specific crates.

  • #9348 output to a log file if RA_LOG_FILE is defined in environment.

Fixes

  • #9353 (first contribution) include extra targets when the pkg_root is not the same as the target root.

  • #9314 add .await when extracting an async function.

  • #9355 don’t insert } when typing { in a string.

  • #9357 update sysroot crates.

  • #9363 set target directory explicitly to avoid deadlock running cargo.

  • #9368 prefer identifier tokens in "Expand macro".

  • #9390 improve type bound completions.

  • #9400 fix renaming associated trait items with colliding names.

  • #9347 add note about cfg(debug_assertions).

Internal Improvements

  • #9379 remove one more accidentally quadratic code path.

  • #9373 factor out pick_best_token ide pattern into ide_db.

  • #9356 refactor completion tests.

  • #9383 rewrite token tree lowering to use an explicit stack.

  • #9413 deduplicate expression AST visiting logic.

  • #9364 split hover actions config into its own config struct.

  • #9367 document perf characteristics of SyntaxNodePtr::to_node.

  • #9369 document source_to_def and its connection to Kotlin and Roslyn.

  • #9377 count ItemScopes.

  • #9381 fix compilation on wasm32-unknown-unknown.

  • #9165 apply some clippy suggestions.