Nouveautés dans IntelliJ IDEA 2021.2

IntelliJ IDEA 2021.2 inaugure l'analyse à l'échelle du projet pour Java, de nouvelles actions se déclenchant lors de l'enregistrement des modifications, une nouvelle interface utilisateur pour gérer les dépendances Maven et Gradle, ainsi que plusieurs mises à jour. Pour en savoir plus sur les points essentiels des nouvelles fonctionnalités, visionnez notre vidéo de présentation ci-dessous ou poursuivez votre lecture !

Principales mises à jour

Analyse à l'échelle du projet pour les projets Java
Ultimate

Dans cette version, nous introduisons une nouvelle fonctionnalité pour détectera les erreurs dans l'ensemble du projet avant la compilation : l'analyse à l'échelle du projet. En cliquant sur l'icône dédiée dans la fenêtre d'outils Problems, vous activez une vérification qui sera effectuée à chaque modification du code. Une fois le processus terminé, l'IDE affiche toutes les erreurs trouvées, y compris celles qui ne sont détectées qu'en examinant l'ensemble du projet.

Cette fonctionnalité s'applique aux projets de petite et moyenne envergure.

Actions effectuées lors de l'enregistrement

Nous avons ajouté plusieurs actions qui se déclenchent lors de l'enregistrement du projet, notamment la remise en forme du code et l'optimisation des importations. Elles sont toutes réunies dans Preferences / Settings | Tools | Actions on Save. Vous pouvez les configurer facilement en cochant les cases nécessaires. Si vous souhaitez ajuster plus précisément les paramètres d'une action, il vous suffit de passer la souris sur cette action et de cliquer sur le lien de configuration.

Nouvelle interface utilisateur pour gérer les dépendances Maven et Gradle

Both IntelliJ IDEA Community Edition and IntelliJ IDEA Ultimate now include Package Search, a powerful new interface to manage your project dependencies. Package Search vous permet de trouver de nouvelles dépendances, de les ajouter facilement et de gérer les dépendances existantes. Le nouveau plugin affiche les informations relatives à chaque dépendance, notamment la disponibilité des mises à jour.

Nous avons également ajouté une inspection qui vous permet d'appliquer les mises à jour disponibles directement dans l'éditeur.

Actuellement, Package Search fonctionne avec les projets Maven et Gradle. Une prise en charge expérimentale pour les projets sbt est également disponible avec les versions EAP du plugin Scala. Cliquez ici pour en savoir plus.

Éditeur

Mise à jour des descriptions des inspections et des correctifs rapides

Mise à jour des descriptions des inspections et des correctifs rapides

Nos inspections et correctifs rapides sont maintenant décrits en détail. Les descriptions mises à jour détaillent les modifications suggérées par l'inspection et les raisons qui les justifient. Certaines inspections sont accompagnées d'exemples d'utilisation. Découvrez-les dans Preferences/Settings | Editor | Inspections.

Vue Structure des Diagrammes

Vue Structure des Diagrammes

Les diagrammes sont maintenant plus informatifs grâce à la vue Structure qui contient une carte de votre diagramme avec un petit aperçu du bloc sélectionné et de ses voisins. La nouvelle vue Structure prend en charge la mise à l'échelle, le déplacement du canevas, le mode loupe, la modification de la disposition et l'exportation d'un diagramme vers une image.

Plusieurs années de copyright

La notice de copyright de votre projet peut désormais inclure à la fois l'année de création du projet et l'année de la version actuelle. Le modèle actualisé qui contient les deux dates est disponible dans Preferences/Settings | Editor | Copyright | Copyright profile.

Amélioration de la prise en charge de Markdown

IntelliJ IDEA 2021.2 apporteplusieurs mises à jour à la prise en charge de Markdown. Il est possible de convertir des fichiers .md vers différents formats (.html, .docx, .pdf) et inversement. Nous avons également réglé les problèmes de mise en forme des listes. À présent Entrée, (Maj) Tab et l'action Reformat fonctionnent correctement. Vous pouvez modifier la taille d'une image, ajouter une description et glisser-déposer des images au lieu d'écrire une balise HTML avec un chemin d'accès au fichier. De plus, la nouvelle barre d'outils légère, qui comporte toutes les actions les plus populaires, ne s'affiche que lors d'une sélection afin de ne pas vous distraire des tâches importantes.

Expérience utilisateur

Accès rapide aux projets Eclipse

Accès rapide aux projets Eclipse

IntelliJ IDEA peut détecter les projets Eclipse stockés localement sur votre machine et vous permet de les ouvrir à partir de l'écran d'accueil. S'il s'agit de votre première ouverture de l'IDE, sélectionnez l'option Open existing Eclipse projects. Dans le cas contraire, les projets Eclipse détectés automatiquement s'afficheront dans le nœud dédié parmi les projets récents.

