CLion 2023.3 est disponible :
Tour d'horizon des nouveautés de l'EDI C/C++ multiplateforme de JetBrains

JetBrains annonce la disponibilité de la troisième mise à jour majeure de l'année de CLion, son EDI C/C++ multiplateforme. CLion 2023.3 intègre JetBrains AI Assistant, qui a maintenant dépassé la phase de préversion technique. Il apporte davantage d'actions contextuelles et adaptées au projet pour optimiser vos workflows de développement C++ quotidiens. La nouvelle version étend également la prise en charge des modèles de projets, apporte des outils pour approfondir davantage l'analyse du code et la visualisation des assemblages sous-jacents, et permet aux développeurs embarqués de prendre en charge les fichiers d'arborescence des périphériques.

Principales mises à jour

L'AI Assistant est sorti de la phase de préversion

L'AI Assistant est maintenant disponible pour tous, avec de nombreuses nouveautés et fonctionnalités améliorées pour rendre votre travail avec les EDI de JetBrains encore plus productif.

Dans CLion 2023.3, l'AI Assistant génère de la documentation plus précisément et peut vous expliquer les erreurs survenant lors de l'exécution. La dernière mise à jour inclut également un chat contextuel avec l'IA et des actions d'IA tenant compte du projet, qui utilisent un contexte étendu pour fournir des résultats plus complets.

Utilisez l'AI Assistant dans CLion en tant que module complémentaire en vous abonnant à JetBrains AI Service.

CLion Nova

JetBrains lance CLion Nova, avec l'objectif de résoudre de vieux problèmes de performance et de qualité et d'unifier l'expérience utilisateur sur tous nos outils C++. Il s'agit d'une préversion gratuite de CLion avec le moteur de langage C++ de ReSharper C++ et JetBrains Rider. Elle garantit :

  • L'accélération de la mise en évidence syntaxique
  • Une interface utilisateur plus réactive
  • Une large réduction des blocages et délais lors des refactorisations
  • L'accélération de Find Usages
  • L'accélération de l'indexation des tests

Davantage de modèles de projets C et C++

Tout un éventail de modèles de projet est utilisé pour les projets C et C++. CLion fonctionne automatiquement avec les projets Autotools, CMake, les bases de données de compilation et les Makefiles. La version 2023.3 apporte la très attendue prise en charge de Meson et résout de nombreux problèmes dans le plugin Bazel for CLion.

En quête d'un meilleur code C++

CLion intègre un analyseur de flux de données qui s'exécute en continu pendant que vous écrivez votre code et contribue à en améliorer la qualité. Dans la version 2023.3, JetBrains a amélioré la précision et les performances de l'analyse globale et ajouté une analyse des fuites de mémoire.

Explorez votre code en profondeur

CLion cherche à vous aider au mieux à comprendre ce que fait réellement le code et à rechercher des bugs dans la base de code. Une nouvelle option d'incrustation Run to Cursor accélère la navigation dans le code dans le débogueur, tandis que la vue Assembly pour les fichiers est utile lorsque vous essayez de trouver un bug ou d'optimiser les performances d'exécution de votre code.

Développement embarqué

Une arborescence de périphériques est une structure de données hiérarchique principalement utilisée pour décrire le matériel. Elle est largement utilisée dans Zephyr et fournit la configuration initiale du matériel. Il est désormais beaucoup plus facile de lire, parcourir et maintenir ces fichiers avec CLion. Les fichiers avec les extensions .dts et .dtsi sont traités par l'EDI comme des fichiers d'arborescence de périphériques, et des options d'aide au codage sont donc désormais disponibles dans l'arborescence des périphériques.

Modèles de projets

Plugin Bazel for CLion

Des améliorations de qualité importantes sont implémentées dans le plugin Bazel de Google pour CLion :

  • CLion prend désormais en compte l'argument strip_include_prefix et utilise donc les chemins d'accès corrects lors de la recherche des en-têtes inclus.
  • L'analyse du code fonctionne à présent correctement pour les en-têtes liés symboliquement dans le cadre des inclusions virtuelles de Bazel.
  • Les projets ajoutés dans WORKSPACE.bazel à l'aide de local_repository ou new_local_repository sont désormais correctement synchronisés et indexés dans CLion.

Prise en charge de Meson

La prise en charge de Meson arrive sur CLion ! Vous pouvez ouvrir un projet Meson dans CLion, le générer, l'exécuter et le déboguer. Cela fonctionne sur toutes les plateformes et pour toutes les chaînes d'outils (locales et distantes), notamment WSL et Docker.

