IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

GoLand 2021.3 disponible, l'EDI de JetBrains vient avec la prise en charge native des projets Go en WSL,
Le développement à distance en mode bêta et bien d'autres améliorations

Le , par Michael Guilloux

89PARTAGES

5  0 
JetBrains a publié la troisième majeure de l'année pour GoLand, son EDI visant à fournir un environnement ergonomique pour le développement en Go. GoLand 2021.3 propose une prise en charge native pour les projets Go en WSL, la refactorisation Inline Function et la prise en charge du développement à distance en mode bêta.

À partir de cette version, gofmt lors de la sauvegarde est activé par défaut. GoLand 2021.3 comporte également quelques améliorations pour le débogueur, comme Delve pour ARM64 ou l'option Show Types. Notons aussi deux nouveaux postfix pour convertir les chaînes de caractères en nombres, un nouveau modèle pour les tests de table avec les assertions testify, et une saisie semi-automatique améliorée pour les valeurs dans les balises struct.

Et comme d'habitude, la nouvelle version de GoLand apporte des améliorations en matière de développement web et un éventail de nouvelles fonctionnalités pour travailler avec des bases de données. Nous présentons ici les nouveautés et améliorations de cette version avec plus de détails.


Prise en charge de WSL

JetBrains a ajouté la possibilité d'ouvrir un projet dans WSL et d'indiquer un SDK qui s'y trouve. Si vous créez un projet (ou que vous en ouvrez un) dans WSL, GoLand vous indiquera que pour ce projet, vous devez utiliser un SDK Go dans WSL. Vous pouvez télécharger un SDK Go ou choisir un SDK dans le sous-répertoire \\wsl$.


Outil de mise en forme

gofmt lors de l'enregistrement

L'option Reformat code, qui vous permet d'exécuter gofmt et le propre outil de mise en forme de GoLand lors de l'enregistrement, est maintenant activée par défaut.


Ce changement peut prendre certaines personnes par surprise, c'est pourquoi JetBrains a ajouté une notification. Elle s'affichera une fois dans chaque projet. Vous pouvez la désactiver en cliquant sur Don't show again.

Vous pouvez cliquer sur Edit actions on save. L'EDI ouvrira Settings | Tools | Actions on save, qui vous permet de gérer les paramètres.


Refactorisations

Inline Function et Inline Method

La refactorisation Inline est maintenant disponible pour les fonctions et les méthodes. Pour l'essayer, placez le curseur sur une fonction, une méthode ou une invocation, puis appuyez sur Ctrl + Alt + N.

Lorsque vous invoquez la refactorisation Inline, une fenêtre contextuelle s'ouvre avec plusieurs options. À partir de cette fenêtre contextuelle, vous pouvez également ouvrir l'aperçu de la refactorisation Refactoring Preview, qui vous aide à trouver toutes les invocations d'une méthode ou d'une fonction.


Saisie automatique

Meilleure gestion des styles des valeurs dans les balises struct

JetBrains a amélioré le traitement des différents types de mots composés (camelCase, snake_case, etc.) lorsque vous ajoutez des balises dans des champs struct. Lorsque vous remplissez une balise, GoLand vous propose une liste de plusieurs options. Une fois que vous avez fait votre choix, l'EDI s'en souvient et il vous proposera le même style en premier dans la liste pour les autres champs de cette struct.


Saisie semi-automatique Postfix

Nouveaux postfix pour la conversion des chaînes en nombres

Deux nouveaux postfix permettent de convertir les chaînes de caractères en nombres. Tapez un nombre entre guillemets, puis tapez un point, et GoLand vous proposera deux options pour analyser ce nombre : parseInt et parseFloat.


Show usages

Aperçu de la source

La fonction Show Usages a été améliorée. Vous pouvez désormais activer l'aperçu du code source pour une occurrence trouvée en cliquant sur l'icône de carré.


Cibles pour l'exécution

Configuration des dossiers pour les sources et les exécutables

