Das ist neu in MPS 2020.2

MPS 2020.2 bietet ein neues VCS-Design, Tests für Quick-Fixes, verbesserte Generierungspläne und eine Reihe weiterer Verbesserungen.

Verbesserte VCS-Benutzeroberfläche

Verbesserte VCS-Benutzeroberfläche

Wir haben das Erscheinungsbild der Versionsverwaltung verbessert. Die Breite des Editorbereichs ist nicht mehr festgelegt, sodass der Teiler jetzt in beide Richtungen verschoben werden kann. Die Hervorhebung von Änderungen wurde ebenfalls verbessert. Tooltips für die Änderungen werden sowohl im Editorbereich als auch im Teilerbereich angezeigt. Außerdem haben wir die Dreiecks- und Trapezsymbole im Teilerbereich durch abgerundete Polygone ersetzt.

Verbesserte Stamm- und Knoten-Verläufe im VCS

Verbesserte Stamm- und Knoten-Verläufe im VCS

Die VCS-Aktion „Show Root History“ hat bisher nicht immer korrekte Ergebnisse angezeigt. Mit diesem Fix werden die Modelle anstelle der Quelldateien verglichen, was immer sinnvolle Ergebnisse liefert. Darüber hinaus kann jetzt der Verlauf jedes Knotens (nicht nur des Stammknotens) angezeigt werden.

Neuer VCS-Änderungstyp

Neuer VCS-Änderungstyp

MPS ist jetzt in der Lage, für nicht referenzierbare Teile von BaseLanguage-Modellen strukturelle Diffs/Merges durchzuführen. Bei Instanzen von BaseLanguage-Konzepten, die nicht als Referenzziele zu verwenden sind (etwa BlockStatement oder ForStatement), ignoriert der Diff/Merge-Algorithmus von MPS die ID des Knotens und vergleicht stattdessen die tatsächliche Knotenstruktur. Dadurch müssen sich MPS-Benutzer nicht mit Änderungen herumschlagen, die strukturell identisch sind und zu Merge-Fehlern führen.

Weitere Informationen

Nächstes Geschwisterelement auswählen

Mit Umschalt+Pfeil links/rechts können Sie jetzt mehrere Geschwisterknoten auswählen. Diese Tastenkombination kann für Methodenparameter, Werte in Array-Literalen oder benachbarte Anweisungen verwendet werden.

Quick-Fixes in einem Editor-Testfall testen

Die Editor-Testsprache wurde um das Konzept ApplyQuickFix erweitert. Verwenden Sie es im Codeabschnitt Ihres Testfalls, als würden Sie eine Intention testen. Sie können entweder einen Quick-Fix ausführen, der für den gewählten Knoten verfügbar ist, oder einen speziellen Quick-Fix vorgeben.

Spezieller Fix

Der Fix, der für den gewählten Knoten verfügbar ist:

Farbschema-Umschaltung und Schriftarteinstellungen

Farbschema-Umschaltung und Schriftarteinstellungen

Sie können jetzt ein anderes Editor-Farbschema auswählen, ohne das IDE-Design zu wechseln. Außerdem muss die IDE nach einem Wechsel des Designs oder des Farbschemas nicht mehr neu gestartet werden, damit die Änderungen wirksam werden!

Weitere Informationen

Verbesserte Generierungspläne

Verbesserte Generierungspläne

Die Aktion „Show Generation Plan“ bietet eine praktische Möglichkeit, die genauen Schritte, die bei der Umwandlung eines Modells anfallen, zu verstehen. Zusätzlich zu den Umwandlungsschritten gibt die Aktion jetzt auch an, woher der Generierungsplan stammt (z. B. aus einer benutzerdefinierten Modulfacette oder einem Devkit), und zeigt den Namen sowie einen Link zum Generierungsplan-Knoten an.

Weitere Informationen

Verbesserungen an der Build-Sprache

Verbesserungen an der Build-Sprache

Es gibt jetzt die Möglichkeit, in idea branding (BuildMps_Branding) Makros für Versionsabschnitte zu verwenden. Die Makros ${version.major}, ${version.minor}, ${version.bugfixNr} und ${version.eap} wurden zum MPS-Build-Skript hinzugefügt. Das alte Versionsformat funktioniert weiterhin, ist jedoch als veraltet gekennzeichnet. Um in Ihrem Build-Skript zur neuen Version zu wechseln, verwenden Sie die Intention „Convert deprecated branding version to the new format“.

Andere Verbesserungen

Vollständige Unterstützung von GitHub-Pull-Requests

Vollständige Unterstützung von GitHub-Pull-Requests

Die Details offener Pull-Requests können jetzt mit nur einem Klick in einem separaten vertikalen Toolfenster geöffnet werden. Das Haupteditorfenster zeigt die Unterhaltung an, die Sie direkt um eigene Kommentare ergänzen können. Wenn Sie die Berechtigung zum Verwalten von Pull-Requests haben, können Sie diese durchsuchen, zuweisen, verwalten und mergen. Sie können Kommentare betrachten und schreiben und Änderungen übernehmen – alles direkt in der IDE.

Verbesserte Git-Aktionsdialoge

Verbesserte Git-Aktionsdialoge

In dieser Version haben wir die Git-Dialoge für Merge, Pull und Rebase visuell einheitlicher gestaltet. Außerdem wurden die Dialoge verbessert, um klar anzugeben, welche Git-Befehle ausgeführt werden, und einige fehlende Optionen wurden ergänzt. Neu hinzugekommen sind zudem --rebase im Pull-Dialog und --no-verify im Merge-Dialog.

Lokale Commits aus dem Log heraus squashen und droppen

Lokale Commits aus dem Log heraus squashen und droppen

Sie können jetzt mehrere Commits in einem lokalen Branch auswählen und squashen. Öffnen Sie im Git-Toolfenster die Log-Registerkarte, wählen Sie Local Commits und dann Squash Commits aus. Alle Änderungen in diesen Commits werden in einem einzigen Commit zusammengefasst. Wenn Sie die Commit-Nachricht ändern, wird diese dem neuen Commit zugeordnet. Außerdem können Sie jetzt aus dem Git-Log Commits löschen.

Verbesserte Vergleichsdarstellung für Branches

Wenn Sie zwei Branches in MPS 2020.2 vergleichen, zeigt die IDE deren Commits in einer einzigen Ansicht an, indem die jeweiligen Logs im Editor geöffnet werden. Im Gegensatz zum VCS-Toolfenster bietet diese Ansicht ausreichend Platz für einen vollständigen Überblick über die Commits der einzelnen Branches und die betroffenen Dateien.

Autorisierung

Wir haben die GitHub-Anmeldung vom veralteten passwortbasierten System, das bald nicht mehr funktionieren wird, auf OAuth umgestellt.