Das ist neu in RubyMine 2019.1

RubyMine 2019.1 bietet wichtige Docker-Updates, Ruby-Profiler, vollständige Factory Bot-Unterstützung, benutzerdefinierte Designs und vieles mehr.

Docker

Docker-compose exec

Überdenken Sie Docker with docker-compose exec

RubyMine bietet Unterstützung für
docker-compose exec. Einfach ausgedrückt können Sie mit diesem Befehl Anwendungen ausführen und debuggen, Gems installieren und andere Entwicklungsaufgaben schneller als je zuvor ausführen.

Weitere Informationen finden Sie unter How to work with Docker/Docker Compose from RubyMine.

Experiementell: Run mit Docker Compose.

Beschleunigen Sie RubyMine

Aktivieren Sie ruby.docker.internal.via.exec unter Experimental features, wenn Sie mit einem Docker SDK arbeiten.

Jetzt können Sie Gems hinzufügen, rake-Tasks und rails-Befehle ausführen und andere Aktionen vornehmen, die Ihre Entwicklungsumgebung aktualisieren, ohne Docker-Images neu erstellen zu müssen.

Letzte Codestellen

Letzte Codestellen

Dialogfenster der letzten Codestellen

Das neue Popup Recent Locations ermöglicht neue Wege, in Ihrer Codebasis zu navigieren. Dieses Popup hilft Ihnen dabei, Code zu finden, wenn Sie nicht mehr wissen, wo er sich genau befindet, sondern sich lediglich ungefähr an den Inhalt erinnern. Beginnen Sie mit der Eingabe, um die Ergebnisse zu filtern, und springen Sie dann einfach zum benötigten Code.

Weitere Informationen finden Sie unter RubyMine Navigation: Recent Locations Popup.

Profiler

I18n-Übersetzungen erstellen

Anwendungen profilieren

RubyMine 2019.1 integriert rbspy und bietet einen systemeigenen Profiler, mit dem Sie Codeteile erkennen können, die Ihre Anwendungen oder Tests verlangsamen.

Ein detailliertes Tutorial finden Sie unter Profile Ruby & Rails Apps With rbspy in RubyMine.

Profiler an laufende App anhängen

An laufende Apps anhängen

Sie können den Profiler an Ihre laufende Anwendung anfügen (Find action / Attach Profiler to Process), um diese in Echtzeit zu untersuchen.

Factory Bot

Autovervollständigung und Navigieren von Attributen

Wenn Sie eine Factory hinzufügen, vervollständigt RubyMine automatisch deren Attribute und, falls möglich, auch deren Werte. Beispielsweise vervollständigt die IDE für eine Rails-Modell-Factory ihre Felder automatisch mit ihrem Inhalt und sogar mit Zuordnungen. Selbstverständlich können Sie auch zwischen den Definitionen und Verwendungen dieser Objekte navigieren.

Komplette Factory-Erstellungsmethoden in Testdateien

Autovervollständigung und Navigieren in Methoden

Wenn Sie Tests schreiben, können Sie die Definitionen der Methoden zur Factory-Erstellung wie create, build, build_stubbed und andere automatisch vervollständigen und zu ihnen navigieren.

Andere coole Funktionen von Factory Bot, wie Sequenzen, Merkmale und Aliase werden ebenfalls vollständig unterstützt.

Vollständige MVC-Integration

Wir haben auch Fabriken zum Popup Related files hinzugefügt (Navigate / Related symbol) und eine Randleiste hinzugefügt, mit der Sie zu partiellen Factory-Definitionen wechseln können, falls vorhanden.

Aufrufhierarchie

Aufrufhierarchie

Untersuchen von Methodenaufrufen

Die neue Aktion Call Hierarchy hilft Ihnen, die ganze Kette an Methoden ("Caller"), welche die von Ihnen untersuchte Methode aufrufen, bis zur gewünschten Tiefe schrittweise zu untersuchen.

Weitere Informationen finden Sie in diesem Blogeintrag.

TruffleRuby

TruffleRuby

TruffleRuby-Unterstützung

RubyMine 2019.1 unterstützt jetzt TruffleRuby! Um Ihr aktuelles Ruby-SDK auf TruffleRuby umzustellen, stellen Sie sicher, dass Sie den Interpreter installiert haben, und wählen Sie ihn in den Ruby-SDK-Einstellungen aus.

