Das ist neu in RubyMine 2024.3

Verbesserte cloudbasierte Code-Completion, Inline-KI-Prompts, Kamal-2-Unterstützung, eingebaute Integration mit RBS Collection, Updates für Ruby 3.4 und Rechtschreib- und Grammatikprüfung mit Grazie

AI Assistant

Verbesserte cloudbasierte Code-Completion

In RubyMine 2024.3 bietet das Plugin JetBrains AI Assistant eine schnellere und kontextrelevantere Cloud-Completion. Qualität und Geschwindigkeit wurden verbessert und mehrzeilige Completion-Vorschläge eingeführt.

Dank des großen Sprachmodells (LLM) Mellum wurde die Latenzzeit der Completion gegenüber früheren Versionen auf ein Zehntel reduziert – dies bedeutet nahezu sofortige Vorschläge. Die Akzeptanzquote der Completion-Vorschläge hat sich ungefähr verdoppelt, während die Abbruchquote auf die Hälfte bis ein Drittel des Wertes der Vorgängerversion gesunken ist.

Bitte beachten Sie, dass die cloudbasierte Code-Completion von AI Assistant nur mit einem AI-Pro-Abonnement oder während einer aktiven kostenlosen Testphase nutzbar ist.

Verbesserter Rails-Kontext für Unit-Tests

RubyMine stellt AI Assistant jetzt mehr Kontext zu Rails-Anwendungen bereit, um die Generierung von Unit-Tests zu verbessern.

Inline-KI-Prompts

RubyMine 2024.3 führt Inline-KI-Prompts ein, um eine mühelose Interaktion mit AI Assistant direkt im Editor zu ermöglichen. Sie können Ihre Anfragen in natürlicher Sprache eingeben; AI Assistant interpretiert diese sofort und setzt sie in Codeänderungen um, die zur leichteren Nachverfolgung in der Randleiste violett markiert sind. Die Inline-KI-Prompts sind kontextsensitiv und berücksichtigen automatisch zugehörige Dateien und Symbole für eine präzisere Codegenerierung.
Die Funktion ist derzeit in *.rb-Dateien verfügbar.

Rails-8-Unterstützung

Kamal-2-Unterstützung

Rails 8 unterstützt das Deployment Ihrer Anwendungen mit Kamal 2, und in RubyMine 2024.3 haben wir Code-Completion für Kamal-2-Konfigurationen implementiert.

Nilability-Annotationen aus schema.rb für die Typunterstützung

RubyMine erkennt jetzt den Typmodifikator not-null bei Migrationsattributen; falsche nil-Zuweisungen werden markiert und lösen Warnungen aus.

Code-Insight für Solid Queue und Solid Cache

RubyMine 2024.3 bietet spezielle Symbole und Syntaxhervorhebung für die Dateien queue_schema.rb und cache_schema.rb.

RBS

Eingebaute Integration mit RBS Collection

RubyMine bietet jetzt eine eingebaute Integration mit RBS Collection, einer von der Community verwalteten Sammlung von RBS-Dateien für Gems, die keine Signaturen enthalten.

Auch wenn Sie RBS in Ihrem Projekt nicht verwenden, können Sie ohne jeden zusätzlichen Aufwand von den in RBS Collection enthaltenen Typsignaturen profitieren. RubyMine lädt die Typsignaturen für die Projektabhängigkeiten automatisch herunter und verwaltet sie.

Ruby

it als Alias für nummerierte Parameter in Blöcken

RubyMine erkennt jetzt it als Alias für _1 in Blöcken ohne Parameter und stellt Typunterstützung und Kontextaktionen für die Umwandlung solcher Verwendungen bereit.
Eine neue Fehlerannotation verhindert die Verwendung von it in Blöcken mit regulären nummerierten Parametern.

Unterstützung für „chilled“ Zeichenfolgen in Ruby 3.4

RubyMine erkennt jetzt den neuen Status „chilled“ für Zeichenfolgenliterale in Ruby 3.4. In Projekten ohne das Pragma frozen_string_literal sind Zeichenfolgen „chilled“ – d. h. bei Änderungen erfolgt nur eine Warnung, statt einen Fehler auszulösen.