Vous pouvez maintenant donner des noms significatifs aux dossiers de la machine distante où sont stockés les sources et les exécutables de votre projet. Pour configurer les dossiers, accédez à Run | Manage targets | Additional Settings.


Cible d'exécution par défaut à l'échelle du projet

Il est désormais possible de définir une cible d'exécution par défaut pour l'ensemble du projet. Accédez à Run | Manage targets. Une fenêtre affiche l'option Project default target. Si vous choisissez une cible particulière pour le projet, toutes les nouvelles configurations seront créées avec cette cible.


Prise en charge du proxy pour les connexions SSH

JetBrains a ajouté la nouvelle section HTTP/SOCKS Proxy dans SSH Configurations pour vous permettre de spécifier un serveur proxy. Vous trouverez cette section dans Settings | Tools | SSH Configurations. Vous pouvez également, à partir du projet ouvert, cliquer sur Run | Manage Targets | ...


Débogueur

Représentation des interfaces nil améliorée

En Go, les interfaces ont deux composantes, un type et une valeur de ce type. Pour qu'une interface soit nil, ces deux composantes doivent être nil.

Si vous avez une interface dont la valeur contient un pointeur nil vers un int, cette interface ne sera pas égale à nil, car le type interne n'est pas nil (c'est *int). Cela peut prêter à confusion.

Pour détecter de tels cas, JetBrains a modifié la représentation des interfaces dans l'onglet Variables de la fenêtre d'outil Debug. Par exemple, si vous avez une interface avec le type interne *int, et la valeur nil, elle s'affichera comme ceci : {interface{} *int} *int(nil).


Noms de paquets courts dans l'onglet Variables

GoLand n'affiche plus le nom complet du paquet dans l'onglet Variables du débogueur. Vous ne verrez plus que la dernière partie du nom complet.


Masquer/afficher les types d'objets

Si les types d'objets prennent trop de place dans l'onglet Variables, vous pouvez cliquer avec le bouton droit de la souris dans la zone de l'onglet et désactiver l'option Show Types dans le menu qui s'affiche. Vous pourrez la réactiver en la sélectionnant à nouveau dans le même menu.


Delve pour Linux ARM64

À partir de cette version, GoLand intègre Delve conçu pour l'architecture ARM64 et le débogage sur Linux ARM fonctionne désormais automatiquement. JetBrains a également amélioré le message d'erreur lorsque GoLand n'intègre pas Delve pour des architectures spécifiques. L'EDI vous précise désormais explicitement la nature du problème.


Tests

Un modèle pour les assertions testify

JetBrains a ajouté un nouveau modèle pour les tests de table avec des assertions testify. Si vous avez déjà utilisé assert dans votre paquet, GoLand générera du code avec les assertions lorsque vous appuyez sur Alt + Ins et choisissez l'option nécessaire.


Nouveaux correctifs rapides

Correctif rapide de la mise en forme des chaînes de caractères des erreurs

GoLand dispose désormais d'un correctif rapide pour une inspection qui vous avertit de la mise en forme incorrecte des chaînes d'erreur : « Error strings should not be capitalized or end with punctuation » (Les chaînes de caractères des erreurs ne doivent pas comporter de majuscules ou finir par un signe de ponctuation). Appuyez sur Alt + Entrée, et GoLand vous proposera de corriger le format de la chaîne.


Correctif rapide pour export type

Si vous avez écrit une fonction exportée qui renvoie un type non exporté, GoLand vous suggérera un correctif rapide pour exporter ce type.


Développement à distance

GoLand prend désormais en charge une version bêta des workflows de développement à distance. Vous pouvez configurer des workflows de développement à distance directement à partir de l'écran de bienvenue de GoLand. Vous pouvez aussi utiliser la nouvelle application JetBrains Gateway, qui sert de point d'entrée à tous vos backends distants.


Client HTTP

Prise en charge des requêtes gRPC

Le client HTTP de GoLand prend maintenant en charge les requêtes gRPC et leur saisie semi-automatique. Si vous initiez vos requêtes par le mot-clé GRPC, le client HTTP les traitera comme des requêtes gRPC.

