Nouveautés d'IntelliJ IDEA 2024.1

La version 2024.1 d'IntelliJ IDEA apporte toute une série de mises à jour pour vous aider à simplifier vos workflows. IntelliJ IDEA Ultimate propose maintenant la saisie semi-automatique de code complète, qui fournit des suggestions tenant compte du contexte pour des lignes entières de code. La prise en charge de Java 22 garantit la compatibilité avec les dernières fonctionnalités du langage. La refonte du terminal améliore les opérations en ligne de commande, tandis que les lignes épinglées dans l'éditeur fluidifient la navigation dans les bases de codes. Nous avons apporté des dizaines d'autres améliorations aux diverses parties de l'IDE dans cette version 2024.1. Découvrez-les ci-dessous !

Principales nouveautés

Saisie semi-automatique de ligne de code
Ultimate

IntelliJ IDEA Ultimate 2024.1 fournit la saisie semi-automatique du code en ligne entière pour Java et Kotlin. Cette fonctionnalité est générée par un modèle de deep learning avancé, intégré de manière transparente dans l'IDE. Elle améliore l'efficacité de la programmation en prédisant et en suggérant des lignes entières de code sur la base d'une analyse contextuelle. Ces suggestions sont générées grâce à des modèles de langage spécialisés que nous avons spécifiquement entraînés pour différents langages et frameworks. Afin de garantir la sécurité de vos données, ils s'exécutent entièrement sur votre appareil local, sans communication avec un serveur externe. Cette fonctionnalité est incluse dans l'abonnement à la licence IntelliJ IDEA Ultimate. Pour en savoir plus, consultez cet article de blog.

Prise en charge des fonctionnalités de Java 22

IntelliJ IDEA 2024.1 prend en charge l'ensemble de fonctionnalités de JDK 22, sorti en mars 2024, Cette prise en charge inclut l'itération finale des variables et des modèles sans nom, la deuxième version preview des modèles de chaînes et des classes déclarées implicitement, et les méthodes d'instance main. De plus, cette mise à jour apporte la prise en charge des nouvelles instructions précédant super(…) dans leur version preview. Pour en savoir plus, consultez cet article de blog.

Nouveau terminal
Bêta

IntelliJ IDEA 2024.1 propose un terminal entièrement remanié, avec des améliorations visuelles et fonctionnelles qui simplifient les tâches en ligne de commande. Cette mise à jour apporte une nouvelle apparence à cet outil familier, avec des commandes séparées en blocs distincts, ainsi qu'un ensemble de fonctionnalités étendu, notamment une navigation fluide entre les blocs, la complétion pour les commandes et un accès facile à l'historique des commandes. Pour en savoir plus, consultez cet article de blog.

Lignes épinglées dans l'éditeur

Nous inaugurons les lignes épinglées dans l'éditeur pour simplifier l'utilisation de fichiers volumineux et l'exploration de nouvelles bases de codes. 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.

AI Assistant

Améliorations de l'AI Assistant

Améliorations de l'AI Assistant
Ultimate

L'AI Assistant a fait l'objet de plusieurs mises à jour significatives, parmi lesquelles l'amélioration de la génération de tests et de la complétion du code cloud, la personnalisation des prompts pour les messages de commits, la possibilité de créer des fichiers à partir d'extraits de code et la mise à jour de la génération de code dans l'éditeur. Pour en savoir plus, consultez cet article de blog.

Veuillez noter que dans la version 2024.1, l'AI Assistant est dissocié de l'IDE et dorénavant disponible en tant que plugin séparé. Ce changement est motivé par notre volonté d'offrir aux utilisateurs davantage de flexibilité concernant l'utilisation des technologies basées sur l'IA et de leur permettre de faire leur choix en fonction de leurs préférences, de leurs besoins et des contraintes liées à leur environnement de travail. L'utilisation de l'AI Assistant requiert toujours de disposer d'un abonnement actif au service JetBrains AI.

Amélioration de la mise en évidence du code pour Java et Kotlin dans l'AI Assistant

Amélioration de la mise en évidence du code pour Java et Kotlin dans l'AI Assistant
Ultimate