Paramètres avancés

Paramètres avancés

Si vous devez configurer certaines options spécifiques à un cas d'utilisation dans IntelliJ IDEA, rendez-vous dans le nouveau nœud Advanced Settings dans Preferences/Settings. Vous pouvez par exemple ajouter une marge gauche en mode Distraction-free ou paramétrer le curseur pour qu'il se déplace vers le bas après avoir utilisé l'action Comment with Line Comment.

Organisation des fenêtres d'outils par glisser-déposer

Organiser les fenêtres d'outils par glisser-déposer

Vous pouvez maintenant glisser et déposer une fenêtre d'outils à l'emplacement souhaité dans la fenêtre principale de l'IDE ou dans une fenêtre séparée. Pour ce faire, cliquez dans la barre de nom de la fenêtre d'outils, puis déposez-la à n'importe quel endroit mis en évidence.

Nettoyage automatique du cache et des journaux

Nettoyage automatique du cache et des journaux

IntelliJ IDEA nettoie automatiquement tous les répertoires de cache et de journaux dont la dernière mise à jour remonte à plus de 180 jours. Ce processus n'affecte pas les paramètres du système et les répertoires de plugins. Vous pouvez initier le processus manuellement dans Help | Delete Leftover IDE Directories.

Notifications de plugins manquants

Notifications de plugins manquants

Si votre projet utilise un framework qui nécessite un plugin pour fonctionner dans IntelliJ IDEA, l'IDE vous en informe et vous propose de l'activer directement à partir de cette notification.

Nouvelle option de navigation dans Preferences/Settings

Nouvelle option de navigation dans Preferences/Settings

Nous avons simplifié la navigation dans Preferences/Settings en ajoutant des flèches en haut à droite de la fenêtre. Elles vous permettent d'aller et venir rapidement entre les sections que vous avez ouvertes.

Notifications de mise à jour depuis JetBrains Toolbox App

Notifications de mise à jour depuis JetBrains Toolbox App

Votre IDE vous informe lorsque des mises à jour de produits apparaissent dans JetBrains Toolbox App. Si une nouvelle version est disponible en téléchargement, vous pouvez faire la mise à niveau directement dans IntelliJ IDEA. Pour utiliser cette fonctionnalité, vous devez avoir JetBrains Toolbox App 1.20.8804 ou une version.

Accès rapide au mode économie d'énergie

Accès rapide au mode économie d'énergie

IntelliJ IDEA dispose d'un mode économie d'énergie (Power Save) pour prolonger le temps de batterie de votre ordinateur portable. La gestion de ce mode se fait maintenant dans la barre d'état. Faites un clic droit sur la barre d'état et sélectionnez Power Save Mode : une nouvelle icône s'affichera en bas à droite dans l'IDE. Il vous suffit de cliquer sur cette icône pour activer ou désactiver le mode.

Mises à jour d'accessibilité

IntelliJ IDEA 2021.2 apporte plusieurs mises à jour utiles pour coder avec le mode lecteur d'écran activé sous macOS. Vous pouvez désormais entendre les suggestions de saisie semi-automatique du code, le contenu de la boîte combo sélectionnée et des listes de boîtes combo, ainsi que les résultats de vos requêtes dans Search Everywhere.

Meilleure réactivité de l'interface utilisateur

Nous poursuivons notre travail d'amélioration de la réactivité de l'interface utilisateur et de réduction des blocages inattendus. Dans cette version, nous avons réussi à supprimer les blocages de l'interface utilisateur lors de l'utilisation des menus contextuels, fenêtres contextuelles et barres d'outils. Nous avons également sorti du thread de l'interface utilisateur certaines opérations nécessitant des index, ce qui doit permettre d'éliminer certains blocages dans d'autres situations.

Java

Paramètres de couleurs axés sur la visibilité

Paramètres de couleurs axés sur la visibilité

Il est désormais plus facile de distinguer les membres Java publics, protégés et privés (méthodes, champs et classes) car vous pouvez configurer les paramètres de couleur de ces derniers dans Preferences/Settings | Editor | Color Scheme en dépliant le nœud Visibility.

Nouvel assistant de projet JavaFX

Nouvel assistant de projet JavaFX

La configuration d'un nouveau projet JavaFX est maintenant plus facile. En seulement deux étapes, vous pouvez ajouter un SDK de projet, un langage, le système de build souhaité, un framework de test et une ou plusieurs bibliothèques fréquemment utilisées accompagnées de brèves descriptions.

