Nouveautés de GoLand

GoLand 2022.1 fournit la prise en charge des génériques et des espaces de travail Go.

Nous avons également ajouté de nouvelles fonctionnalités permettant de travailler avec les microservices. Vous pouvez maintenant afficher tous les points de terminaison dans une fenêtre d'outil dédiée et générer des requêtes HTTP directement à partir de vos fichiers Go.

Comme d'habitude, la nouvelle version de GoLand apporte des nouveautés pour les bases de données et des améliorations pour le développement web.

Si vous préférez une approche interactive, nous vous invitons à suivre le tutoriel sur les Nouveautés de GoLand 2022.1 disponible à partir de l'écran d'accueil.

Génériques

Utilisation de génériques pour créer une fonction d'ajout

Améliorations et corrections de bugs

Notre tâche la plus importante pour cette version a été de corriger les erreurs relatives aux faux positifs et aux faux négatifs. Nous avons corrigé plus de 200 problèmes liés aux génériques.

GoLand ajoute automatiquement une parenthèse fermante après la saisie d'une parenthèse ouvrante

Saisie semi-automatique

Nous avons également ajouté plusieurs fonctionnalités pour les paramètres de types.

Dès que vous utilisez une parenthèse ouvrante, GoLand insère une parenthèse fermante pour vous.

Paramètres de types dans les suggestions de saisie semi-automatique

GoLand affiche les paramètres de type dans les suggestions de saisie semi-automatique et insère les parenthèses si vous acceptez l'une des suggestions.

Implémentation des méthodes manquantes à l'aide d'un correctif rapide

Correctif rapide Implement missing methods

Si un argument de type ne possède pas toutes les méthodes de l'interface qui le contraint, GoLand affiche une erreur. Vous pouvez implémenter les méthodes manquantes à l'aide d'un correctif rapide directement à partir du message d'erreur.

Vous pouvez également cliquer sur l'ampoule rouge ou appuyer sur Alt+Entrée, puis choisir Implement missing methods.

Espaces de travail Go

Ouvrir un fichier go.work

Vous pouvez ouvrir tout répertoire avec un fichier go.work et continuer à développer comme d'habitude. Nous prévoyons d'implémenter également la mise en évidence de la syntaxe et la saisie semi-automatique du code dans go.work dans une prochaine version.

Microservices

Utiliser l'action Go to declaration à partir d'un fichier Go

Recherche d'utilisations et navigation

Remarque : les nouvelles fonctionnalités pour la construction de microservices ne fonctionnent pour l'instant qu'avec la bibliothèque standard.

Une icône globe figure maintenant à côté de chaque point de terminaison dans vos fichiers Go. Lorsque vous cliquez sur cette icône, GoLand vous propose plusieurs options.

La première vous permet de trouver toutes les utilisations d'un point de terminaison et d'y accéder. Vous pouvez également afficher les occurrences en appuyant sur Ctrl et en cliquant sur un point de terminaison.

Générer une requête à partir d'un fichier Go

Générer une requête

La deuxième option, qui s'affiche lorsque vous cliquez sur l'icône globe, est Generate request in HTTP client. Si vous choisissez l'option correspondante, l'IDE ouvrira un client HTTP intégré. Vous pouvez utiliser cette action pour générer une requête pour chaque URL valide.

Notre client HTTP propose désormais la saisie semi-automatique du code pour les points de terminaison. La saisie semi-automatique fonctionne pour les points de terminaison des fichiers Go (seule la bibliothèque standard est prise en charge pour le moment), les spécifications Swagger, les fichiers .proto et les fichiers JavaScript.

Ouvrir la nouvelle fenêtre d'outils Endpoints

Fenêtre d'outilEndpoints

La troisième option est Show all endpoints of module. Si vous choisissez cette option, GoLand ouvrira la nouvelle fenêtre d'outils Endpoints, dans laquelle vous pourrez voir tous les points de terminaison de votre projet.

Vous pouvez utiliser Jump to source à partir de la fenêtre ou cliquer sur n'importe quel point de terminaison et exécuter des requêtes directement à partir de l'onglet du client HTTP.

GoLand affiche des suggestions de saisie semi-automatique pour les méthodes HTTP

Saisie semi-automatique pour les méthodes et les en-têtes

La saisie semi-automatique du code fonctionne désormais pour les méthodes HTTP et les en-têtes dans les fichiers Go.

Ouvrir un lien dans un navigateur

Soulignement des liens et des points de terminaison

Tous les liens et les points de terminaison dans les fichiers Go sont maintenant soulignés afin que vous puissiez les repérer facilement dans le code. Les liens sont cliquables et peuvent être ouverts dans un navigateur.

