RubyMine 2025.2 では、以下を含むいくつかの魅力的な更新が行われています。
それでは詳しく見ていきましょう!
JetBrains AI Assistant に大規模な更新が適用され、よりスマートな補完を提供し、プロジェクトに対する理解度が向上しました。また、IDE 内での AI の動作をより詳細に制御できるようになりました。 以下では AI Assistant の新機能を簡単に説明しています。 記事全文はこちらでお読みください。
クラウドベースのコード補完機能が拡張され、ERB に対応しました。 現在は ERB タグ内でも動作するようになっています。たとえば、<% <caret> -%> や <%= <caret> %> の中で利用できます。
この機能は RubyMine の AI をベースとした既存の Ruby のコード補完機能に基づいており、以下のような機能強化も行われています。
AI Assistant チャットで Search Everywhere(どこでも検索)機能を Classes(クラス)と Symbols(シンボル)に活用し、より正確なコンテキストを反映できるようになりました。
コーディングスタイルやフレームワークの制約など、AI の回答を誘導するプロジェクト固有の指示を定義できるようになりました。 ルールはプロジェクト内に格納されるため、チーム全体での共有が可能です。このため、何度も手動で入力しなくても、整合性と一貫性を確保することができます。
AI Assistant では、自分のマシン上で稼働しているサードパーティの LLM に接続することで、ローカルモデルを使用できます。 Ollama と LM Studio に加えて、OpenAI API 互換の llama.cpp や LiteLLM などのモデルサーバーを使用できるようになりました。 これにより、データがマシン外部に送信されることなく AI 搭載機能を無料で活用することができます。
JetBrains AI Assistant で Anthropic および OpenAI モデルを使用する際、チャットに画像を添付できるようになりました。
RubyMine 2025.2 の AI Assistant は、より広範なコンテキストでより多くのコードを提案し、開発ワークフローを合理化します。
また、複数行の出力の整形が改善されたため、より快適にコーディングできるようになりました。
JetBrains AI コーディングエージェントの Junie は RubyMine 2025.2 ではプラグインとして提供され、以下の大規模な更新が適用されています。
RubyMine 2025.2 では、特定のコードインスペクションに使用される指定の型シグネチャープロバイダーを無効化することができます。
これは、あるインスペクションがいくつかのサービスのデータを使用しており、それらのサービス間の競合を回避する場合に特に役立ちます。
たとえば、Mismatched Argument Type(一致しない引数の型)インスペクションでは RBS と Sorbet が使用されますが、これらが競合する場合があります。 何らかの問題が発生しないよう、いずれかを無効化することができます。
競合が発生しうるすべてのインスペクションを見つけ、一部のプロバイダーを無効化するには、Settings(設定)| Editor(エディター)| Inspections(インスペクション)| Ruby | Probable bugs(潜在的なバグ)に移動してください。
多数のマイグレーションファイルを含む Rails プロジェクトでの作業を非常に円滑に行えるようになりました。 RubyMine 2025.2 では遅延やフリーズが発生することなくマイグレーションの編集、追加、削除を行えるため、ワークフローが中断することはありません。
プロジェクト起動時の特定バックグラウンドタスクの処理を最適化しました。
ある処理を遅延させ、他のある処理の実行頻度を減らすことで、プロジェクトをより迅速かつスムーズに起動できるようにしました。そのため、以前よりも素早く作業に取り掛かることができます。
たとえば、Rake タスクと Rails ジェネレーターのリフレッシュや RBS Collection の更新などの処理は、絶対に必要な場合にのみ実行されるようになっています。
RubyMine 2025.2 が RBS の宣言と参照でホバーヒントをサポートするようになりました。
Ctrl を押しながら .rbs ファイル内の宣言にカーソルを合わせると、ターゲットのプレビューが表示されます。
このプレビューは、参照のターゲットに対する迅速かつ文脈に沿ったインサイトを得るのに特に役立ちます。 たとえば、型エイリアスの定義を実際に開くことなく確認するのに使用できます。
RBS Collection の型サポート改善がデフォルトで有効化されました。
以下のような機能で精度の改善を体験できます。
注意: RBC Collection の統合には、Ruby 3.4 にバンドルされている RBS 3.2 が必要です。 それよりも古い Ruby のバージョンを使用している場合は、RubyMine に適切な gem をインストールするように促されます。
RubyMine 2025.2 では、特にマルチモジュールプロジェクトに有益な Bundler 関連の改善が行われています。
RubyMine のすべてのモジュールにまたがる gem の不足通知が 1 つのアラートにまとめられ、視認性が向上し、作業の中断が発生しにくくなりました。
Bundler コマンドを呼び出すたびにダイアログに対応せずに済むよう、新しい Bundler タブを導入しました。 このタブは Settings(設定)| Tools(ツール)にあり、以下の機能を提供します。
競合を防止し、複数のモジュール間で共有される gem の再インストールを避けるため、RubyMine が gem をモジュールごとに 1 つずつインストールするようになりました。
RubyMine による例外定数のコード補完処理を最適化しました。 接頭辞が提供されていない場合(キー入力なしで自動補完を呼び出す場合など)に行われる提案が、関連する定数に的を絞ったセットに制限されるようになりました。
この調整により、特に大規模なプロジェクトでのパフォーマンスが大幅に向上します。
RubyMine 2025.2 では、デバッガー gem のインストールプロセスが非モーダルになり、進捗が進捗バーの代わりにターミナルウィンドウに表示されるようになりました。
RubyMine は Qodana に新たに導入された Ruby リンターに使用されています。
Ruby リンターは信頼性の高い RubyMine のコードインスペクションを自動ワークフローに取り入れており、プロジェクト全体にわたる問題の検出や高いコード品質の維持に役立っています。
Ruby 対応の Qodana は現在、早期アクセスの段階にあります。 詳細については、Qodana のドキュメントをご覧ください。