41

IntelliJ Rust Changelog #125

 4 years ago
source link: https://intellij-rust.github.io/2020/06/29/changelog-125.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

New Features

  • Provide initial support for debugging with MSVC toolchain in CLion 2020.2. You can track current progress and restrictions here
  • Add initial implementation of Move File refactoring. The refactoring currently supports moving a single file without submodules.

    vqiERbB.png!web

  • Now Rust plugin is dynamically loadable on 2020.2. It allows you to install the plugin without restarting the IDE
  • Add intentions to convert a method call to UFCS and vice versa (by @Kobzol )

    JrYfAzu.png!web

  • Add quick fixes to remove unused variable / parameter (by @Kobzol )

    ZvQJNjf.png!web

  • Add the quick fix to convert an immutable reference to a mutable one (by @Kobzol )

    i6vmquI.png!web

  • Update icons for Rust items. Now they are more similar to C/C++ icons. Also, fix visibility modifiers for some items in structure view

    Before After rimYfmb.png!webbY3ieaj.png!web
  • Now highlighting of lint inspection annotations is associated with corresponding lint levels defined by lint check attributes like allow , warn , etc. (by @Stzx )
  • Basic support for forbid attribute. Now messages from a forbidden lint are highlighted as errors in the editor (by @Stzx )
  • Allow a user to change mutability of parameters in Extract Function dialog (by @Kobzol )
  • Report type errors for references with different mutability even if a type is not fully known (by @Kobzol )
  • Show unique editor tab names for main.rs , lib.rs and Cargo.toml (by @Kobzol )
  • Improve text for Convert to type quick fix (by @Kobzol )
  • Update Wrong type arguments number inspection (by @Kobzol )
  • Replace Remove all type arguments quick fix with Remove redundant type arguments quick fix (by @Stzx )

Fixes

  • Take into account namespaces when name shadowing occurs. For example, now use anyhow::anyhow doesn’t break name resolution
  • Fix false positive about not allowed impl Trait in associated type binding (by @Kobzol )
  • Fix false positive for Match must be exhaustive error (by @Mcat12 )
  • Fix usage replacement in Extract Enum Variant refactoring (by @Kobzol )
  • Support tuple struct fields in Make public quick fix (by @Kobzol )
  • Make Self inside impl of enum to be resolved to both impl and enum items (by @fan-tom )
  • Don’t trigger Main function not found inspection if the file has top-level errors (by @Kobzol )
  • Fix Go to Declaration from associated type bindings on 2020.2
  • Fix parentheses completion for Fn* traits (by @Kobzol )
  • Liveness analysis takes into account destructured struct fields (by @Kobzol )
  • Fix Join Lines action for doc comment lines (by @Stzx )
  • Disable Promote Module to Directory and Downgrade Module to File refactorings for invalid files in the editor (by @Kobzol )
  • Correctly handle symlinked Cargo projects (by @Jezza )
  • Fix #[macro_export(local_inner_macros)] when used with the experimental macro expansion engine
  • Fix macro expansion infinite progress on 2020.2
  • Properly render types in annotations on 2020.2
  • Properly escape text in a test output pane
  • Get rid of options to disable the Test Tool window

  • Fix some exceptions:

    • In Remove reference and Change return type quick fixes
    • When analysing file with an external linter
    • During code folding of invalid macro calls
    • On Find Usages in Macros 2.0
    • In structure view and usage tooltip
    • When formatting file with rustfmt on save

Internal Improvements

  • Enable proofreading in commit messages
  • Provide issue / PR navigation in git log

Full set of changes can be found here


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK