RubyMine 2019.1 bietet wichtige Docker-Updates, Ruby-Profiler, vollständige Factory Bot-Unterstützung, benutzerdefinierte Designs und vieles mehr.
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.
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.
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.
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.
Sie können den Profiler an Ihre laufende Anwendung anfügen (Find action / Attach Profiler to Process), um diese in Echtzeit zu untersuchen.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Die Datenbanktools in RubyMine haben dank unserer Kollegen im DataGrip-Team einige interessante Verbesserungen erfahren: