|
| 1 | +--- |
| 2 | +layout: post |
| 3 | +title: "IntelliJ Rust Changelog #195" |
| 4 | +date: 2023-05-30 13:00:00 +0300 |
| 5 | +--- |
| 6 | + |
| 7 | +The minimal supported IDE platform version for this plugin update is **2023.1**. |
| 8 | +To receive this and further plugin updates, please upgrade your IDE to 2023.1 or 2023.2 EAP. |
| 9 | + |
| 10 | +## New Features |
| 11 | + |
| 12 | +* [#10467] Provide support for **2023.2** [EAP](https://www.jetbrains.com/clion/nextversion/) builds. |
| 13 | + Note, the Early Access Program gives you free access to pre-release versions of JetBrains software and doesn't require a paid IDE subscription |
| 14 | + |
| 15 | +* Detect new compiler errors: |
| 16 | + |
| 17 | + * [#10460] `#[repr(align())]` representation hint was incorrectly declared |
| 18 | + [E0589](https://doc.rust-lang.org/error_codes/E0589.html), [E0693](https://doc.rust-lang.org/error_codes/E0693.html) |
| 19 | + |
| 20 | + * [#10456] A function is using `continue` keyword incorrectly [E0696](https://doc.rust-lang.org/error_codes/E0696.html) |
| 21 | + |
| 22 | + * [#10450] `break` or `continue` keywords were used in a condition of a `while` loop without a label |
| 23 | + [E0590](https://doc.rust-lang.org/error_codes/E0590.html) |
| 24 | + |
| 25 | + * [#10426] A literal value was used inside `#[derive]` [E0777](https://doc.rust-lang.org/error_codes/E0777.html) |
| 26 | + |
| 27 | + * [#10140] A `#[deprecated]` attribute was malformed [E0538](https://doc.rust-lang.org/error_codes/E0538.html), |
| 28 | + [E0551](https://doc.rust-lang.org/error_codes/E0551.html), [E0541](https://doc.rust-lang.org/error_codes/E0541.html) |
| 29 | + |
| 30 | +* [#10459] Provide completion for the keyword `let` after `if` and `while` keywords |
| 31 | + |
| 32 | +* [#10424] Provide a quickfix for replacing a constant with a predefined one in std/core library (by [@DeoTimeTheGithubUser]) |
| 33 | + |
| 34 | +## Fixes |
| 35 | + |
| 36 | +* [#10511] Land a temporary workaround for the issue [#10512] "Cannot run tests on Rust 1.70-beta". |
| 37 | + With this fix, the plugin run tests in a simple terminal instead of the rich test-tree tool window |
| 38 | + (if you use Rust 1.70-beta or greater). The test running functionality has been degraded because of |
| 39 | + [rust-lang/rust#109044](https://github.com/rust-lang/rust/pull/109044). Please follow the |
| 40 | + [rust-lang/rust#49359](https://github.com/rust-lang/rust/issues/49359) tracking issue for the proper fix. |
| 41 | + |
| 42 | +* [#10456] When completing a label in `continue` expression, don't complete irrelevant label names |
| 43 | + |
| 44 | +* [#10421] Fixes false-positive "`#![feature]` may not be used on the stable release channel" (which appeared in rare cases) |
| 45 | + |
| 46 | +## Internal Improvements |
| 47 | + |
| 48 | +* [#10452], [#10453], [#10457] Setup MIR-dataflow framework, experimentally annotate [E0381] and [E0382] using MIR-based |
| 49 | + borrow checker |
| 50 | + |
| 51 | +* [#10455] Drop support for 2022.3 platform |
| 52 | + |
| 53 | +Full set of changes can be found [here](https://github.com/intellij-rust/intellij-rust/milestone/104?closed=1) |
| 54 | + |
| 55 | +[@DeoTimeTheGithubUser]: https://github.com/DeoTimeTheGithubUser |
| 56 | +[@kuksag]: https://github.com/kuksag |
| 57 | + |
| 58 | +[#10140]: https://github.com/intellij-rust/intellij-rust/pull/10140 |
| 59 | +[#10421]: https://github.com/intellij-rust/intellij-rust/pull/10421 |
| 60 | +[#10424]: https://github.com/intellij-rust/intellij-rust/pull/10424 |
| 61 | +[#10426]: https://github.com/intellij-rust/intellij-rust/pull/10426 |
| 62 | +[#10446]: https://github.com/intellij-rust/intellij-rust/pull/10446 |
| 63 | +[#10450]: https://github.com/intellij-rust/intellij-rust/pull/10450 |
| 64 | +[#10452]: https://github.com/intellij-rust/intellij-rust/pull/10452 |
| 65 | +[#10453]: https://github.com/intellij-rust/intellij-rust/pull/10453 |
| 66 | +[#10455]: https://github.com/intellij-rust/intellij-rust/pull/10455 |
| 67 | +[#10456]: https://github.com/intellij-rust/intellij-rust/pull/10456 |
| 68 | +[#10457]: https://github.com/intellij-rust/intellij-rust/pull/10457 |
| 69 | +[#10459]: https://github.com/intellij-rust/intellij-rust/pull/10459 |
| 70 | +[#10460]: https://github.com/intellij-rust/intellij-rust/pull/10460 |
| 71 | +[#10467]: https://github.com/intellij-rust/intellij-rust/pull/10467 |
| 72 | +[#10511]: https://github.com/intellij-rust/intellij-rust/pull/10511 |
| 73 | + |
| 74 | +[#10512]: https://github.com/intellij-rust/intellij-rust/issues/10512 |
| 75 | + |
| 76 | +[E0381]: https://doc.rust-lang.org/error_codes/E0381.html |
| 77 | +[E0382]: https://doc.rust-lang.org/error_codes/E0382.html |
0 commit comments