RubyMine 2019.1の新機能

Docker

docker-compose exec を使ったDockerに関する見直し

RubyMine は docker-compose execのサポートを追加しました。簡単に言うと、このコマンドが有効な場合、アプリケーションの実行、デバッグ、gemのインストール、そのほかの開発のタスクを以前よりも速く行うことができます。
詳細は How to work with Docker/Docker Compose from RubyMine をご覧ください。
Docker-compose exec

RubyMine をスピードアップ

Docker SDK で作業をしている場合は、実験的な機能ですが RubyMine をスピードアップするために ruby.docker.internal.via.exec を有効にしてください。
Docker イメージをリビルドすることなく、gems を追加し、rake タスク、railsコマンド、そのほか環境をアップデートするものを更新できるようになりました。

最近のロケーション

最近のロケーションをポップアップ表示

Recent locations

プロファイラ

アプリケーションのプロファイル

RubyMine 2019.1 では rbspy を統合し、ネイティブのプロファイラを提供しました。このことはアプリケーション および/または テストでスローダウンしているコードの箇所を見つけることに役立ちます。
詳細はチュートリアル Profile Ruby & Rails Apps With rbspy in RubyMine をご覧ください。

実行中のアプリにアタッチ

実行中のアプリにプロファイラ (アクションの検索 / プロセスへのアタッチプロファイラ) でアタッチできるようになりました。リアルタイムに調査できます!

Factory Bot

自動補完と属性間の移動

ファクトリを追加する場合、RubyMine はその属性を自動補完し、可能であればそれらの値も補完します。例えば、Railsモデルファクトリの場合、IDE はコンテンツ内のそのフィールド、さらにはアソシエーションも自動補完します。もちろん定義とオブジェクトの使用箇所間を行き来することができます。

自動補完とメソッド間の移動

テストを書いている時、自動補完をし、create, build, build_stubbed のようなファクトリ作成メソッドの定義へ移動することができます。
シーケンス、トレイ、エイリアスのような Factory Bot のクールな機能も完全にサポートされています。

フル MVC 連携

Related files ポップアップ (Navigate / Related シンボル) にファクトリを追加しました。それらが存在する場合はファクトリ宣言の一部に移動できるようガターを追加しました。

Factories in related files

Call Hierarchy

メソッド呼び出しの調査

新しい Call Hierarchy アクションは調査中のメソッドを使っているメソッド (“呼び出し元”) および呼び出し元を呼ぶメソッド、さらに必要に応じてより深く掘り下げるのに役立ちます。
詳細は ブログポストをご覧ください。

TruffleRuby

TruffleRuby のサポート

RubyMine 2019.1 では TruffleRuby のサポートを追加しました!現在の Ruby SDK からTruffleRuby に切り替えるには、インタープリタがインストールされていることを確認し、Ruby SDK 設定でそれを選択してください。
このリリースではRubyバージョン管理に関する複数の問題も修正しました。

TruffleRuby

JavaScript

VueアプリケーションでのTypeScriptサポートを改善

RubyMine は .vue ファイル内の任意の TypeScript コードに対する独自のTypeScript サポートと共に TypeScript 言語サービスを使用するようになりました。より正確なタイプチェックタイプ情報を得ることができます。また、サービスが提供するクイックフィックスを使えるようになります。さらには TypeScript ツールウィンドウにおいて現在のファイル内の TypeScript エラーをすべて参照できるようになりました。

TypeScript in Vue

テストで失敗した行をハイライト

Jest や Karma 、Mocha または Protractor でテストを実施した結果、いくつかのテストが失敗した場合、問題が発生した箇所をエディタで確認できるようになりました。IDE はスタックトレースの情報を利用し、失敗したコードをハイライトしてくれます。失敗した箇所をホバーするとテストランナーからのエラーメッセージを参照できますので、すぐにテストのデバッグを始めることができます。

Highlight errors in tests

新しいデバッガーコンソール

JavaScript と Node.js のデバッグツールウィンドウにおいて、新しく改善されたインタラクティブなデバッガコンソールを利用できます!ツリービューを使用してオブジェクトが表示されるようになり、CSSのログメッセージのスタイルや、console.group() とconsole.groupEnd()を使ってそれらのグループ化をサポートします。 また、あらゆる種類のログメッセージの除外もできるようになりました。

New debugger console

npm スクリプトの補完

package.json ファイルに新しいスクリプトを追加する際、IDEはインストールされたパッケージが提供する利用可能なコマンドを提案するようになりました。node と入力するとIDE はフォルダとファイル名を提案します。npm run と入力すると現在のファイルで定義されたタスクリストが表示されます。
RubyMine 2019.1 で利用可能になった JavaScript に関する改善の詳細については WebStorm 2019.1の新機能 をご覧ください。

New debugger console

HTML & CSS

最新ドキュメントの表示

CSS プロパティ、HTML タグや属性のためのドキュメント (F1) には、MDN からのブラウザサポートに関する最新の説明と情報および MDN の全記事へのリンクも表示されるようになりました。

HTML and CSS

カスタムテーマ

新しいUIテーマ

プラグインとして利用可能な RubyMine の新しいカラフルなUIテーマを利用できるようになりました。Dark PurpleGrayCyan Light テーマ、または自身で作成したテーマから選ぶことができます。

Custom themes

データベースツール

DataGrip チームの同僚たちのおかげで、RubyMine のデータベースツールはクールな改善をすることができました:

  • 新しいデータベースをサポート: Greenplum、VerticaとApache Hive
  • CREATEとDROPを組み合わせた文のコード補完サポート
  • MySQLとMariaDBのDEFINER属性サポート
  • MariaDBのOracleモードサポート
  • プロジェクトのデフォルトフォルダを設定可能

Improvements in Database tools – New Sources

その他の改善点:

  • Spring でのテストの実行とデバッグが可能に
  • ポリモーフィック関連: source と source_type パラメータのサポート
  • bundle.config を使って代替の gemfile を指定
  • bundle.config を使ってローカルの gem を指定
  • I18n: デフォルトオプションのサポート
  • Rails model におけるクエリフィールドメソッドのサポート改善