Übrigens haben wir in dieser Version auch viele Probleme mit Ruby-Versionsmanagern behoben.

JavaScript

TypeScript in Vue

Verbesserte Unterstützung von TypeScript in Vue-Anwendungen

RubyMine verwendet jetzt den TypeScript-Sprachservice zusammen mit seiner eigenen TypeScript-Unterstützung für jeden TypeScript-Code in .vue-Dateien. Das bedeutet, dass die Typüberprüfung und die Typinfo jetzt noch präziser sind, dass Sie die von diesem Dienst bereitgestellten Quick-Fixes nutzen können und dass Ihnen sämtliche TypeScript-Fehler in der aktuellen Datei im TypeScript-Toolfenster angezeigt werden.

Hervorheben von Fehlern in Tests

Hervorhebung im Test fehlgeschlagener Zeilen

Wenn Sie Tests mit Jest, Karma, Mocha oder Protractor ausführen und einige Tests fehlschlagen, sehen Sie jetzt direkt im Editor, wo das Problem aufgetreten ist. Die IDE nutzt die Informationen aus dem Stack-Trace, um den fehlerhaften Code hervorzuheben. Wenn Sie den Mauszeiger bewegen, wird die Fehlermeldung des Test-Runners angezeigt und Sie können sofort mit dem Debuggen des Tests beginnen.

Neue Debugger-Konsole

Neue Debugger-Konsole

In den Debug-Toolfenstern für JavaScript und Node.js erwartet Sie eine neue, verbesserte interaktive Debugger-Konsole. Objekte werden nun in einer Baumstruktur angezeigt, und Logmeldungen können mit CSS formatiert und mit console.group() und console.groupEnd() gruppiert werden. Sie können zudem beliebige Typen von Logmeldungen herausfiltern.

Vervollständigung für NPM-Scripte

Vervollständigung für NPM-Scripte

Wenn Sie der Datei package.json neue Skripts hinzufügen, bietet die IDE jetzt Vorschläge für verfügbare Befehle an, die von den installierten Paketen bereitgestellt werden. Nach der Eingabe von node schlägt die IDE Ordner- und Dateinamen vor. Nach  Eingabe von "npm run" sehen Sie eine Liste mit Aufgaben, die in der aktuellen Datei definiert sind.

Weitere Informationen zu JavaScript-Verbesserungen, die in RubyMine 2019.1 verfügbar sind, finden Sie in den Neuerungen für WebStorm.

HTML und CSS

HTML und CSS

Aktualisierte Dokumentation

Die Dokumentation (F1) für CSS-Eigenschaften und HTML-Tags und -Attribute zeigt jetzt aktuelle Beschreibungen und Informationen zur Browserunterstützung aus dem MDN an. Darüber hinaus gibt es Links zu den vollständigen MDN-Artikeln.

Benutzerdefinierte Designs

Benutzerdefinierte Designs

Neue UI-Designs

Sie können nun die neuen bunten UI-Designs in RubyMine verwenden, die als Plugins verfügbar sind. Wählen Sie aus den Designs in Dunkelviolett, Grau oder Helltürkis oder erstellen Sie Ihre eigenen.

Datenbank-Tools

Verbesserte Datenbanktools – neue Quellen

Die Datenbanktools in RubyMine haben dank unserer Kollegen im DataGrip-Team einige interessante Verbesserungen erfahren:

  • Unterstützung für neue Datenbanken: Greenplum, Vertica und Apache Hive
  • Die Codevervollständigung unterstützt kombinierte Anweisungen für CREATE und DROP
  • Unterstützung für DEFINER-Attribute in MySQL und MariaDB
  • Unterstützung für den Oracle-Modus in MariaDB
  • Sie können nun den Standardordner für ein Projekt festlegen

Andere Verbesserungen

  • Möglichkeit zum Ausführen und Debuggen von Tests mit Spring
  • Polymorphe Assoziationen: Unterstützte Parameter source und source_type
  • Festlegen alternativer Gemfiles mit bundle.config
  • Festlegen des Pfades zu lokalen Gems mithilfe von bundle.config
  • I18n: Unterstützung für Standardoption
  • Verbesserte Unterstützung für Abfragefeld-Methoden in Rails-Modellen