GoLand affiche les suggestions de saisie semi-automatique pour une requête gRPC

Prise en charge de la réflexion gRPC

If your project doesn't have a .proto file but the server supports gRPC reflection, you will be able to run requests and get completion for service and method names right from a running server.

Tests

Affichage d'erreur en cas d'utilisation d'un verbe de formatage incorrect

Formatage des chaînes de caractères pour testify/assert

GoLand signale désormais les erreurs si vous utilisez les mauvais verbes de formatage dans les fonctions testify/assert.

Débogueur

Rendre les libellés des onglets visibles dans la fenêtre Debug

Libellés d'onglet masqués

Pour maximiser l'espace utilisable dans la fenêtre d'outils Debug, nous avons masqué les libellés des onglets par défaut. Pour les afficher à nouveau ou pour personnaliser leur emplacement, utilisez l'option Show Tab Labels dans Layout Settings.

Kubernetes

Modifier les ressources chargées depuis un cluster

Modifier les ressources sur un cluster

Remarque : le plugin Kubernetes peut être installé dans Paramètres | Plugins.

Les ressources chargées depuis un cluster peuvent maintenant être modifiées depuis l'onglet de l'éditeur.

Paramètres où le chemin vers kubectl peut être modifié

Chemin personnalisé vers kubectl

Vous pouvez maintenant configurer manuellement un chemin vers kubectl s'il ne se trouve pas à l'emplacement standard. Pour définir votre chemin d'accès personnalisé, allez dans Settings | Build, Execution, Deployment | Kubernetes | Path to kubectl executable.

Utiliser la fonctionnalité de transfert de port à partir de la barre d'outils

Transfert de port

Nous avons ajouté la fonctionnalité de transfert de port pour les pods. Pour transférer des ports, vous pouvez utiliser l'icône de la barre d'outils ou cliquer droit sur un pod et choisir Forward Ports… dans le menu contextuel.

Action Describe Resource

Action Describe Resource dans la vue Services

Une nouvelle action Describe Resource est disponible pour toutes les ressources dans la vue Services. Vous pouvez l'appeler à partir du menu contextuel ou utiliser le bouton de la barre d'outils.

Événements de cluster affichés dans la vue Services.

Nœud pour les événements de clusters

Les événements de clusters sont maintenant affichés dans un nœud séparé dans la vue Services et fournissent des données sur les événements récents dans le système.

Saisie semi-automatique du code avec les fichiers de modèles Helm.

Prise en charge de Werf

Nous inaugurons une prise en charge limitée de l'éditeur pour werf.yaml et les fichiers des modèles Helm associés. La prise en charge initiale comprend la saisie semi-automatique du code, des inspections et des suggestions de correctifs rapides, la refactorisation et le renommage de .Values.werf.image.*, ainsi que la validation de certains champs comme les booléens et les int.

Docker

Fenêtre d'outils Services

Nouvelle interface utilisateur de la vue Services

Nous avons remanié l'interface utilisateur Docker dans la fenêtre d'outils Services. Cette refonte concerne les conteneurs, les images, les réseaux et les volumes.

Ajouter une cible Docker Compose

Prise en charge des cibles Docker Compose

Nous avons ajouté la prise en charge des cibles Docker Compose. Pour ajouter une cible, cliquez sur Run | Manage targets, puis Add new target.

Docker V2 accessible dans les paramètres Docker Registry.

Prise en charge de Docker Registry V2

GoLand prend maintenant en charge Docker Registry HTTP API V2.

Markdown

Icône Copy code dans l'éditeur Markdown

L'icône Copy code

Nous avons ajouté une icône Copy code aux blocs Markdown pour copier facilement du contenu dans le presse-papiers.

Exécuter une commande à partir d'un fichier Markdown

Exécution de commandes

Si un fichier Markdown contient des instructions avec des commandes que vous devez exécuter dans votre terminal, vous pouvez exécuter ces commandes directement depuis le fichier Markdown grâce à l'icône Run dans la gouttière.

Fichier Markdown avec nouvelle barre d'outils flottante

Barre d'outils flottante améliorée

Pour faciliter la mise en forme des fichiers Markdown, nous avons remanié la barre d'outils flottante qui s'affiche lors de la sélection du texte. Outre son nouveau design, la barre d'outils propose désormais une fonctionnalité de création de listes et un menu déroulant qui vous permet de sélectionner des styles d'en-tête.

Expérience utilisateur

Fenêtre d'outils Notifications

La nouvelle fenêtre d'outils Notifications

