In GoLand 2020.3 können Sie den goroutines-Dump erkunden, einzelne Tabellentests ausführen und zu ihnen navigieren und mehr von der erweiterten Unterstützung für das Testframework Testify erfahren. Sie werden auch viele neue Codebearbeitungsfunktionen finden, einschließlich der Unterstützung für das Zeitpaket, intelligentere Möglichkeiten zur Handhabung von Paketen, Verbesserungen der UI, eine Vielzahl neuer Funktionen für die Webentwicklung und die Arbeit mit Datenbanken und einen neuen Dienst von JetBrains für die kollaborative Entwicklung und Paarprogrammierung.
Bevorzugen Sie interaktives Lernen statt Lesen? Dann ist unser Tutorial What's New in GoLand 2020.3, das Sie auf dem Begrüßungsbildschirm der IDE finden, genau das Richtige für Sie.
Mit dem neuen Symbol Dump Goroutines im Debugger können Sie während der Debug-Sitzung leicht Goroutinen finden, die einen bestimmten String im Stack enthalten. Klicken Sie einfach auf das Symbol, um einen Dump in einem separaten Fenster zu öffnen.
Damit Sie sich auf die wichtigen Informationen konzentrieren können, gibt es die Option, eine einzelne Goroutine oder Goroutinen mit demselben Stack auszublenden. Klicken Sie mit der rechten Maustaste auf eine Goroutine und wählen Sie die gewünschte Aktion aus, oder drücken Sie einfach die Löschtaste, um sie in einen speziellen Hidden Bereich im Dump-Fenster zu verschieben, wo sie Sie nicht ablenkt.
GoLand 2020.3 bietet die Möglichkeit, einen Prozess mit der Go Remote-Konfiguration anzuhalten, wenn kein erneutes Anfügen erforderlich ist.
In Ihren Konfigurationseinstellungen können Sie das Standardverhalten des Debuggers bei einer Unterbrechung festlegen und folgende Optionen auswählen: Stop remote Delve processes, Leave it running, oder GoLand fragt Sie jedes Mal, wie es weitergehen soll.
Sie können einzelne Tabellentests über das Toolfenster Run ausführen und zu diesen navigieren.
Es gibt einige Einschränkungen:
fmt.Sprintf()
-Aufruf mit %s
und %d
Verben sein. Die IDE erkennt jetzt die Testfunktion, die eine Testsuite startet, und bietet eine Möglichkeit, eine einzelne suite.Run
und suite.T().Run
zu starten, solange der Name des Subtests eine String-Konstante ist. Darüber hinaus ist es möglich, einen Subtest vom Run-Toolfenster aus erneut auszuführen, um zu vermeiden, dass der gesamte Test der obersten Ebene erneut ausgeführt wird.
Darüber hinaus kann GoLand jetzt Testify-Suites mit demselben Methodennamen innerhalb eines einzigen Testfalls separat ausführen.
Zu guter Letzt: Wenn Sie eine Funktion oder Methode abschließen, die testing.T
als erstes Argument akzeptiert, übergibt GoLand dieses Argument wenn möglich automatisch. Dies funktioniert für Funktionen und Methoden der Pakete testify/assert
, testify/require
, testify/mock
, und testify/suite
.
Die Codeinspektion Incorrect usage of Println/Printf like functions warnt Sie vor möglichen Problemen in den Paketen github.com/pkg/errors
, github.com/sirupsen/logrus
, und go.uber.org/zap
.
Darüber hinaus haben wir das Hervorheben und Einfalten von Platzhaltern sowie die Intention Add format string argument hinzugefügt.
Die Inspektion context.CancelFunc not called code berichtet über potenziell unsichere Verwendungen der Kontextstornierung. Dies ist besonders nützlich, wenn die von context.WithCancel
(und ähnlichen Funktionen) zurückgegebene Funktion 'cancel' nicht auf allen Ausführungspfaden aufgerufen wird.
Um mehr über dieses Paket zu erfahren, besuchen Sie bitte: https://golang.org/pkg/context/.
Wir haben Unterstützung für das Zeitpaket hinzugefügt, damit es einfacher ist, mit Zeit und Dauer zu arbeiten. GoLand wird Elemente des vordefinierten Layouts mittels Code-Completion (Strg+Leertaste) als YYYY
, MM
, DD
Platzhalter aus ISO-8601 vorschlagen.
Drücken Sie Strg+P auf einem Token, und die IDE zeigt seine Bedeutung an. Es gibt auch Syntaxhervorhebung für Layout-Token. Die Code-Completion schlägt auch Standard-Zeitlayouts außerhalb des Stringliterals vor.
Die IDE ist jetzt intelligenter bei der Priorisierung von Completion-Elementen für Pakete, die Sie häufig verwenden und die explizit in der go.mod
-Datei Ihres Projekts deklariert sind.
Wir haben auch eine Option hinzugefügt, um Pakete vollständig von Ihrem Projekt-Importpfad und den Completion-Vorschlägen auszuschließen. Sie können dies über Alt+Enter oder im neuen Fenster Exclude for import and completion unterSettings | Go | Imports anpassen.
GoLand macht es einfacher, schattierte Variablen zu erkennen:
Wir haben die Updates des Designs von Generika durch das Go-Team verfolgt und Unterstützung für eckige Klammern für die Generika-Syntax anstelle von Klammern hinzugefügt, da dies in der vorherigen Version des Proposals umgesetzt wurde.
Bitte beachten Sie, dass die Einstellung Enable generics (experimental support for type parameters) in Settings | Go standardmäßig deaktiviert ist. Sie müssen dieses Kontrollkästchen explizit auswählen, um die Funktion nutzen zu können.
Lesen Sie diesen Blogbeitrag, um mehr über Typparameter zu erfahren.
Wenn Sie func
in die Testdatei eingeben, schlägt GoLand in den Completion-Optionen standardmäßig bench
und test
Live Templates vor.
Wenn Sie for
innerhalb des Maßstabs eingeben, schlägt die IDE vor, diesen durch eine for-Schleife mit b.N.
zu vervollständigen.
Vorschläge erscheinen jetzt sofort im Dialogfeld, wenn Sie Alt+Enter drücken. Darüber hinaus bietet eine neue Version der LanguageTool-Engine für die Grammatikprüfung verbesserte Textprüfungen für Englisch und kommt mit Unterstützung für 10 zusätzliche Sprachen.
GoLand 2020.3 unterstützt Code With Me (EAP) – den neue JetBrains-Service für kollaborative Entwicklung und Paarprogrammierung. Mit Code With Me können Sie das Projekt, das gerade in Ihrer IDE geöffnet ist, für andere freigeben, um gemeinsam in Echtzeit daran zu arbeiten.
Mehr dazu erfahren Sie in diesen Beiträgen.
Wir haben den Welcome-Bildschirm überarbeitet, um Ihnen sofortigen Zugang zu ermöglichen zu:
Wählen Sie die Option Sync with OS unter Settings | Appearance & Behavior | Appearance | Theme, um Ihr IDE-Design automatisch umzuschalten, damit es Ihren Betriebssystempräferenzen entspricht.
Teilen Sie den Hauptbildschirm des Editors horizontal oder vertikal, indem Sie eine Registerkarte an die gewünschte Position ziehen und dort ablegen. Wenn Sie eine Registerkarte ziehen, markiert der Editor, wo Sie ihn ablegen können.
Wir haben die Benutzererfahrung bei der Arbeit mit Dateien aus der Project-Ansicht verbessert. Wenn Sie jetzt eine Datei aus der Project-Ansicht öffnen, wird der Fokus automatisch auf den Editor gesetzt, so dass Sie sofort mit der Arbeit mit Ihrem Code beginnen können. Drücken Sie die Leertaste und die IDE zeigt Ihnen eine Vorschau der Datei in der Project-Ansicht.
Wenn Sie mehrere Dateien gleichzeitig im Editor geöffnet haben möchten, können Sie dies jetzt mit einer einfachen Tastenkombination tun. Wählen Sie die Datei in der Project-Ansicht und drücken Sie Shift+Enter, damit die IDE das Editor-Fenster teilt und die Datei im rechten Teil des Fensters öffnet.
Das VCS-Menü passt sich jetzt an das Versionsverwaltungssystem an, das Sie gerade verwenden, was den Zugriff auf wichtige VCS-Funktionen erleichtert, da sie nicht mehr in einem Submenü versteckt sind.
Es ist ein großartiger neuer Git-Staging-Bereich verfügbar! Bitte beachten Sie, dass diese Funktionalität nur für das Commit-Toolfenster verfügbar ist.
Aktivieren Sie das Kontrollkästchen Enable staging area unter Settings | Version Control | Git, um ihn zu aktivieren. Sobald Sie dies tun, wird die Unterstützung für Änderungslisten deaktiviert.
In der Commit-UI finden Sie Staged- und Unstaged-Dateien. Wenn Sie bereit sind, eine Datei bereitzustellen, klicken Sie einfach auf das Plus-Symbol neben der Datei. Die Datei erscheint dann unter dem Knoten Staged. Um Ihre Änderungen zum Staging-Bereich hinzuzufügen, können Sie auch das Randleistensymbol oder Show Diff verwenden.
Die Arbeit mit den Branches wurde verbessert:
Wir haben die Möglichkeit hinzugefügt, Plugins für das aktuelle Projekt oder für alle Projekte zu aktivieren, indem Sie Enable for Current Project oder Enable for All Projects wählen. Drücken Sie unter Settings | Plugins auf das Zahnradsymbol auf dem Plugin, das Sie aktivieren oder deaktivieren möchten, und wählen Sie die gewünschte Option.
Das macOS-System-Shortcut Tastaturschema (Settings | Keymap) zielt darauf ab, Ihnen ein alternatives macOS-Tastaturschema zur Verfügung zu stellen, die eine erweiterte Kompatibilität mit Systemtastenkürzel bietet und es Ihnen ermöglicht, die Verwendung von F-Tasten für wesentliche Aktionen zu vermeiden.
Wir haben den Suchmechanismus des Flammendiagramms im Profiler und seine Visualisierung verbessert, damit Sie Methodenmetriken schneller finden können. Sie können auf das Lupensymbol klicken oder Ihre Suchanfrage im Flammendiagrammbereich eingeben.
Außerdem haben wir ein Suchfeld, Auf-/Ab-Pfeile für die schnellen Navigation zwischen den Suchergebnissen und einen Filter zum Suchen im gesamten Flammendiagramm oder nur in einem bestimmten Teilbaum.
Dank der Arbeit des WebStorm-Teams hat GoLand nun umfangreichliche Unterstützung für die Webentwicklung unter der Haube. Eine der bevorstehenden Änderungen in diesem Bereich ist die Möglichkeit, React-Komponente aus einer nicht aufgelösten Referenz zu erstellen. Platzieren Sie den Textcursor auf eine ungelöste Komponente, drücken Sie Alt+Enter und wählen Sie die entsprechende Inspektion aus.
GoLand bietet volle Unterstützung für den pnpm-Paketmanager, zusammen mit npm und yarn. Wenn Sie ein Projekt mit einer pnpm-Sperrdatei öffnen und pnpm auf Ihrem Computer installiert haben, ändert GoLand automatisch den Paketmanager für dieses Projekt auf pnpm. Die IDE hat auch eine spezielle pnpm-Option in der Liste der Paketmanager unter Settings | Languages and Frameworks | Node.js and NPM.
GoLand 2020.3 lässt Ihnen zwischen der manuellen oder automatischen Erkennung von Webpack-Konfigurationsdateien auswählen. Die neuen Optionen finden Sie unter Settings | Languages & Frameworks | JavaScript | Webpack.
Dank unserer Kolleg*innen aus dem DataGrip-Team hat GoLand seine unterstützten Datenbanken um ein neues Mitglied erweitert - Couchbase! Bitte beachten Sie, dass die IDE den Couchbase Query-Service unterstützt, nicht den Couchbase Analytics-Service.
GoLand kennt jetzt Objektberechtigungen und zeigt sie in der DDL des Objekts an. Dies funktioniert für MySQL, PostgreSQL, Greenplum, Redshift und SQL Server.
Wir haben den separaten Editor für Zellenwerte verbessert:
Wir haben zwei neue Extraktoren hinzugefügt, um Ihnen die Arbeit mit Daten zu erleichtern:
INSERT
-Anweisung mit den mehreren neuen Zeilen, die eingefügt werden. Darüber hinaus gibt es jetzt eine neue Option in der Konfiguration des CSV-Formats: Werte niemals in Anführungszeichen setzen.