Nous avons amélioré la mise en évidence du code pour Java et Kotlin dans les réponses de l'AI Assistant. Le code fourni dans le chat d'IA est maintenant mis en évidence de la même façon qu'il le serait dans l'éditeur, ce qui permet de l'évaluer plus facilement. Cette amélioration a pour objectif de rendre l'utilisation des suggestions de l'AI Assistant plus intuitive en offrant une expérience similaire à celle de l'éditeur directement dans le chat.

Expérience utilisateur

Fonctionnalités de l'IDE disponibles pour Java et Kotlin pendant l'indexation

Fonctionnalités de l'IDE disponibles pour Java et Kotlin pendant l'indexation

Les fonctionnalités de base de l'IDE, telles que la mise en évidence et la saisie semi-automatique du code, fonctionnent désormais pour Java et Kotlin durant l'indexation du projet, ce qui devrait améliorer votre expérience au démarrage. De plus, vous pouvez naviguer dans le code en utilisant Go to class et Go to symbol pendant le chargement du projet.

Assistant New Project actualisé

Assistant New Project actualisé

Pour réduire la charge cognitive lors de la configuration de nouveaux projets, nous avons apporté de légers ajustements à la mise en page de l'assistant New Project. La liste des langages se trouve maintenant en haut à gauche, ce qui permet de retrouver plus rapidement les options les plus populaires.

Possibilité de réduire l'échelle de l'IDE entier

Possibilité de réduire l'échelle de l'IDE entier

Vous pouvez maintenant zoomer et dézoomer sur l'interface, avec la possibilité de réduire l’échelle de l’IDE à 90 %, 80 % ou 70 %.

Java

Injections de langage dans les modèles de chaînes

IntelliJ IDEA 2024.1 introduit la possibilité d'injecter des langages dans des modèles de chaînes. Pour ce faire, vous pouvez utiliser des annotations, qui sélectionnent automatiquement le langage requis, ou utiliser l'action d'intention Inject language or reference (Alt+Entrée) pour sélectionner manuellement un langage dans la liste. Si vous utilisez cette dernière méthode, l'IDE vous proposera d'insérer l'annotation de langage pour vous. Une fois l'injection effectuée, vous pouvez de nouveau appeler la liste des actions d'intention et choisir d'ouvrir et de modifier le fragment injecté dans un volet d'éditeur séparé.

Workflow amélioré pour les journaux

La journalisation constituant une partie importante du travail de développement au quotidien, nous avons introduit une série de mises à jour pour améliorer l'expérience utilisateur qu'offre IntelliJ IDEA pour cette tâche. Vous pouvez désormais naviguer facilement des messages du journal dans la console vers le code qui les génère. De plus, l'IDE suggère d'ajouter des loggers là où ils sont requis et simplifie l'insertion de déclarations de loggers, même lorsque l'instance du logger n'est pas dans la portée. Pour en savoir plus, consultez cet article de blog.

Nouvelles inspections et correctifs rapides

Nous avons implémenté de nouvelles inspections et des correctifs rapides pour Java pour vous aider à conserver votre code propre et exempt d'erreurs. Pour plus de clarté, l'IDE détecte désormais au niveau du bit les opérations qui peuvent être remplacées par des appels aux méthodes Long.hashCode() ou Double.hashCode(). En outre, un nouveau correctif rapide simplifie la bascule entre déclarations de classes implicites et explicites en fonction des exigences de votre base de code. Une autre nouvelle inspection suggère d'utiliser les méthodes statiques existantes pour les fragments de code correspondants, ce qui facilite la réutilisation du code sans introduire d'API supplémentaires. Par ailleurs, l'IDE détecte et signale désormais le code inaccessible qui ne sera jamais exécuté.

Amélioration de l'expérience utilisateur avec les JAR multi-versions

IntelliJ IDEA 2024.1 améliore expérience utilisateur avec les bibliothèques de JAR multi-versions. Lorsque vous utilisez une classe qui a des versions différentes, la fonctionnalité Go to declaration sélectionne désormais la version appropriée dans le fichier JAR en fonction du niveau de langage de votre module actuel. De plus, la fonctionnalité Go to class offre des informations supplémentaires sur la version de la classe. Lorsque vous utilisez Step Into lors du débogage, l'IDE vous emmène à la classe qui correspond à votre version du JDK, et non au niveau de langage de votre module.