Nous avons remplacé l'instanсe Event Log par une nouvelle fenêtre d'outils Notifications afin de mettre en évidence les notifications importantes et utiles de l'IDE.

Boîte de dialogue Structural Search and Replace

Mise à jour de la boîte de dialogue Structural Search and Replace

La boîte de dialogue Structural Search and Replace a été remaniée et affiche maintenant une liste de tous les modèles afin de faciliter la navigation entre ces derniers.

Pour Structural Search and Replace, GoLand prend en charge XML, HTML, SQL et JavaScript.

Fractionnement uniforme des onglets de l'éditeur

Onglets divisés uniformément

Vous pouvez désormais répartir l'espace de travail de votre éditeur de façon homogène entre les différents onglets. Pour ce faire cliquez sur Settings | Advanced Settings | Editor Tabs et sélectionnez Equalize proportions in nested splits.

Exporter un diagramme UML

Exportation de diagrammes UML vers d'autres formats

Il est désormais possible d'exporter des diagrammes UML sous forme de fichiers yEd .graphml, JGraph .drawio, Graphviz .dot, Graphviz .dot avec positions, Mermaid .md, Plantuml, et IDEA .uml, ce qui les rend compatibles avec des outils tiers.

Contrôle de version

Informations sur la signature GPG dans le volet Commit details

Mise à jour du volet Commit details dans la fenêtre d'outils Git

Le volet Commit details comprend désormais des informations détaillées sur la signature GPG.

GoLand met en évidence les différences entre les lignes lorsque l'option Annotate with Git Blame est activée

Amélioration d'Annotate with Git Blame

Nous avons amélioré la fonctionnalité d'Annotate with Git Blame pour faciliter l'examen des modifications. Rider met en évidence la différence entre les lignes directement dans l'éditeur lorsque vous survolez une annotation. Si vous cliquez dessus, l'IDE ouvre la fenêtre d'outils Git Log.

Bases de données

Copier plusieurs tables vers un autre schéma

Copie de plusieurs objets

Vous pouvez désormais sélectionner plusieurs tables et les copier dans un autre schéma.

Sélectionnez les tables et appuyez sur F5 pour ouvrir la boîte de dialogue d'exportation. Comme pour l'exportation d'une seule table, vous pouvez mapper les colonnes, afficher le DDL de la nouvelle table et le modifier.

Modifier des champs dans les collections MongoDB

MongoDB : modifier des champs dans les résultats

Vous pouvez désormais modifier les résultats dans les collections MongoDB comme vous le feriez dans les bases de données relationnelles.

Remarque : pour connaître toutes les améliorations apportées aux bases de données dans la version 2022.1, consultez la page Nouveautés de DataGrip.

Développement web

GoLand reconnaît les composants globaux dans les fichiers Vue.

Améliorations pour Vue

Nous avons plusieurs améliorations pour Vue 3. Si vous définissez les composants comme globaux, l'IDE les reconnaîtra désormais dans vos fichiers .vue.

GoLand devrait également prendre en charge la syntaxe createApp. Il fera correspondre correctement les applications créées à l'aide de createApp avec leurs éléments connexes. Cette version inclut également la prise en charge de Nuxt 3, une nouvelle version du framework Vue.

GoLand résout les chemins dans la propriété href d'un composant Link.

Mises à jour de Next.js

Nous avons corrigé la prise en charge des pages. GoLand résout les chemins utilisés dans la propriété href de vos composants Link. La saisie semi-automatique du code, la navigation et les refactorisations comme Rename fonctionnent aussi.

Configuration de Webpack avec les modules ES

Prise en charge d'ESM pour la configuration de webpack

À partir de la version 2022.1, l'assistance au codage de webpack fonctionnera avec les modules ES dans vos fichiers webpack.config.js.

GoLand reconnait automatiquement Yarn et npm s'ils sont installés à l'aide de Volta.

Intégration avec Volta

GoLand est intégré avec Volta, un gestionnaire d'outils JavaScript. Il reconnaît automatiquement Yarn et npm s'ils sont installés à l'aide de Volta.

Remarque : pour connaître toutes les améliorations apportées au développement web dans la version 2022.1, rendez-vous sur la page des Nouveautés de WebStorm.

Mises à jour d'accessibilité

Le lecteur d'écran lit désormais les noms et les descriptions des branches Git dans l'onglet Log et fournit une invite vocale à utiliser Ctrl+L pour naviguer dans les filtres du Log.

En outre, plusieurs mises à jour pour la prise en charge de VoiceOver ont été introduites afin d'améliorer la prise en charge de l'accessibilité pour les utilisateurs de macOS.