Nouvelles inspections

Nous avons ajouté une série de nouvelles inspections pour répondre à des cas d'utilisation particuliers dans l'analyse des flux de données. Il y a par exemple des inspections permettant de suivre une plage de valeurs à virgule flottante ou la taille d'une collection pour les méthodes de mise à jour. La nouvelle inspection Write-only object vous avertit lorsque vous modifiez un objet mais ne lui envoie pas de requêtes pour les classes personnalisées définies dans le projet et la bibliothèque standard.

Pour en savoir plus sur les autres inspections ajoutées ou améliorées, lisez cet article de blog.

Kotlin

Saisie semi-automatique basée sur le machine learning

Saisie semi-automatique basée sur le machine learning

À partir de la version 2021.2, la saisie semi-automatique du code Kotlin fonctionne par défaut sur la base du mécanisme de machine learning. Les suggestions de code sont plus soigneusement hiérarchisées car l'IDE s'appuie sur les choix de milliers d'utilisateurs réels dans des situations similaires. Vous pouvez configurer la saisie semi-automatique du code assistée basée sur le machine learning dans Preferences/Settings | Editor | Code Completion.

Lancement des tests avant la fin de l'analyse du code

Lancement des tests avant la fin de l'analyse du code

Auparavant, vous deviez attendre la fin de l'analyse du code avant de lancer l'exécution de vos tests. Dans la version actuelle, vous pouvez lancer des tests immédiatement après avoir ouvert le fichier en cliquant sur l'icône Run test dans la gouttière.

Mises à jour du débogueur

Mises à jour du débogueur

Nous avons apporté quelques améliorations et mises à jour à notre agent de coroutines dans le débogueur. L'agent de coroutines est désormais disponible via l'onglet Coroutines de la fenêtre d'outils Debug. Il fonctionne pour les configurations d'exécution Java avec une dépendance à kotlinx.coroutines, et pour les configurations d'exécution Spring et Maven.

Nous avons également corrigé un problème où des variables locales qui n'étaient pas utilisées après le passage d'un point de suspension disparaissaient dans la vue Variables de la fenêtre d'outils Debugger.

Marge de manœuvre élargie durant l'indexation

Marge de manœuvre élargie durant l'indexation

Ne perdez pas une minute de plus ! Pendant que l'IDE indexe un projet, vous pouvez exécuter et déboguer votre application. Les boutons associés à Run/Debug Configuration restent actifs pendant l'indexation.

Prise en charge de Kotlin pour WSL 2 et Run Targets

Prise en charge de Kotlin pour WSL 2 et Run Targets

Dans IntelliJ IDEA 2021.1, nous avions introduit la prise en charge de WSL 2 et de la fonctionnalité Run Targets. Dans la v.2021.2, vous pouvez utiliser ces fonctionnalités pour Kotlin.

Inspection pour simplifier la chaîne d'appel sur le type de collection

Inspection pour simplifier la chaîne d'appel sur le type de collection

Dans cette version, nous avons ajouté une inspection qui aide à simplifier la syntaxe et à combiner plusieurs appels en un lorsque vous appelez des méthodes en chaîne dans une collection.

Action d'intention pour la conversion de buildString

Action d'intention pour la conversion buildString.

Dans les versions précédentes, vous deviez saisir manuellement buildString pour personnaliser votre code. Notre nouvelle action d'intention vous permet de l'appliquer automatiquement en deux clics.

Scala

Meilleure prise en charge de Scala 3

Meilleure prise en charge de Scala 3

Pour cette version nous nous sommes principalement concentrés sur la prise en charge de Scala 3, qui a donc été considérablement améliorée. L'indexation est désormais rapide, précise et indépendante de la version. Vous pouvez créer des projets Scala 3 basés sur sbt et .idea, ainsi que des SDK Scala 3, de façon normale. L'éditeur est maintenant capable de mieux gérer les indentations importantes. Nous avons pris en charge les constructs Scala 3 dans les projets Scala 2 (-Xsource:3). Des améliorations ont entre autres été apportées au débogueur, à l'outil de mise en forme, au REPL, à l'importation automatique, aux enums et aux méthodes d'extension ! (Cela dit, n'oubliez pas que la prise en charge de Scala 3 est toujours en cours et n'est pas encore parfaite)

Mise en évidence basée sur le compilateur

Mise en évidence basée sur le compilateur