Boîte de dialogue Conflicts Detected remaniée

Boîte de dialogue Conflicts Detected remaniée

La version 2024.1 propose une boîte de dialogue Conflicts Detected remaniée afin d'améliorer la lisibilité. Le code de la boîte de dialogue reflète désormais le contenu de l'éditeur, ce qui vous donne un aperçu plus clair des conflits, et l'IDE enregistre automatiquement les ajustements de taille des fenêtres pour une utilisation ultérieure. Nous avons aussi modifié les boutons et leur comportement afin de simplifier le workflow de refactorisation, et la boîte de dialogue est désormais entièrement accessible via le clavier, en utilisant les raccourcis et les touches fléchées, pour une interaction fluide.

Indication pour la refactorisation Rename

Indication pour la refactorisation Rename

Pour faciliter le processus de renommage et le rendre plus intuitif, nous avons implémenté une nouvelle indication dans l'éditeur qui s'affiche au-dessus de l'élément de code modifié. Il vous suffit de cliquer sur cette indication et de confirmer la modification pour mettre à jour toutes les références de la base de code vers la nouvelle version.

Kotlin

Mode Kotlin K2 Alpha

Mode Kotlin K2
Alpha

IntelliJ IDEA 2024.1 introduit le nouveau mode Kotlin K2, qui utilise le compilateur Kotlin K2 intégré pour améliorer l'analyse du code Kotlin. Cette mise à jour garantit la compatibilité avec les fonctionnalités Kotlin à venir et améliore la stabilité de l'analyse du code. Vous bénéficiez donc d'un gain de qualité et de fiabilité des fonctionnalités de l'IDE, ainsi que d'une amélioration des performances globales de l'application. En savoir plus.

Style de code officiel de Kotlin propagé dans tous les projets

Style de code officiel de Kotlin propagé dans tous les projets

À partir de la version 2024.1, l'IDE applique uniformément le guide de style officiel de Kotlin comme option par défaut pour tous les projets, sauf indication contraire explicite. Si votre projet actuel utilise un ancien style de code sans configuration explicite, l'IDE passera automatiquement au style de code des conventions de programmation Kotlin et vous notifiera de ce changement. Pour éviter toute modification de mise en forme indésirable, nous vous recommandons de vous familiariser avec ce guide de migration du style de code.

Importations statiques préservées lors du copier-coller

Importations statiques préservées lors du copier-coller

La version 2024.1 préserve avec précision les importations statiques, en veillant à ce qu'elles soient transférées exactement telles qu'elles apparaissent dans le code source. Cela est particulièrement utile pour gérer les objets imbriqués, les enums et les importations statiques Java.

Scala

Meilleure prise en charge de Scala 3

Meilleure prise en charge de Scala 3

Dans la nouvelle version, nous avons résolu de nombreux problèmes liés au traitement des cas de syntaxe spécifiques à Scala 3. Parmi ces améliorations, citons la capacité à reconnaître les mélanges de modificateurs interdits, à calculer la profondeur d'indentation, à couper/coller des opérations sans casser l'indentation, et à associer des marqueurs de fin à leurs structures syntaxiques. Nous avons également amélioré la prise en charge de Scala 3 dans le débogueur et la saisie semi-automatique gère désormais correctement certains cas particuliers, tels que son utilisation avec les mots clés using et given ou avec des signatures unapply.

Améliorations de Scaladoc

Améliorations de Scaladoc

Nous avons apporté de nombreuses améliorations et correctifs mineurs à la mise en évidence des classes, des traits et des déclarations de méthode dans les fenêtres contextuelles Scaladoc et dans la fenêtre contextuelle de documentation rapide. Les paramètres génériques imbriqués sont maintenant mis en évidence correctement et les modificateurs d'accès aux champs s'affichent. De plus, le code situé à l'intérieur des blocs Scaladoc avec des triples accolades est maintenant mis en évidence de la même manière que le code Scala standard.

Amélioration de la mise en évidence basée sur le compilateur

Amélioration de la mise en évidence basée sur le compilateur

