News Releases Scala Scala programming

IntelliJ Scala プラグイン 2024.1 がリリースされました!

Read this post in other languages:

リリースの異なる複数の IntelliJ Scala プラグインに要した労力を比較するのは不可能に近いことです(これはどんなソフトウェアでも同じことです)。 多大な労力を費やしても目に見える変更の数が少ない場合もあります。その一方、このような変更の数は次のリリースでより多くの改善を行うための目安にもなります。 しかし、これを考慮しても IntelliJ Scala プラグインの 2024.1 リリースは通常よりも大規模に思えます。 今回は多面的な取り組みの結果、修正と改善の数がかなり多くなりました。

Scala 3 のサポート改善

新しいリリースでは、Scala 3 の特定の構文ケースの処理方法に関する多数の問題が修正されています。 具体的には、禁止された修飾子の混在を認識する機能、インデントの深度を計算する機能、インデントを壊さずに演算を切り取って貼り付ける機能、および終了マーカーを構文構造に関連付ける機能などの改善が行われています。 また、デバッガーにおける Scala 3 のサポートを改善し、自動補完が using および given キーワードと使用される場合や unapply シグネチャーと使用される場合などのコーナーケースを正確に処理できるようにしました。

匿名パラメーターの種類をオブジェクト参照として使用するのは無効です
匿名パラメーターの型をオブジェクト参照として使用するのは無効です

また、Java から Scala 3 クラスを正しく解決するという課題にも対処しています。

Scaladoc 関連の強化

Scaladoc のポップアップとクイックドキュメントのポップアップでのクラス、トレイト、およびメソッド宣言のハイライト動作について多数の軽微な改善と修正が行われています。 ネストしたジェネリックパラメーターが正しくハイライトされるようになり、フィールドアクセス修飾子が表示されるようになっています。 また、三重括弧の Scaladoc ブロック内のコードが標準の Scala コードと同じようにハイライトされるようになりました。

ScalaDoc に埋め込まれた Scala コードの例が標準の Scala としてハイライトされるようになりました
Scaladoc に埋め込まれた Scala コードの例が標準の Scala としてハイライトされるようになりました

コンパイラーベースのハイライトの改善

Scala コンパイラーを使用してエラー処理を改善しました。より動作を安定させ、正しいコードが赤でハイライトされるのを回避することが目的です。 コンパイラーエラーのハイライトを使用する BSP プロジェクトでの二重コンパイルが解消されました。 Scala 3 および Scala 2.13 コンパイラー診断のサポートを追加しました。 さらに、他の IDEA のクイックフィックスと同様に、コンパイラーが生成するクイックフィックスをプレビューして適用できるようになりました。

ビルドツールの改善

IntelliJ Scala プラグインで新しい SBT プロジェクトに .gitignore ファイルが追加されるようになりました。 Scala/JVM アプリケーションが Use sbt for builds(ビルドに sbt を使用する)で初めて実行される場合に生じる、例外がスローされる問題を修正し、モジュールのすべての推移的な依存関係がインポート中に直接的な依存関係として挿入されるようにしました。 BSP については、BSP モジュールが循環依存関係を発生させずにコンパイラー統合モジュールの依存関係になれなかったという課題を解決しました。

X-Ray モードのピン留め

前回のリリースでは X-Ray モードを導入しました。 その詳細はこちらをお読みください。今回は X-Ray をオンにする方法を追加し、エディターの右上にあるアイコンをクリックしてピン留めできるようにしました。 X-Ray モードをよくご利用される方は、Ctrl/Cmd キーを押したままで操作するよりもこちらの方が快適に感じるかもしれません。

プロジェクトウィザードのデフォルトを Scala 3 に変更

過去 2 年にわたり、IntelliJ Scala プラグインで Scala プロジェクトを新規作成する際には最新の Scala 2 バージョンをデフォルトで表示してきました。 当チームでは Scala 3 のサポートを改善する必要があることを認識していたため、新規プロジェクトを Scala 3 で開始しないように推奨してきました。 現在では IntelliJ Scala プラグインの Scala 3 サポートが大幅に改善されているため、この動作を安全に変更できるようになりました。 新規プロジェクトはデフォルトで Scala 3.3.x LTS で開始されるようになりました。

新しい Scala プロジェクトでは Scala 3 が提案されるようになりました

その他の改善

New Project(新規プロジェクト)ウィザードと View(ビュー)| Tool(ツール)ウィンドウの SBT に新しいアイコンを導入しました。 またインレイヒントの表示が丸角への変更や位置合わせの改善など、若干強化されています。 さらに、Settings(設定)| Editor(エディター)| CodeStyle(コードスタイル)ヘルプページに Scala のドキュメントが追加されています。 ワークシートでは Scala 2.13.12 を使用する際のコンパイルエラーがビルドウィンドウ内で正しく再報告されるように変更され、インポートが最初のコードコンパイルの前に誤って未使用扱いになることがなくなりました。

いつものように、フィードバックをぜひお待ちしております。 問題が発生した場合は、YouTrack にご報告ください。 ご質問がある場合は、Discord でお気軽にお問い合わせください。

Happy Developing!

IntelliJ Scala プラグインチーム一同より

オリジナル(英語)ブログ投稿記事の作者:

Ryuji Owan

Maciej Gorywoda