Comme il est d'usage sur la plateforme IntelliJ, le plugin Scala est doté d'une mise en évidence des erreurs intégrée. Elle est rapide, légère et prend en charge toutes les fonctionnalités standard d'IntelliJ IDEA. Toutefois, le système de types de Scala étant très complexe, il arrive parfois que l'algorithme signale de fausses erreurs. Bien que nous travaillions constamment à améliorer l'implémentation, la possibilité d'utiliser le compilateur Scala pour la mise en évidence des erreurs peut s'avérer utile dans certaines bases de code. Veuillez noter que si l'approche basée sur le compilateur est plus précise, elle est aussi plus lente, requiert davantage de ressources et ne prend pas en charge les fonctionnalités telles que les différences de types, les correctifs rapides et les inspections. Aussi à moins qu'il y ait un grand nombre de fausses erreurs dans le code, la mise en évidence intégrée des erreurs est recommandée.

JavaScript

Rechargement des pages dans le navigateur lors de l'enregistrement

Rechargement des pages dans le navigateur lors de l'enregistrement
Ultimate

IntelliJ IDEA vous permet de prévisualiser les fichiers HTML dans un navigateur grâce au serveur web intégré. Il actualise automatiquement les pages dans un navigateur lorsque vous modifiez et enregistrez vos fichiers HTML, CSS et JavaScript. Pour commencer, ouvrez un fichier HTML dans l'éditeur, survolez-le et cliquez sur l'icône du navigateur que vous souhaitez utiliser. Tous les navigateurs sont pris en charge.

Refactorisation Rename pour les hooks useState de React

Refactorisation Rename pour les hooks useState de React
Ultimate

Ne perdez plus de temps à refactoriser les valeurs et fonctions useState une par une dans les hooks React : IntelliJ IDEA peut désormais les renommer pour vous ! Placez le curseur sur une valeur d'état et appuyez sur Maj+F6 ou allez dans Refactor | Rename dans le menu contextuel.

Importation automatique pour require()

Importation automatique pour require()
Ultimate

Saviez-vous que votre IDE peut ajouter les déclarations d'importation manquantes au fur et à mesure que vous complétez les symboles ES6 ? Maintenant, il peut faire la même chose pour les modules CommonJS : les importations require seront insérées lors de la saisie du code.

Profileur

Prise en charge du profileur Async sous Windows et Apple M1

Prise en charge du profileur Async sous Windows et Apple M1
Ultimate

Async Profiler est l'outil de profilage de prédilection de nombreux développeurs en raison de sa précision et de sa fiabilité. IntelliJ IDEA prend désormais entièrement en charge le profileur sous Windows et Apple M1, en plus de Linux et macOS non M1. Il est donc utilisable dans la plupart des environnements.

Prise en charge du profileur Async 2.0
Ultimate

IntelliJ IDEA prend en charge Async Profiler 2.0. Elle fonctionne via la nouvelle configuration d'Async Profiler, qui combine la puissance des profileurs CPU et l'allocation de ressources. Dans les onglets Flame Graph, Call Tree et Method List, la nouvelle liste déroulante Show vous permet de choisir si vous souhaitez afficher des éléments de CPU ou des allocations de mémoire. La chronologie Timeline affiche les deux. Vous pouvez filtrer ce qui doit être affiché à l'aide du contrôleur en haut à droite.

Prise en charge des diagrammes en rayons de soleil (sunburst)

Prise en charge des diagrammes en rayons de soleil
Ultimate

Dans IntelliJ IDEA 2021.2, lorsque vous double-cliquez sur un élément de l'onglet Classes, l'onglet Retained Objects affiche les données de l'élément sélectionné sous la forme d'un diagramme en rayons de soleil. Si vous avez plutôt l'habitude d'analyser des données affichées en arborescence, vous pouvez désormais la retrouver dans l'onglet Dominator Tree.

Outils de build

Artéfacts JLink

Artéfacts JLink

Si vous souhaitez créer un JDK personnalisé qui contienne uniquement les modules et les dépendances dont vous avez besoin lorsque vous travaillez sur un projet Jigsaw, vous pouvez ajouter de nouveaux artefacts JLink à votre projet dans la fenêtre Project structure.

Configurations Gradle remaniées

Configurations Gradle remaniées

Nous avons repensé l'interface utilisateur des Gradle Run/Debug Configurations. Les paramètres de base sont désormais regroupés de manière pratique sur un même écran. Vous pouvez ajouter d'autres options en fonction de vos besoins.

Indexation plus rapide des projets dans WSL 2

Pour les fichiers de projet stockés dans WSL 2, nous utilisons un démon qui transfère le contenu des fichiers entre Linux et Windows via un socket. Cela permet d'augmenter la vitesse d'indexation, car elle dépend de la vitesse à laquelle l'IDE lit le contenu du fichier.