Fehlerannotationen für mehrdeutige anonyme Argumente

RubyMine zeigt jetzt einen Fehler an, wenn Sie versuchen, anonyme Block-, Rest- oder Schlüsselwort-Restargumente in einem mehrdeutigen, verschachtelten Kontext zu verwenden.

VCS

Updates für Find in Files

Die Funktion Find in Files wurde um einen neuen Suchbereich erweitert: Project Files Excluding Git-Ignored. Mit dieser Option werden alle per .gitignore ignorierten Dateien von den Suchergebnissen ausgeschlossen. So können Sie sich beim Durchsuchen Ihres Projekts auf den relevanten Code konzentrieren.

Option zur Deaktivierung von Pre-Commit-Hintergrundprüfungen

Sie können jetzt Hintergrundprüfungen während des Commit-Prozesses mit einer neuen Option Run advanced checks after a commit is done unter Settings | Version Control | Commit verwalten. Mit dieser Einstellung können Sie festlegen, ob Tests und Inspektionen nach einem Commit ausgeführt werden sollen. Wenn Sie möchten, dass diese Prüfungen vor dem Commit abgeschlossen werden, deaktivieren Sie die Option einfach.

Benutzererfahrung

Integrierte Rechtschreib- und Grammatikprüfung

Das Plugin Grazie ist jetzt standardmäßig in RubyMine enthalten. Es stellt intelligente Prüfungen bereit, die über einfache Rechtschreib- und Tippfehler hinausgehen. Es analysiert die Grammatik und kann Sie vor stilistischen Fehltritten warnen.

Grazie-Prüfungen sind in Zeichenfolgen, Heredocs, Kommentaren, Blockkommentaren und RDoc-Dateien verfügbar.

Sie können die Grazie-Prüfungen unter Settings | Editor | Natural Languages | Grammar and Style | Scope verwalten.

Erweiterte Konsolenunterstützung

Mit neuen Optionen können Sie steuern, ob bei der Verwendung von Konsolen oder des Feldes Evaluate Expression beim Debuggen der erste Completion-Vorschlag vorausgewählt sein soll.

Das Feld Evaluate Expression zeigt jetzt beim Debuggen self-Typen korrekt an, erkennt lokale Variablen und Parameter mit abgeleiteten Typen und bietet Completion-Vorschläge für neue lokale Variablen, die in der aktuellen Stackframe-Sitzung eingeführt wurden.

Konsolensitzungen merken sich zuvor ausgeführte Befehle und stellen Typinferenz und Completion für lokale Variablen bereit.

Erhöhtes Standardlimit für Tabs

Wir haben das Standardlimit für Editor-Tabs auf 30 erhöht. Dies bedeutet, dass jetzt mehr Tabs offen bleiben können, bevor die IDE beginnt, die am längsten nicht genutzten Tabs zu schließen. Sie können dieses Verhalten unter Settings | Editor | General | Editor Tabs steuern.

Optimierte Platzierung der Rename-Aktion

Wir haben die Platzierung der Rename-Aktion im Kontextmenü optimiert, wenn dieses für Elemente im Editor und im Project-Toolfenster aufgerufen wird. Die Aktion befindet sich jetzt auf der obersten Ebene, sodass Benutzer*innen, die bevorzugt mit der Maus arbeiten, Dateien, Variablen und andere Elemente schneller umbenennen können.

Aktualisierte Bedienoberfläche für das neue Terminal

Wir haben die Bedienoberfläche des neuen Terminals kompakter gestaltet und Leerräume reduziert, um den Platz auf dem Bildschirm optimal zu nutzen. Die Verringerung der Leerräume spart Platz und ermöglicht einen besseren Überblick bei der Arbeit mit Befehlen, ohne die Lesbarkeit zu beeinträchtigen.

Hervorhebung aller Vorkommen des ausgewählten Texts

In der Standardeinstellung hebt RubyMine jetzt automatisch alle Vorkommen des ausgewählten Texts in der jeweiligen Datei hervor. So können Sie leichter erkennen, wo der ausgewählte Text in Ihrem Code erscheint.