Pour vous aider à modifier le fichier meson.build, CLion met à votre disposition :

  • La mise en évidence du code
  • La vue Structure qui affiche les exécutables et les bibliothèques si les commandes executable(…) et library(…) sont présentes dans le fichier.

Améliorations pour CMake

Les conditions equals et notEquals des préréglages de CMake sont désormais prises en charge, ce qui signifie que CLion n'affiche plus les préréglages qui ne correspondent pas à ces conditions.

Vue Assembly

Vue Assembly pour les fichiers

Dans CLion 2023.3, vous n'avez pas besoin d'une session de débogage pour explorer le code assembleur sous-jacent ! La nouvelle action Show Assembly utilise les paramètres du compilateur de la configuration de résolution actuellement sélectionnée, compile le code du fichier C/C++ actuellement affiché en assembleur et ouvre un éditeur avec un aperçu pour montrer quel code source produit quel assembleur.

Syntaxe Intel

Toutes les vues Assembly dans CLion (avec et sans les sessions de débogage) ont été dotées de la possibilité de passer à la syntaxe assembleur x86 (Intel). Pour ce faire, allez dans Options dans la fenêtre de la vue Assembly et actualisez la vue pour appliquer les modifications.


Débogueur

Run to cursor

CLion 2023.3 introduit une nouvelle option d'incrustation Run to Cursor qui vous permet de naviguer rapidement jusqu'à une ligne de code spécifique pendant le débogage. Une fois votre programme suspendu, vous pouvez survoler la ligne de code jusqu'à laquelle vous souhaitez exécuter le programme puis cliquer sur la fenêtre contextuelle Run to Cursor pour exécuter votre code jusqu'à ce qu'il atteigne la ligne où vous avez cliqué sur la fenêtre contextuelle.


Développement embarqué

Pour vous aider à affiner vos réglages de matériel, CLion prend en charge les fichiers d'arborescence des périphériques. Les fichiers avec les extensions .dts et .dtsi sont traités par l'EDI comme des fichiers d'arborescence de périphériques, et des options d'assistance au codage pour ces fichiers sont donc désormais disponibles dans l'arborescence des périphériques.

Lecture des fichiers d'arborescence des périphériques

Pour vous aider à parcourir les fichiers de l'arborescence des périphériques, CLion propose :

  • La mise en évidence syntaxique dans les fichiers d'arborescence des périphériques.
  • La mise en forme du code dans les fichiers d'arborescence des périphériques.
  • La documentation du code au survol des éléments de l'arborescence des périphériques.
  • Une vue Structure et la navigation dans le code pour les fichiers d'arborescence des périphériques.

Écriture des fichiers d'arborescence de périphériques

Pour écrire plus efficacement dans les fichiers d'arborescence des périphériques, CLion prend en charge :

  • La saisie semi-automatique du code pour les nœuds standards, les /<commands>/ et les libellés.
  • La validation des libellés et des noms de nœuds au fil de la frappe.
  • La validation de l'ordre des éléments dans l'arborescence s'il est défini.
  • Les vérifications de la taille du tableau définie par l'option /bits/.

Analyse statique

Function summaries

Une nouvelle approche « Function summaries » dans CLion 2023.3 a permis à JetBrains de distinguer les contextes des différentes fonctions pour les chaînes d'appels imbriqués arbitraires, et a ouvert la voie à une analyse plus précise des flux de données.

Analyse des champs

Les inspections actuelles dans DFA prennent désormais aussi en compte les champs, et une nouvelle inspection vous avertit si tous les champs n'ont pas été initialisés.

Analyse des fuites de mémoire

Une nouvelle analyse des fuites de mémoire est implémentée. Vous pouvez donc facilement détecter les cas où la mémoire est allouée, mais pas libérée, avant qu'elle ne soit plus accessible.

QML

CLion détecte les types QML dans un projet afin de les analyser et de fournir une assistance au codage adaptée. Mais les types QML des bibliothèques ou ceux des plugins des utilisateurs se trouvent souvent ailleurs. Pour résoudre ce problème, JetBrains a introduit le nouveau paramètre Extra QML imports dans Settings/Preferences | Languages & Frameworks | QML. Il permet à l'EDI de rechercher des importations QML dans des emplacements spécifiés et d'analyser les types à partir du code utilisateur.