Le degré d'accélération peut varier selon le langage que vous utilisez. Par exemple, pour les langages de type JS, le temps d'indexation a été réduit d'un tiers.

Prise en charge d'Ant dans WSL 2

Il est possible d'exécuter des tâches Ant dans WSL 2.

Contrôle de version

Améliorations pour les vérifications pré-commit

Dans la v2021.2, nous avons étendu la liste des actions pré-commit avec la possibilité d'exécuter des tests. Si vous cochez la case Run Tests dans la section Before Commit, votre IDE testera les modifications appliquées et vous informera en cas de problème.

Nous avons également ajouté la possibilité de personnaliser les options Analyze code et Cleanup en cliquant sur Choose profile à côté d'elles.

La progression et les résultats de toutes les vérifications préalables au commit apparaissent dans la zone Commit et vous n'êtes pas dérangé·e par des fenêtres modales supplémentaires.

Signature GPG

Signature GPG

IntelliJ IDEA 2021.2 vous fournit un moyen de sécuriser vos commits en vous permettant de signer les commits Git avec GPG. Pour ce faire, allez dans Preferences/Settings | Version Control | Git, cliquez sur Configure GPG Key, puis sélectionnez la clé dans la liste déroulante. Si vous utilisez une clé GPG pour la première fois, vous devrez la configurer.

Changes au lieu de Default Changelists dans les nouveaux projets

Changes au lieu de Default Changelists dans les nouveaux projets

Le nœud qui stocke les modifications non validées dans les nouveaux projets ne s'appelle plus Default changelists. À partir de la version 2021.2, il se nomme Changes. De plus, l'exécution d'opérations Git ne déclenche plus la création automatique de listes de modifications.

Action Show Diff unifiée

Action Show Diff unifiée

IntelliJ IDEA affiche par défaut la différence entre le fichier initial et le fichier modifié dans l'éditeur, quel que soit l'endroit où vous avez appelé l'action Show Diff. Si vous préférez suivre les modifications dans une fenêtre séparée, vous pouvez faire glisser le fichier souhaité depuis l'éditeur.

Prise en charge des diagrammes en rayons de soleil

Recherche textuelle dans les révisions de l'historique local

Vous pouvez trouver rapidement le texte nécessaire dans les révisions Local History en tapant la requête dans le champ de recherche de la boîte de dialogue Local History.

Terminal

Nouvelles options du terminal

Nouvelles options du terminal

Le terminal intégré vous permet maintenant de sélectionner la forme du curseur. Il prend également en charge Use Option as Meta key, qui permet à la touche Option () du clavier d'agir comme un méta-modificateur pouvant être utilisé en combinaison avec d'autres touches. Vous pouvez par exemple utiliser les raccourcis suivants :

  • ⌥F – passer au mot suivant
  • ⌥+B : revenir en arrière d'un mot
  • ⌥+D : supprimer le mot suivant

Débogueur

L'onglet d'aperçu fonctionne à présent dans le débogueur

L'onglet d'aperçu fonctionne à présent dans le débogueur

Auparavant, lorsque vous vous arrêtiez à un point d'arrêt, que vous parcouriez le code, que vous naviguiez entre les images ou que vous utilisiez les actions « image précédente/suivante », l'IDE ouvrait les fichiers dans plusieurs onglets. Dans la v2021.2, vous pouvez activer la fonctionnalité onglet d'aperçu (preview tab) pour le débogueur dans Settings/Preferences | General | Editor Tabs. Si elle est activée, ces fichiers s'ouvriront successivement dans un seul et même onglet.

Frameworks et Technologies

Diagramme des microservices

Diagramme des microservices
Ultimate

IntelliJ IDEA vous permet d'afficher les interactions des microservices dans un diagramme que pouvez le créer en cliquant sur l'icône correspondante dans la fenêtre d'outils Endpoints. Ce nouveau diagramme indique quel client appelle un service donné et permet de naviguer vers cet appel dans votre code. Pour cela, il suffit de cliquer sur une flèche qui relie les blocs du diagramme.

Le diagramme est disponible dans les projets Java et Kotlin si vous utilisez Spring, Micronaut, Quarkus ou Helidon.

Migration automatique de Java EE vers Jakarta EE

Migration automatique de Java EE vers Jakarta EE
Ultimate

La nouvelle refactorisation Migrate… permet de migrer rapidement et facilement un projet ou un module de Java EE vers Jakarta EE. La fenêtre Refactoring Preview affiche ensuite toutes les utilisations des importations Java EE trouvées. Vous pouvez ensuite les vérifier et finaliser le processus.

Téléchargement automatique des index partagés pour les nouveaux projets Spring Boot

Téléchargement automatique des index partagés pour les nouveaux projets Spring Boot
Ultimate

Lorsque vous créez un projet Spring Initializer, l'IDE télécharge automatiquement les index partagés, ce qui réduit le temps d'indexation et accélère le démarrage de l'IDE. La case à cocher qui permet d'activer cette fonction se trouve sur le deuxième écran de l'assistant New Project. Veuillez noter que cela ne pourra pas fonctionner si vous avez désactivé les index partagés (Shared Indexes) dans Settings/Preferences | Shared Indexes.

Prise en charge de JPA Entity Graph

Prise en charge de JPA Entity Graph
Ultimate

In this version, we’ve introduced support for an Entity Graph which you can define with the @NamedEntityGraph annotation. Votre IDE vous permet de spécifier un nom unique et les attributs (@NamedAttributeNode) de cette annotation en utilisant la saisie semi-automatique du code, la détection des erreurs et la navigation vers l'entité connexe en cliquant sur un attribut.

Prise en charge des annotations de cache dans Micronaut et Quarkus

Prise en charge des annotations de cache dans Micronaut et Quarkus
Ultimate

Cache annotations for Micronaut and Quarkus are now supported in the IDE. Nous avons ajouté la navigation entre les utilisations des noms de cache dans l'éditeur, ainsi que la possibilité d'utiliser Find usages et la refactorisation Rename pour les identifiants de cache.

Meilleure prise en charge de la navigation dans les microservices en JavaScript et TypeScript
Ultimate

La navigation URL en JavaScript et TypeScript a été considérablement améliorée. For client-side code (for Angular or Axios), URL references have been added for the $http service and HttpClient request method calls, and URL completion works based on available server-side frameworks and OpenAPI specifications. Pour le côté serveur, les utilisateurs d'Express peuvent voir les gestionnaires de routage dans la fenêtre d'outils Endpoints et rechercher les déclarations de route Express via Navigate | URL Mapping.

Points de terminaison gRPC affichés dans la fenêtre d'outils Endpoints

Points de terminaison gRPC affichés dans la fenêtre d'outils Endpoints
Ultimate

Dans cette version, nous avons ajouté la prise en charge d'un autre framework : gRPC. Nous prévoyons d'introduire davantage de fonctionnalités pour travailler avec ce dernier. Pour l'instant, il est possible de voir les points de terminaison gRPC dans la fenêtre d'outils Endpoints. D'autres mises à jour suivront prochainement !

Intégration de Ktor

Intégration de Ktor
Ultimate

Ktor, a web application framework for creating connected systems, is bundled with IntelliJ IDEA Ultimate. Dès l'écran de bienvenue, vous pouvez créer un nouveau projet Ktor pour développer des applications côté serveur ou côté client et configurer les paramètres de base de votre projet et les diverses fonctionnalités prises en charge par Ktor.

Plugin Protocol Buffers maintenu par JetBrains
Ultimate

Le plugin Protocol Buffers est fourni avec IntelliJ IDEA Ultimate et l'équipe JetBrains en assure entièrement la maintenance. Si vous utilisez IntelliJ IDEA Community Edition, vous pouvez toujours télécharger et installer Protocol Buffers dans Preferences/Settings | Plugins | Marketplace.

Docker

Travailler avec Docker via SSH

Travailler avec Docker via SSH

Vous pouvez vous connecter à Docker via SSH. Pour configurer une connexion SSH, allew dans Preferences / Settings | Build, Execution, Deployment/ Docker, cliquez sur le bouton radio On SSH machine, sur…, puis indiquez les paramètres de connexion SSH dans la fenêtre qui s'affiche.

Synchronisation des services

Synchronisation des services

Il est possible d'afficher les applications Docker Compose dans la fenêtre d'outils Services même si elles ne sont pas en cours d'exécution. Pour ce faire, il suffit de cliquer sur l'icône des flèches cycliques dans la fenêtre de l'éditeur.

Nouvelles icônes pour les états des services

Nouvelles icônes pour les états des services

Nous avons implémenté de nouvelles icônes pour les différents états de vos services Docker Compose. Pour vous y habituer, vous pouvez lire les infobulles qui s'affichent lorsque vous survolez chaque icône.

Amélioration des journaux

Nous avons apporté quelques modifications aux journaux de Docker Compose. Chaque nœud de service dispose d'un journal et les journaux de conteneurs peuvent être configures pour afficher les horodatages et les sessions précédentes. Vous pouvez désactiver ces options dans Preferences/Settings | Build, Execution, Deployment | Docker | Console en décochant Fold previous sessions in the Log console.

Plus d'options dans les configurations Run/Debug

Plus d'options dans les configurations Run/Debug

De nouvelles options pour Docker Compose sont désormais disponibles dans Run/Debug Configurations. Les options Enable BuildKit, Enable compatibility mode et Specify project name sont accessibles en cliquant sur Modify options. Vous pouvez donner le nom de votre choix à votre projet, il n'héritera pas par défaut du nom du dossier dans lequel se trouve l'application Docker Compose.

Nouvelles actions pour les conteneurs

La gestion de vos conteneurs Docker est maintenant facilitée grâce aux nouveaux boutons qui vous permettent de démarrer, de mettre en pause, de reprendre et de redémarrer vos conteneurs. En outre, vous pouvez appliquer les actions à plusieurs conteneurs à la fois !

Un moyen intelligent de supprimer des images

Un moyen intelligent de supprimer des images

Lorsque vous supprimez des images Docker avec des dépendances, vous pouvez indiquer les dépendances dont vous voulez vous débarrasser et celles qui doivent rester.

Nouveaux nœuds Networks et Volumes

Nouveaux nœuds Networks et Volumes

Nous avons ajouté deux nouveaux nœuds à la fenêtre d'outils Services : Networks et Volumes. Le premier nœud contient tous les réseaux qui ne sont pas liés à l'application Docker Compose. The second includes all the Docker Volumes. Vous pouvez facilement supprimer des volumes, comme vous le feriez pour des images, comme décrit dans la section ci-dessus.

Prise en charge de la version 3 de Docker Compose

Prise en charge de la version 3 de Docker Compose

We’ve added support for version 3 of the Docker Compose file format. En conséquence, IntelliJ IDEA valide maintenant correctement les options disponibles dans la v3 et la saisie semi-automatique du code fonctionne pour elles.

Kubernetes

Prise en charge des alias dans les dépendances de graphiques Helm

Prise en charge des alias dans les dépendances de graphiques Helm
Ultimate

Dans IntelliJ IDEA 2021.2, vous pouvez utiliser le champ alias qui se trouve dans la section dependencies de Chart.yaml (api v2) ou de requirements.yaml (api v1). Ce champ indique un nom alternatif de la dépendance actuelle. Vous pouvez avoir besoin d'utiliser des alias si une dépendance existante est utilisée plusieurs fois et que vous voulez faire une distinction entre ces usages. De plus, si le nom du graphique utilise des symboles non applicables dans les identificateurs GoTemplate, un alias peut vous aider à résoudre le problème.

Espaces de noms personnalisés

Espaces de noms personnalisés
Ultimate

Parfois, lorsque vous travaillez avec un cluster Kubernetes, vous avez accès à des espaces de noms particuliers, mais vous ne recevez pas la liste de tous les espaces de noms du cluster. Vous pouvez maintenant indiquer la liste des espaces de noms disponibles dans Preferences / Settings | Tools | Kubernetes.

Espaces de noms préférés

Espaces de noms préférés
Ultimate

Il est maintenant plus facile de gérer de multiples espaces de noms et de retrouver rapidement ceux dont vous avez le plus besoin. Il est maintenant possible de distinguer vos espaces de noms préférés en les marquant d'une étoile. Ces derniers s'afficheront alors en haut de la liste, tandis que les autres espaces de noms seront triés par ordre alphabétique.

Outils de base de données

Source de données DDL

Source de données DDL
Ultimate

Il est maintenant possible de générer une source de données DDL basée sur une source réelle. Les fichiers DDL seront créés sur le disque et la nouvelle source de données sera basée sur ces fichiers. Vous pourrez ainsi toujours régénérer ces fichiers et actualiser la source de données DDL. Vous trouverez une procédure précise permettant d'appliquer cette fonctionnalité dans cet article de blog.

Gestion de l'affichage de la fenêtre d'outils Services

Gestion de l'affichage de la fenêtre d'outils Services
Ultimate

Lorsqu'une requête ne renvoie aucune donnée, il n'est pas nécessaire d'afficher la fenêtre d'outils Services qui était précédemment masquée. Vous pouvez désormais définir vous-même les opérations qui font apparaître la fenêtre d'outils Services dans Preferences / Settings | Tools | Database | General.

Saisie semi-automatique des champs et des opérateurs

Saisie semi-automatique des champs et des opérateurs
Ultimate

La saisie semi-automatique du code fonctionne désormais pour divers types de champs et d'opérateurs dans la console MongoDB. Consultez cet article de blog pour en savoir plus.

Outils d'assurance qualité

Espaces de noms personnalisés

Générer des données de test

La possibilité d'insérer une adresse e-mail, un nom ou un numéro de téléphone aléatoire est importante lors du développement de tests unitaires. Dans le cadre de notre Test Automation Kit, le nouveau plugin Test Data apporte de nombreuses actions permettant de générer des données aléatoires. Utilisez le menu Generate (Cmd+N) pour afficher toutes les options disponibles. Si vous avez besoin d'un format spécifique, vous pouvez toujours créer votre propre format de données personnalisé sur la base d'expressions régulières ou de modèles Velocity. Tous les types de données personnalisées sont disponibles en mode groupé et peuvent être partagés au sein de votre équipe.

Intégration avec Space

États des jobs de Space dans le journal Git

États des jobs de Space dans le journal Git

Pour vous aider à voir la progression d'une tâche d'un simple coup d'œil à la liste des commits, nous avons ajouté des icônes pour les états des tâches Space dans l'onglet Log de la fenêtre d'outils Git. Si vous cliquez sur une icône, l'IDE ouvre une fenêtre contextuelle avec les informations d'automatisation pour ce job.

Si vous n'avez pas besoin des informations d'état, cliquez sur l'icône en forme d'œil au-dessus du journal et sélectionnez Show Columns | Space Automation.

Mentionner les membres de votre équipe

Mentionner les membres de votre équipe

La communication avec les membres de votre équipe dans les révisions de code Space est désormais plus pratique car vous pouvez les mentionner avec @ suivi de leur nom. Cette fonctionnalité peut être utilisée dans la chronologie et dans les commentaires de code.

Affichage de la branche dans les révisions de code

Affichage de la branche dans les révisions de code

Votre IDE peut maintenant afficher les branches associées dans la révision de code sélectionnée. Vous pouvez voir la liste des branches qui contiennent les commits effectués lors du travail sur le problème actuel dans l'onglet Details.

Développement collaboratif

Complétion de code synchronisée

Complétion de code synchronisée

Il est maintenant possible de comprendre encore plus précisément la logique des la personne que vous suivez car vous pouvez voir les suggestions de saisie semi-automatique du code qu'elle utilise. Cette fonctionnalité s'applique lorsque vous êtes en mode Following pendant votre session Code With Me.

Annuler vos actions

Annuler vos actions

IntelliJ IDEA 2021.2 présente une fonctionnalité d'annulation repensée qui améliore considérablement l'expérience de programmation collaborative. La nouvelle logique d'annulation permet aux invité·e·s et à l'hôte de revenir sur les modifications apportées au code. La mise à niveau vers la version 2021.2 vous permettra donc d'éviter les situations désagréables dans lesquelles un développeur supprime accidentellement les modifications faites par ses pairs. Cette amélioration est particulièrement utile dans les scénarios de programmation en binôme et en groupe.

Partager n'importe quel écran pendant une session collaborative

Partager n'importe quel écran pendant une session collaborative

L'une des fonctionnalités les plus attendues, le partage d'écran, est enfin arrivée. Dans la version 2021.2, les participant·es peuvent partager une fenêtre d'application de leur choix depuis leur écran d'ordinateur, sans être limité·es à leur IDE JetBrains, afin d'améliorer leur collaboration.

Transférer des ports à vos binômes de programmation

Transférer des ports à vos binômes de programmation

Partager des ports ouverts spécifiques avec des participant·e·s via un proxy intégré est maintenant possible dans IntelliJ IDEA 2021.2 ! Ainsi, si un hôte exécute des applications sur un port spécifique, les invité·e·s peuvent y accéder via un hôte local sur leur machine.

Autre

Interface utilisateur localisée en chinois, japonais et coréen

À partir de cette version, vous pouvez profiter de l'interface utilisateur IntelliJ IDEA entièrement localisée en chinois, coréen, et japonais. La localisation est disponible sous la forme d'un plugin de pack linguistique. Il n'est pas inclus automatiquement mais s'installe facilement dans votre IDE. Plus de 1,5 million d'utilisateurs ont commencé à utiliser la version EAP partiellement localisée de nos packs linguistiques. Vous pouvez désormais profiter d'une expérience de localisation complète !

Mise à jour du plugin Android

Le plugin Android a été mis à jour vers la version 4.2.0.

Plugins non intégrés

Après analyse, nous nous sommes rendu compte que plusieurs plugins, parmi lesquels Resource Bundle Editor, Drools, JSP Debugger Support, CoffeeScript, Spring Web Flow, Spring OSGI, Arquillian, AspectJ, Guice, Helidon, Emma et EJB, étaient assez peu utilisés, et avons donc décidé qu'ils ne seraient plus intégrés. Si vous avez encore besoin de l'un de ces plugins, vous pouvez l'installer manuellement à partir de JetBrains Marketplace.