- JetBrains a implémenté la saisie semi-automatique de code sur une ligne entière : une saisie semi-automatique exécutée localement, générée par l'IA et basée sur des LLM, dorénavant disponible gratuitement pour tous les utilisateurs de GoLand.
- Les performances d'indexation et de mise en évidence ont été considérablement améliorées.
- JetBrains a mis à jour et perfectionné l'AI Assistant, avec notamment des options supplémentaires pour la saisie semi-automatique du code et la génération de documentation.
- La prise en charge des Dev Container est désormais disponible hors du programme d'accès anticipé et apporte de nouvelles fonctionnalités intéressantes.
- GoLand 2024.1 vient avec la prise en charge des mises à jour de Go 1.22.
La nouvelle version apporte également de nombreuses améliorations de l'expérience utilisateur et des outils internes de JetBrains que nous allons explorer dans la suite en détail.
Saisie semi-automatique de code sur une ligne entière
GoLand 2024.1 inaugure la fonctionnalité de saisie semi-automatique de code sur une ligne entière, qui complète automatiquement des lignes entières de code à l'aide de modèles de deep learning contextuels exécutés localement. En plus de vous aider à gagner en vitesse et en efficacité, cette fonctionnalité s'exécute localement, sans envoi d'aucune donnée à des serveurs externes. Cette fonctionnalité est accessible à tous les utilisateurs de GoLand 2024.1. L'opportunité idéale de se familiariser avec l'IA !
Vous pouvez contrôler cette fonctionnalité et spécifier les langages pour lesquels vous souhaitez obtenir des suggestions de lignes complètes dans Settings | Editor | General | Code Completion | Machine Learning-Assisted Completion.
Améliorations des performances
Performances d'indexation améliorées
L'indexation est désormais beaucoup plus rapide dans GoLand. JetBrains a constaté des augmentations de vitesse de 30 % en moyenne. Naturellement, les résultats pourront varier d'un utilisateur à l'autre en fonction des spécificités de ses projets et du matériel qu'il utilise. N'hésitez donc pas à faire part à JetBrains des résultats que vous obtiendrez. Voici une illustration de l'indexation avec le framework Gin.
Plus d'éléments mis en évidence pendant l'indexation
Grâce à cette amélioration, la mise en évidence fonctionne désormais pour les références dès le démarrage de l'EDI.
AI Assistant
JetBrains continue de travailler sur l'AI Assistant pour l'enrichir de fonctionnalités et d'actions utiles supplémentaires. Dans cette version, GoLand apporte deux améliorations aux fonctionnalités d'IA existantes.
Saisie semi-automatique basée sur le cloud pour les structures et les interfaces
Dans la version 2023.3, JetBrains avait introduit la saisie semi-automatique inline pour les blocs de fonctions et de méthodes. Dans la version 2024.1, elle s'applique également aux déclarations de structures et d'interfaces. Lorsque la saisie semi-automatique fait une suggestion dans une déclaration de type, elle prend en compte le contexte de l'utilisation ainsi que la structure parente et les références. Cela améliore la pertinence des suggestions basées sur l'IA.
Génération de documentation pour les champs de structures et les méthodes d'interfaces
GoLand génère désormais de la documentation pour les types entiers, les méthodes d'interface et les champs de structures. Pour générer de la documentation, placez le curseur dans une définition de champ et sélectionnez l'action d'IA Write Documentation. Vous pouvez également saisir // avant la définition du champ pour déclencher la suggestion.
Les utilisateurs peuvent maintenant personnaliser les prompts pour certaines actions d'IA, telles que la génération d'un message de commit. Cela permet d'obtenir des résultats plus pertinents et personnalisés.
À partir de la version 2024.1, vous pouvez exporter un fichier contenant des extraits de code générés par le chat IA. Vous pouvez également joindre des fichiers pour fournir davantage d'éléments de contexte lorsque vous posez des questions dans le chat.
Développement à distance
Dans sa version 2024.1, l'EDI améliore l'expérience de développement à distance : la mise en évidence, le rendu et la fluidité globale du développement sont maintenant proches de ce qu'offre la programmation locale. Vous pouvez voir par vous-même à quel point la mise en évidence et la saisie semi-automatique sont presque aussi rapides dans le cloud que pour les bases de codes locales.
De plus, les utilisateurs peuvent désormais gérer des projets distants directement à partir du client de l'EDI, créer de nouveaux projets distants ou ouvrir des projets existants.
Dev Containers
Les utilisateurs peuvent maintenant exécuter un dev container depuis l'écran d'accueil (à partir de leur disque local ou de leur VCS). Il leur fallait auparavant ouvrir le projet en premier.
Les dev containers sont maintenant livrés avec des modèles de fichiers pour tous les langages de programmation populaires.
Des paramètres ont été ajoutés pour permettre aux utilisateurs de configurer leur EDI backend JetBrains (par exemple GoLand ou CLion) directement dans le fichier devcontainer.json.
Dans GoLand 2024.1, les fichiers devcontainer.json sont reconnus où qu'ils soient stockés dans le projet. Dans les versions antérieures, il fallait obligatoirement les stocker dans le dossier ~/.devcontainer.
Prise en charge des mises à jour de Go 1.22
Le langage Go évolue constamment et JetBrains fait de son mieux pour offrir une prise en charge de toutes ses nouvelles fonctionnalités le plus rapidement possible.
Prise en charge de range pour les entiers et les fonctions
Go 1.22 permet d'itérer facilement sur des entiers et des fonctions de manière plus concise qu'avec une boucle for classique.
Prise en charge du vendoring pour les espaces de travail Go
Le vendoring vous permet de mieux contrôler les dépendances utilisées dans votre projet, car il vous permet de les stocker dans le référentiel du projet. Dans Go 1.22, les commandes des espaces de travail peuvent utiliser un répertoire vendor contenant les dépendances de l'espace de travail. GoLand prend désormais en charge cette amélioration.
Mise à jour de l'analyse des flux de données (DFA)
L'analyse des flux de données a été introduite dans GoLand 2023.3, et dans la version 2024.1, la fonctionnalité est désormais suffisamment perfectionnée pour être activée par défaut. L'analyse des flux de données de GoLand prend actuellement en charge trois inspections : Constant conditions detection, Potential nil dereference, et Error may be not nil.
Prise en charge améliorée de Terraform
JetBrains a apporté des améliorations significatives à sa prise en charge pour le développement d'infrastructures sous forme de code avec Terraform, destinée aux développeurs, aux ingénieurs de fiabilité de site (SRE) et aux spécialistes DevOps. Cette mise à jour comprend une série de nouvelles fonctionnalités et d'améliorations visant à simplifier le processus de création, de gestion et d'évolution de votre infrastructure.
Suggestion d'exécuter terraform init
Pour initialiser le répertoire de travail avec les fichiers de code Terraform, nous devons d'abord exécuter terraform init. On l'oublie souvent, ce qui conduit à des messages d'erreur de la part de Terraform, ainsi qu'à une saisie automatique incomplète et à un affichage partiel de la documentation. Pour éviter cela, l'EDI suggère désormais explicitement d'exécuter terraform init.
Prise en charge des fournisseurs tiers à partir du registre Terraform
Le plugin Terraform offre désormais des capacités étendues de saisie semi-automatique du code pour plus de 3 900 fournisseurs Terraform tiers, facilitant ainsi l'écriture de code pour les développeurs. De plus, vous disposerez de la documentation la plus récente pour chacun de ces fournisseurs, ainsi que de leurs versions spécifiques, directement dans l'EDI.
Prise en charge du langage de modèle Terraform (tftpl)
JetBrains annonce la prise en charge du langage de modèle de Terraform (tftpl), qui va améliorer votre workflow en facilitant la création de fichiers de configuration, de scripts ou de tout code dont vous avez besoin pour la configuration de serveurs web, de réseaux ou de services. Un ajout important pour faciliter la création de modèles ! Vous pouvez maintenant remplir les valeurs de vos modèles de façon dynamique au moment de l'exécution, ce qui simplifie le processus de rendu des modèles pour des utilisations spécifiques.
Le langage de modèle de Terraform prend non seulement en charge les éléments de modèles variables et les éléments de flux de contrôle, mais inclut également des listes, de mappages et la possibilité de générer des formats JSON et YAML.
Expérience utilisateur et autres fonctionnalités
Nouveau terminal
GoLand 2024.1 offre un terminal remanié, avec des améliorations visuelles et fonctionnelles pour rendre les tâches basées sur le terminal plus simples et plus pratiques. Ces améliorations concernent notamment l'historique, la navigation entre les blocs et la disponibilité de conseils pour chaque commande.
La nouvelle fenêtre d'outils Terminal s'intègre parfaitement à la nouvelle interface utilisateur, notamment du point de vue du design, et fournit une fonctionnalité de saisie semi-automatique pour les commandes, chemins, arguments et options.
Possibilité de réduire l'échelle de l'EDI entier
GoLand 2024.1 offre la possibilité d'effectuer un zoom arrière sur l'ensemble de l'EDI. Initialement, la plage d'échelle ne comprenait que l'option de zoom avant, entre 100 % et 200 %. Dans cette version, vous pouvez également réduire l'EDI à 90 %, 80 % ou 70 %.
Lignes épinglées dans l'éditeur
Pour simplifier l'utilisation de fichiers volumineux et l'exploration de nouvelles bases de codes, JetBrains inaugure les lignes épinglées dans l'éditeur. Cette fonctionnalité conserve des éléments structurels clés, tels que les débuts de classes ou de méthodes, épinglés en haut de l'éditeur pendant que vous faites défiler l'écran. Les portées restent ainsi toujours visibles et vous pouvez naviguer rapidement dans le code en cliquant sur une ligne épinglée.
Mises à jour pour le VCS
Révision du code dans l'éditeur
GoLand offre maintenant un workflow de révision de code plus fluide et agile pour les utilisateurs de GitHub et de GitLab. Les auteurs et les réviseurs peuvent désormais interagir directement et en toute transparence au sein de l'éditeur, grâce au nouveau mode de révision.
États des vérifications de CI dans la fenêtre d'outils Git
JetBrains a introduit une nouvelle colonne dans l'onglet Log de la fenêtre d'outil Git pour vous permettre de consulter facilement les résultats des vérifications de commits GitHub effectuées par votre système de CI. Cliquez simplement sur l'onglet pour voir tous les détails des vérifications de la CI.
Indicateurs visuels pour les mises à jour GitHub en attente
JetBrains a introduit des indicateurs visuels pour vous informer des mises à jour en attente dans votre workflow de révision du code. Lorsque des modifications requièrent votre attention, un badge en forme de point bleu apparaît sur l'icône de la fenêtre d'outils. En outre, pour vous assurer de ne pas manquer les mises à jour dans votre processus de révision du code, les requêtes d'extraction non vues sont signalées par un point bleu.
Améliorations pour le web et les bases de données
GoLand hérite des mises à jour des EDI WebStorm et DataGrip.
Nouveautés et téléchargement de GoLand 2024.1