Vous pouvez générer automatiquement une requête gRPC dans le client HTTP en cliquant sur les icônes de gouttière dans vos fichiers .proto.


Actuellement, le client HTTP peut exécuter des RPC unaires et en streaming serveur. Comme dans les requêtes HTTP ordinaires, le corps de la requête et les réponses sont des fichiers JSON simples.

Améliorations du VCS

Checkout and Rebase onto Current pour les branches distantes

L'action Checkout and Rebase onto Current vous permet d'extraire la branche sélectionnée et de la rebaser sur une branche actuellement extraite. Elle est maintenant disponible pour les branches distantes.

Nouvelle action Push All up to Here

Parfois, plusieurs commits sont prêts à être livrés alors que d'autres sont encore en cours de réalisation. Dans ce cas, il est préférable de n'envoyer par push que ceux en lesquels vous avez confiance. Vous pouvez maintenant envoyer les commits en push jusqu'à celui que vous avez sélectionné dans l'onglet Log de la fenêtre d'outil Git. Pour cela, choisissez le commit auquel vous voulez vous arrêter, cliquez droit pour appeler le menu contextuel, et sélectionnez la nouvelle action Push All up to Here.


Réorganisation des paramètres VCS

JetBrains a amélioré l'accessibilité et l'organisation des paramètres VCS. Le nœud Version Control dans Settings répertorie désormais tous les paramètres disponibles.


Améliorations de l'interface utilisateur

Evaluate expression dans l'onglet Variables

La fonctionnalité Evaluate expression est désormais disponible dans l'onglet Variables de la fenêtre d'outil Debug.

Onglets fractionnés dans la fenêtre d'outil Run

Vous pouvez maintenant diviser la fenêtre d'outil Run en glissant-déposant les onglets dans la zone en surbrillance. Pour annuler cette division, cliquez droit sur le volet supérieur et sélectionnez Unsplit dans le menu contextuel.


Nouvelle fenêtre Bookmarks

GoLand dispose d'une nouvelle fenêtre d'outil Bookmarks. À partir de maintenant, tous les fichiers et dossiers que vous marquez comme importants à l'aide du raccourci F11 se retrouveront dans cette fenêtre.

Profileur

Visualiser les différences dans des instantanés

Vous pouvez visualiser la différence entre deux instantanés sur un graphique de flamme. Appuyez deux fois sur Maj et tapez « Open Profiler Snapshots » dans la barre de recherche. Ouvrez un instantané de la liste, répétez les mêmes actions, et ouvrez-en un autre. Cliquez ensuite sur le bouton Compare With Baseline dans l'onglet de l'un des instantanés. Dans le menu, sélectionnez l'instantané auquel vous souhaitez comparer. Un onglet Diff distinct s'ouvrira avec les résultats de la comparaison.


Terminal

ConPTy

Le terminal de GoLand prend en charge la nouvelle API ConPTY sous Windows. JetBrains a résolu plusieurs problèmes concernant l'ancienne implémentation, qui reposait sur winpty, et a activé PTY par défaut sous Windows. Avec ConPTY, les couleurs 24 bits sont prises en charge dans le terminal intégré.

Typeahead

Auparavant, lorsque vous tapiez des caractères dans le terminal de GoLand en travaillant sur une machine distante, l'EDI ne pouvait pas afficher les caractères aussi rapidement que sur une machine locale en raison de la latence.

Ce n'est plus un problème grâce à la prise en charge de typeahead. Le terminal intégré prédit les modifications du texte et les affiche instantanément en gris clair.

Développement web

Prise en charge des URL dans les déclarations import

Vous pouvez télécharger des modules ES6 distants à l'aide d'un correctif rapide sur le chemin d'importation dans les fichiers ES6. Le module sera téléchargé avec toutes ses dépendances. Pour l'essayer, placez le curseur sur le chemin d'importation, puis appuyez sur Alt+Entrée et sélectionnez Download module.


Amélioration de la saisie semi-automatique du code pour le HTML

JetBrains a amélioré la saisie semi-automatique du code en HTML. Chaque fois que vous tapez un nom de balise ou une abréviation dans l'éditeur ou que vous invoquez la saisie semi-automatique de code, GoLand vous présente immédiatement des suggestions pertinentes.

Auparavant, il ne les montrait que si vous commenciez par taper un crochet ouvrant (<). La saisie semi-automatique du code pour les références aux entités de caractères a également été améliorée.

Nouvelle inspection pour la mise à jour des dépendances

Vous pouvez mettre à jour vos paquets npm vers la dernière version directement depuis l'éditeur. Ouvrez votre fichier package.json, placez le curseur sur la version du paquet que vous souhaitez mettre à jour, puis appuyez sur Alt+Entrée et sélectionnez Update … to the latest version.


Placer des éléments sur plusieurs lignes

GoLand a été mis à jour avec une action d'intention pour les projets JavaScript qui vous permet de mettre rapidement des éléments séparés par des virgules sur des lignes séparées, et, si nécessaire, de les remettre sur une seule ligne.

Améliorations des bases de données

Aggregate view pour une plage de cellules

JetBrains a ajouté la possibilité d'afficher le regroupement Aggregate view pour une plage de cellules. Sélectionnez simplement la plage de cellules pour laquelle vous voulez afficher la vue, puis faites un clic droit et sélectionnez Show Aggregate View. Une valeur agrégée unique s'affiche dans la barre d'état, et vous pouvez désigner la valeur que vous souhaitez.


Onglets indépendants pour les éditeurs

Si vous fractionnez l'éditeur et ouvrez la même table, les éditeurs de données seront complètement indépendants. Vous pouvez y définir des filtres et un tri différents.

Vérification des expressions booléennes

JetBrains a une nouvelle inspection pour les expressions booléennes dans les clauses WHERE et HAVING. Si l'expression ne semble pas être explicitement booléenne, l'EDI la surligne en jaune et vous avertit avant d'exécuter une telle requête.

Cela fonctionne pour ClickHouse, Couchbase, Db2, H2, Hive/Spark, MySQL/MariaDB, Redshift, SQLite et Vertica. Dans toutes les autres bases de données, cela est signalé comme une erreur.

Navigation par clé étrangère à l'aide de plusieurs valeurs

Dans l'éditeur de données, vous pouvez sélectionner plusieurs valeurs et naviguer vers les données correspondantes.

Types de colonne automatiques dans les fichiers CSV

GoLand détecte les types de colonnes dans les fichiers CSV, et vous pouvez maintenant trier les données en fonction d'une valeur numérique. Auparavant, les données dans les colonnes étaient traitées comme du texte et le tri ne fonctionnait pas comme prévu.

MongoDB : saisie semi-automatique pour filter {} et sort {}

La saisie semi-automatique du code fonctionne désormais lors du filtrage des données dans les collections MongoDB.

Police personnalisée pour l'éditeur de données

Vous pouvez définir les polices pour l'éditeur de données séparément du reste de l'EDI. Pour choisir la police, cliquez sur Settings | Tools | Database | Data views | Use custom font.

Mises à jour d'accessibilité

JetBrains a résolu certains problèmes d'accessibilité afin d'améliorer le confort du travail avec le lecteur d'écran. JetBrains a désactivé la fenêtre contextuelle d'outil et la fenêtre contextuelle de documentation rapide qui s'affichaient au passage de la souris.

La prise en charge de l'accessibilité sous macOS a également été renforcée. L'éditeur de logiciels pour développeurs a résolu plusieurs problèmes liés à la mise au point de VoiceOver et rendu possible la création de projets à l'aide d'un lecteur d'écran. Pour minimiser les distractions pendant que vous codez, JetBrains a réduit le nombre d'infobulles d'aide qui émettent des sons.

Nouveautés et téléchargement de GoLand 2021.3

Une erreur dans cette actualité ? Signalez-nous-la !