Modèles de fichier

Lorsque vous créez un projet via l'assistant New Project dans CLion, un fichier main.cpp ou main.c est généré automatiquement pour vous. Ceci étant, dans certains cas, vous souhaiterez peut-être vous appuyer sur un modèle personnalisé pour ces fichiers. Désormais, dans CLion 2023.3, vous pouvez modifier ces modèles dans Settings/Preferences | Editor | File and Code Templates | Other.

IDE Features Trainer

L'IDE Features Trainer réunit un ensemble de didacticiels interactifs couvrant les fonctionnalités essentielles de l'EDI. Lancez-le depuis l'écran d'accueil ou à partir de Help | Learn IDE Features.

Facilitez les premiers pas

La formation commence par une visite guidée d'initiation, qui vous aide à vous familiariser avec CLion et les principales activités de l'utilisateur : navigation dans les vues et les volets, ouverture de fichiers dans l'éditeur, lancement de votre programme, saisie semi-automatique des symboles, application de correctifs rapides et recherche de symboles.

Explorez les principales fonctionnalités de l'EDI

Une fois que vous en avez terminé avec les bases, vous pouvez passer aux sections Code Editing, Refactorings, Code Completion et Git. Vous pouvez suivre les leçons de la liste dans n'importe quel ordre. Concentrez-vous simplement sur les sujets qui vous intéressent le plus.

Expérience utilisateur

Masquage de la barre d'outils principale

Si vous préférez une vue plus compacte de l'EDI, une nouvelle option permet de masquer la barre d'outils principale dans le mode d'affichage par défaut. Allez dans View | Appearance et décochez l'option Toolbar pour masquer la barre d'outils.


Codes couleur pour les onglets de fichiers

Pour améliorer votre expérience de navigation lorsque vous travaillez simultanément avec divers types de fichiers dans l'éditeur, JetBrains a introduit une mise en évidence par défaut à l'aide de codes couleur pour les onglets de l'éditeur, rappelant leur apparence dans la fenêtre d'outil Project.

Speed Search disponible via un raccourci

La fonctionnalité Speed Search, qui vous permet de naviguer rapidement dans les fenêtres d'outils et les boîtes de dialogue, est désormais accessible via un raccourci. Lorsqu'une arborescence ou une liste est sélectionnée, vous pouvez appeler la recherche facilement à partir du menu Options de la fenêtre d'outil, en appuyant sur Ctrl+F, ou simplement en commençant à saisir votre requête.

Disposition par défaut des fenêtres d'outils

Pour revenir rapidement à la disposition par défaut de la fenêtre d'outil personnalisée de CLion, vous pouvez maintenant utiliser Window | Layouts | Default et rétablir l'apparence par défaut de votre espace de travail.

Autres améliorations

Portée Tests

Pour gagner du temps lors de la phase d'indexation des tests, vous pouvez demander manuellement à CLion de rechercher des tests dans des répertoires spécifiques. Pour ce faire, créez une portée Tests ; seuls les fichiers filtrés par cette portée seront indexés lors de l'indexation des tests.

Vous pouvez utiliser la portée Tests pour filtrer la vue Project et accéder rapidement aux fichiers de test de votre projet.

Prise en charge améliorée des Dev Containers

CLion 2023.3 fournit une prise en charge beaucoup plus étendue des Dev Containers. Vous pouvez désormais facilement ajouter des outils de développement, des environnements d'exécution et des bibliothèques supplémentaires à l'aide des Dev Container Features, pour simplifier la configuration des composants essentiels. JetBrains a en outre implémenté la redirection automatique des ports ; tous les ports que l'application commence à écouter dans un conteneur de développement sont donc transférés de manière transparente.

Visualiseur de diff tout-en-un

CLion 2023.3 repense l'examen des modifications. Désormais, au lieu de parcourir chaque fichier un par un, vous pouvez consulter tous les fichiers modifiés à partir de l'ensemble des modifications regroupées dans un même cadre déroulant. Ce nouveau visualiseur de différences est compatible avec les révisions GitLab, GitHub et JetBrains Space.

Prise en charge des extraits de code GitLab

Afin d'étendre l'intégration avec GitLab introduite avec la version 2023.2 de CLion, JetBrains a ajouté la prise en charge des extraits de code GitLab. Vous pouvez désormais créer des extraits de code publics ou privés directement dans l'EDI.

Nouveautés et téléchargement de CLion 2023.3