Changelog #10

Commit: c57ed0c
Release: 2020-02-03

New Features

  • #2963 add auto-import support to Emacs.

  • #2978 support auto-import for functions.

  • #2982 merge imports when auto-importing.

Fixes

  • #2933 don’t compute diagnostics on the main thread. That fixes a long-standing issue with peformance degradation due to cargo check.

  • #2810 make magical search of struct literals work in more contexts.

  • #2916 fix slow cargo check performance due to unbuffered reads.

  • #2924 avoid spawning more than one Cargo for cargo check.

  • #2917 prefer imports starting with std for auto import.

  • #2937 fix an issue where cargo check got stuck in an infinite loop if some procedural macro printed to stdout.

  • #2970 fix some clint-side bugs with syntax highlighting.

  • #2972, a fun one, prevent a child process for flipping rust-analyzer’s stdin into non-blocking mode.

  • #2959 fix a bug where diagnostics from cargo check were obsolete.

Internal Improvements

  • #2872 update Chalk. This should fix some cases of extremely slow trait checking.

  • #2934 log error if the main loop turns takes too long.

  • #2931 document test_utils module.

  • #2940, #2941 update developer documentation.

  • #2943 improve memory usage tracking infrastructure.

  • #2895 make internal profiling infrastructure more maintainable.

  • #2967 speed up the build of rust-analyzer by using profile overrides.

  • #2987, #2986, #2989 cleanup VS Code extension.

  • #2991, #2998 unsuccessfully try to improve TypeScript build process.