Jusqu'à présent, si vous basculiez vers un autre éditeur pendant l'utilisation de la mise en évidence basée sur le compilateur, le code était automatiquement recompilé. Nous avons changé cela dans la version 2024.1. Le code est maintenant recompilé uniquement si l'éditeur est sélectionné. La mise en évidence basée sur le compilateur peut ainsi réagir plus rapidement aux modifications externes apportées aux fichiers source et .class et éviter les situations où du code valide s'affiche en rouge.

Améliorations de l'outil de build Scala

Améliorations de l'outil de build Scala

L'IDE ajoute désormais un fichier .gitignore aux nouveaux projets SBT. Nous avons résolu un problème dans lequel une exception était levée lors de la première exécution d'applications Scala/JVM avec Use sbt for builds, et nous nous sommes assurés que toutes les dépendances transitives d'un module étaient insérées en tant que dépendances directes lors de l'importation.

Mise à jour pour Play Framework

Mise à jour pour Play Framework

Pour résoudre le problème de compatibilité entre les anciennes versions de Play Framework (2.8 et versions antérieures) et le JDK 17, nous avons introduit un avertissement qui vous prévient de l'utilisation de versions incompatibles de Play et du JDK dans l'assistant Play.

Autres améliorations

Nous avons ajouté de nouvelles icônes : une pour le langage Scala dans l'assistant New Project, et une autre pour SBT dans View | Tool windows. Vous remarquerez peut-être quelques améliorations subtiles dans la présentation des conseils d'insertion, avec des coins arrondis et un meilleur alignement. Nous avons de plus ajouté la documentation Scala à la page d'aide Settings | Editor | CodeStyle. Dans les feuilles de travail, les erreurs de compilation sont à nouveau signalées correctement dans la fenêtre de build lors de l'utilisation de Scala 2.13.12, et les importations ne sont plus signalées à tort comme inutilisées avant la première compilation de code. Par ailleurs, vous pouvez maintenant épingler la fonctionnalité X-Ray, et vous assurer qu'elle reste active même après que vous avez relâché la touche Ctrl.

Systèmes de contrôle de version

Révision du code dans l'éditeur

Révision du code dans l'éditeur

IntelliJ IDEA 2024.1 améliore l'expérience de révision du code pour les utilisateurs de GitHub et de GitLab grâce à l'implémentation d'un nouveau mode de révision. Intégrée dans l'éditeur, cette fonctionnalité facilite les interactions directes entre auteurs et réviseurs. Lors de la vérification de la branche de la requête d'extraction/fusion, le mode révision s'active automatiquement et des marqueurs roses s'affichent dans la gouttière, indiquant que des modifications de code sont prêtes à être révisées. Cliquer sur ces marqueurs affiche une fenêtre contextuelle avec le code original afin d'identifier rapidement ce qui a été modifié. Les icônes de la gouttière vous aident à lancer rapidement de nouvelles discussions, ainsi qu'à afficher et masquer les discussions actuelles. Elles offrent également un accès facile aux commentaires, pour en prendre connaissance, y répondre et y réagir rapidement. Vous trouverez plus d'informations concernant ce changement dans notre article de blog.

Option permettant de réviser les modifications de la branche dans un onglet Log

Option permettant d'afficher les modifications de la branche révisée dans un onglet Log

IntelliJ IDEA 2024.1 simplifie le workflow de révision du code en proposant une vue ciblée des modifications liées aux branches. Pour GitHub, GitLab et Space, il est désormais possible d'afficher les modifications d'une branche donnée dans un onglet Log séparé de la fenêtre d'outil Git. Pour cela, cliquez sur le nom de la branche dans la fenêtre d'outil Pull Requests et cliquez sur Show in Git Log dans le menu.

Prise en charge des réactions aux commentaires de révision du code

Prise en charge des réactions aux commentaires de révision du code

IntelliJ IDEA 2024.1 prend en charge les réactions aux commentaires de révision pour les requêtes d'extraction GitHub et les requêtes de fusion GitLab, avec un ensemble d'émoticônes déjà disponibles.

États des vérifications de CI dans la fenêtre d'outil Git

États des vérifications de CI dans la fenêtre d'outil Git

Une nouvelle colonne dans l'onglet Log de la fenêtre d'outil Git vous permet de consulter facilement les résultats des vérifications de commit GitHub effectuées par votre système de CI.

Créez des requêtes d'extraction/fusion à partir de notifications push

Créez des requêtes d'extraction/fusion à partir de notifications push

Après avoir correctement effectué un push de vos modifications vers le système de contrôle de version, l'IDE vous avertira à présent par une notification unique vous informant de la réussite de l'opération et vous suggérant une action pour créer une requête d'extraction/fusion.

Indicateurs visuels pour les mises à jour GitHub en attente

Indicateurs visuels pour les mises à jour GitHub en attente

Nous avons introduit des indicateurs visuels pour vous informer sur les mises à jour en attente dans votre workflow de révision du code. Lorsque des modifications requièrent votre attention, un point s'affiche sur l'icône de la fenêtre d'outil. Les requêtes d'extraction non vues seront également signalées par un point bleu, ce qui vous garantit de ne pas manquer des mises à jour dans votre processus de révision du code.

Prévention de l'envoi de commits de fichiers volumineux vers les référentiels

Prévention de l'envoi de commits de fichiers volumineux vers les référentiels

Pour vous aider à éviter les rejets du contrôle de version dus à des fichiers trop volumineux, l'IDE inclut désormais une vérification avant commit qui vous empêche de valider ces fichiers et vous informe de la restriction.

Option de fusion Allow unrelated histories

Option de fusion Allow unrelated histories

La boîte de dialogue Merge into comporte désormais une option Allow unrelated histories dans son menu déroulant. Lorsque cette option est sélectionnée, vous pouvez fusionner deux branches qui n'ont pas d'historique commun.

Filtre de branche pour l'onglet History de la fenêtre d'outil Git

Filtre de branche pour l'onglet History de la fenêtre d'outil Git

Dans la fenêtre d'outil Git, le bouton Show all branches a été remplacé par un filtre de branche, ce qui vous permet d'examiner les modifications apportées à un fichier dans une branche donnée. Nous avons également modifié l'orientation de la barre d'outils, qui se positionne maintenant à l'horizontale pour une meilleure ergonomie.

Onglet Stash dans la fenêtre d'outil Commit

Onglet Stash dans la fenêtre d'outil Commit

Pour les utilisateurs qui comptent sur les stashes pour stocker des modifications temporaires non validées, nous avons ajouté un onglet dédié dans la fenêtre d'outil Commit pour un accès pratique. Si vous utilisez à la fois des stashes et des shelves, vous pouvez activer un onglet Stashes and Shelves combiné à l'aide de la case correspondante dans Settings/Preferences | Version Control | Git.

Option permettant d'exclure des dossiers et des fichiers de la comparaison

Option permettant d'exclure des dossiers et des fichiers de la comparaison

Dans le visualiseur de diff, vous pouvez à présent spécifier les dossiers et les fichiers à ignorer pendant le processus de comparaison afin de vous concentrer uniquement sur les modifications pertinentes. Il vous suffit de cliquer droit sur un fichier ou un dossier que vous ne souhaitez pas voir dans les résultats de comparaison et de sélectionner Exclude from results dans le menu contextuel.

Amélioration de la recherche dans la fenêtre contextuelle Branches

Recherche améliorée dans la fenêtre contextuelle Branches

Dans la fenêtre contextuelle Branches, vous pouvez désormais filtrer les résultats de recherche par actions et par référentiels pour naviguer plus rapidement et plus précisément dans votre système de contrôle de version.

Onglet Git supprimé de la boîte de dialogue Search Everywhere

Onglet Git supprimé de la boîte de dialogue Search Everywhere

Après avoir analysé les statistiques d'utilisation, nous avons supprimé l'onglet Git de la boîte de dialogue Search Everywhere par défaut. Si vous voulez le rétablir, cochez la case Show Git tab in Search Everywhere dans Settings/Preferences | Advanced Settings | Version Control. Git.

Outils de build

Boost de vitesse à l'ouverture pour les projets Maven

IntelliJ IDEA construit maintenant le modèle de projet en analysant les fichiers pom.xml. Cela permet d'obtenir une structure de projet fonctionnelle en quelques secondes pendant que le modèle de projet complet avec toutes les dépendances se construit en arrière-plan, et vous permet de plonger dans le projet sans attendre la fin de la synchronisation.

Prise en charge du workflow de renommage du plugin Maven Shade

Avec la sortie d'IntelliJ IDEA 2024.1, nous ajoutons la très attendue prise en charge de la fonctionnalité de renommage au plugin Maven Shade. IntelliJ IDEA tient à présent compte du workflow de renommage, et propose une mise en évidence et une navigation de code précises lorsque vous travaillez avec votre shaded JAR et ses dépendances.

Accès direct aux fichiers sources à partir de la fenêtre contextuelle de documentation rapide

Accès direct aux fichiers sources à partir de la fenêtre contextuelle de documentation rapide

La fenêtre contextuelle de documentation rapide propose à présent un moyen facile de télécharger le code source. Lorsque vous consultez la documentation d'une bibliothèque ou d'une dépendance et que vous devez accéder à son code source, il vous suffit d'appuyer sur F1. La fenêtre contextuelle modifiée fournit un lien direct que vous pouvez utiliser pour télécharger les fichiers sources requis, ce qui simplifie votre workflow.

Référentiels Maven dans la fenêtre d'outil Maven

Référentiels Maven dans la fenêtre d'outil Maven

La liste des référentiels Maven, ainsi que leurs états d'indexation, s'affiche désormais dans la fenêtre d'outil Maven, au lieu de son emplacement précédent dans les paramètres Maven.

Changement de prise en charge des versions Gradle

À partir de cette version, IntelliJ IDEA ne prend plus en charge les projets utilisant des versions de Gradle antérieures à 4.5 et l'IDE n'effectuera pas de synchronisation Gradle pour les projets comportant des versions de Gradle non prises en charge.

Exécuter/déboguer

Points d'arrêt inline pour plusieurs instructions

Points d'arrêt inline pour plusieurs instructions

IntelliJ IDEA 2024.1 offre un workflow plus pratique pour définir des points d'arrêt dans les lignes contenant des fonctions lambda ou des instructions return. Une fois que vous avez défini un point d'arrêt en cliquant sur la gouttière, l'IDE affiche automatiquement des marqueurs inline aux endroits où vous pouvez définir d'autres points d'arrêt. Chaque point d'arrêt peut être configuré indépendamment, ce qui rend possibles des capacités de débogage avancées.

Appels aux bibliothèques pliés dans la pile d'appels

Les appels de bibliothèque sont désormais pliés par défaut dans la pile d'appels de la fenêtre d'outil Debug, ce qui vous permet de rester concentré lorsque vous parcourez votre code. Toutefois, si vous devez vérifier une séquence d'appel de bibliothèque, vous pouvez développer le groupe et explorer les frames selon vos besoins. Pour afficher la liste, utilisez l'icône Filter dans la barre d'outils ou appelez le menu contextuel et désactivez l'option Hide Frames from Libraries.

Couverture des déclarations conditionnelles

Couverture des déclarations conditionnelles

La version 2024.1 permet à IntelliJ IDEA d'avancer un peu plus vers une couverture de test complète. Cette mise à jour se concentre sur la détection des instructions conditionnelles du code qui ne sont pas entièrement couvertes par les tests. IntelliJ IDEA montre à présent quelle ligne a une condition non couverte, et précise toutes les branches conditionnelles ou les valeurs de variable qui ne sont pas couvertes. Cette fonctionnalité est activée par défaut et vous pouvez la contrôler dans Settings/Preferences | Build, Execution, Deployment | Coverage.

Paramètres de couverture du code déplacés vers les paramètres principaux de l'IDE

Paramètres de couverture du code déplacés vers les paramètres principaux de l'IDE

Les paramètres de couverture du code ont été déplacés du menu contextuel Run Configuration vers Settings/Preferences | Build, Execution, Deployment | Coverage. Ce changement élimine la nécessité de mettre à jour la configuration individuellement pour chaque série de tests afin de sélectionner un outil d'exécution de couverture ou d'activer des fonctionnalités avancées, comme de déterminer quels tests couvrent une ligne de code spécifique.

Importation simplifiée des rapports de couverture des tests JaCoCo

Il est désormais plus facile d'importer, de parcourir et d'analyser les données de couverture du code que l'outil d'exécution JaCoCo collecte dans votre pipeline de CI/CD. Un lien direct pour l'importation des rapports JaCoCo s'affiche à présent dans la fenêtre d'outil Coverage si aucun rapport n'y est affiché. Nous avons également ajouté une icône d'importation à la barre d'outils de la fenêtre qui vous permet de récupérer le rapport JaCoCo sous forme de fichier .exec.

Frameworks et technologies

Amélioration de la saisie semi-automatique des beans et du câblage automatique pour Spring

Amélioration de la saisie semi-automatique des beans et du câblage automatique pour Spring
Ultimate

IntelliJ IDEA Ultimate propose à présent la saisie semi-automatique pour tous les beans du contexte d'application et les câble automatiquement. Si un bean câble des dépendances via le constructeur, le champ associé est également câblé automatiquement via le constructeur. De même, si des dépendances sont injectées via des champs ou via l'annotation @RequiredArgsConstructor de Lombok, le nouveau bean est automatiquement câblé en passant par le champ.

Diagrammes Spring améliorés
Ultimate

Nous avons facilité l'accès aux diagrammes de modèles Spring. Vous pouvez les appeler à l'aide de marqueurs de ligne de bean ou à l'aide d'une action d'intention (Alt+Entrée) sur les classes Spring. Nous avons ajouté de nouvelles icônes pour les diagrammes Spring afin d'améliorer la visualisation des stéréotypes Spring comme les composants, les contrôleurs, les référentiels et les beans de configuration. En outre, vous pouvez désormais afficher ou masquer facilement les beans des bibliothèques, qui sont masqués par défaut.

Améliorations pour le client HTTP
Ultimate

Dans la version 2024.1, le client HTTP offre plus d'options d'authentification, notamment le Code d'autorisation PKCE et le Device Flow. Il prend également en charge des paramètres supplémentaires pour les requêtes de jeton et d'authentification, en plus d'automatiser la génération de code_challenge et le passage de code_verifier pour la récupération de jeton au cours des requêtes PKCE. La mise à niveau du client HTTP vers Netty en tant que bibliothèque réseau de bas niveau permet de prendre en charge SSL, les proxys et HTTP/2, ce qui facilite l'implémentation de HTTP/2. En outre, la barre d'outils du client HTTP a été remaniée pour s'aligner sur le style de la nouvelle interface utilisateur, pour une meilleure finition et plus de cohérence.

Onglet Endpoints dans Search Everywhere

Onglet Endpoints dans Search Everywhere
Ultimate

Nous avons amélioré la boîte de dialogue Search Everywhere en y ajoutant un onglet Endpoints, qui s'affiche pour les projets où les résultats de la recherche d'URL sont pertinents. Actuellement, l'IDE inclut automatiquement cet onglet s'il détecte la présence des technologies Spring, Micronaut, Ktor ou Quarkus dans votre projet.

Saisie semi-automatique du code pour les en-têtes HTTP

Saisie semi-automatique du code pour les en-têtes HTTP
Ultimate

Les en-têtes HTTP sont désormais facilement complétés dans tous les scénarios courants, tels que les tests Spring WebClient et REST Assured. Dès qu'une valeur attendue est détectée, une fenêtre contextuelle de saisie semi-automatique s'affiche automatiquement.

Traitement de schémas JSON optimisé

Traitement de schémas JSON optimisé
Ultimate

Nous avons optimisé le code derrière la validation et la saisie semi-automatique du schéma JSON. L'IDE gère désormais ces tâches plus rapidement et en consommant moins de mémoire. Dans vos fichiers réels avec Azure Pipelines, les inspections de schéma sont désormais 10 fois plus rapides.

Mises à jour pour Quarkus
Ultimate

Nous avons introduit un nouvel éditeur de paramètres pour les configurations d'exécution Quarkus. La boîte de dialogue Run/Debug Configuration offre à présent une interface utilisateur améliorée pour les projets Maven et Gradle, avec un accès facile aux paramètres populaires tels que Run profile et Environment variables. Pour plus de confort, une nouvelle icône ajoutée à la barre d'outils de la fenêtre d'outil Run offre un accès facile à la Dev UI de Quarkus.

Prise en charge d'OpenRewrite
Ultimate

IntelliJ IDEA Ultimate 2024.1 intègre OpenRewrite, afin d'élargir les capacités de refactorisation de l'IDE et de vous apporter des outils d'amélioration de la qualité du code, de la cohérence et de la maintenabilité. Les recettes d'OpenRewrite vous permettent de moderniser un ancien code, d'optimiser les performances et de traiter des tâches de migration complexes telles que la mise à niveau vers une nouvelle version de Spring Boot.

Prise en charge du serveur WireMock
Ultimate

Nous avons implémenté la prise en charge de WireMock par un plugin que vous pouvez installer depuis l'IDE ou obtenir sur JetBrains Marketplace. Cette intégration inclut la saisie semi-automatique du schéma pour les configurations JSON, la possibilité de générer des fichiers stub WireMock à partir de la fenêtre d'outil Endpoints, et une configuration d'exécution intégrée qui peut lancer vos serveurs directement à partir de l'éditeur. Cet ajout vous permet de créer rapidement des serveurs de données de test ou des stubs, simplifiant ainsi le développement d'interfaces utilisateur web et de microservices.

Prise en charge de Terraform améliorée
Ultimate

IntelliJ IDEA Ultimate 2024.1 offre une meilleure prise en charge de Terraform, qui simplifie le processus de création, de gestion et d'évolution de votre infrastructure. L'IDE simplifie désormais l'initialisation grâce à une suggestion explicite d'exécuter terraform init, et offre des capacités étendues de saisie semi-automatique du code pour plus de 3 900 fournisseurs Terraform tiers. De plus, il prend en charge le langage de modèle de Terraform (tftpl), qui permet de créer des modèles dynamiques avec la possibilité de les intégrer de manière transparente avec votre langage de programmation préféré. Pour en savoir plus, consultez notre article de blog.

Outils de base de données

Filtres locaux dans l'éditeur de données

Filtres locaux dans l'éditeur de données
Ultimate

Cette version introduit la très attendue fonctionnalité de filtrage local dans l'éditeur de données. Vous pouvez désormais filtrer rapidement les lignes par valeurs de colonne sans envoyer de requêtes à la base de données. Cette approche locale n'a d'impact que sur la page actuelle, mais vous pouvez ajuster la taille de la page ou récupérer toutes les données si vous devez étendre la portée. Pour désactiver tous les filtres locaux, désélectionnez l'icône Enable Local Filter.

Simplification des sessions

Simplification des sessions
Ultimate

IntelliJ IDEA Ultimate 2024.1 simplifie l'exécution des requêtes en éliminant la nécessité de sélectionner manuellement les sessions. Pour joindre un fichier, il vous suffit maintenant de choisir la source de données plutôt que la session. Par ailleurs, le lancement de fonctions ne nécessite plus de sélectionner une session ; vous pouvez désormais choisir d'exécuter des fonctions directement à partir de la console ou du fichier. Ces modifications ont pour objectif de simplifier l'apprentissage de l'outil, en réduisant les étapes inutiles et en améliorant l'ergonomie globale.

Développement Web

Amélioration de la documentation rapide

Amélioration de la documentation rapide
Ultimate

Nous avons considérablement amélioré la fenêtre contextuelle de documentation rapide. Elle peut désormais mettre en évidence la syntaxe dans les blocs de code. Dans TypeScript, elle affiche désormais les membres d'interface, les constantes d'enum et les corps d'alias de type. Vous pouvez utiliser le lien Show more pour développer la liste complète des membres de type et accéder aux types référencés. Par ailleurs, vous pouvez à présent naviguer entre plusieurs déclarations d'interfaces, alias de type, énumérations, fonctions et autres entités à l'aide du contrôle de pagination situé en haut de la boîte de dialogue.

Correctifs rapides pour la création d'états et de propriétés React

Correctifs rapides pour la création d'états et de propriétés React
Ultimate

IntelliJ IDEA Ultimate 2024.1 introduit plusieurs nouveaux correctifs rapides pour React qui vous permettent de créer des propriétés et des états à la volée. Vous pouvez appliquer ces correctifs à l'aide du raccourci Alt+Entrée.

Widget Language Services

Widget Language Services
Ultimate

Vous trouverez le nouveau widget Language Services dans la barre d'état. Il fournit des informations sur les services de langage actifs pour le fichier et le projet en cours. Vous pouvez redémarrer les services ou accéder à leurs paramètres directement à partir de ce widget.