JetBrains lance le programme d'accès anticipé (EAP) à CLion 2022.1
la première mise à jour majeure de l'année de son EDI C/C++ multiplateforme

Le programme d'accès anticipé (EAP) à CLion 2022.1, la première mise à jour majeure de l'année de l'EDI C/C++ multiplateforme, a démarré. Conformément à sa feuille de route, JetBrains se concentre sur la qualité dans ce cycle de publication, en corrigeant les bogues les plus gênants et en améliorant les flux de travail existants. Mais vous pouvez également vous attendre à ce que de nouvelles fonctionnalités, sur lesquelles JetBrains a commencé à travailler plus tôt, soient disponibles.

Vous pouvez télécharger les dernières builds EAP sur le site Web de JetBrains. Vous pouvez également les obtenir via l'application Toolbox ou sous forme de package snap (si vous utilisez Ubuntu). Notez que si vous utilisez macOS, il existe une version distincte pour Apple Silicon (puce M1). Cela dit, parmi les nouveautés de cette première version EAP de CLion 2021.1, on note :

  • De nouvelles capacités de développement à distance sont regroupées
  • Outil de build dans les paramètres des chaînes d'outils
  • UX améliorée pour le générateur CMake
  • Profilage CMake
  • Espaces de noms dans la boîte de dialogue New C++ Class
  • Aperçu des actions d'intention
  • Regroupement par nom qualifié dans la vue Structure
  • Paramètres Clang-Tidy mis à jour
  • Chaîne d'outils Docker
  • Et d'autres correctifs notables

De nouvelles capacités de développement à distance sont regroupées

Le nouveau mode de développement à distance a été annoncé dans les versions 2021.3 des EDI JetBrains basés sur IntelliJ, y compris CLion. L'idée principale derrière le développement à distance est d'utiliser une puissante machine distante pour exécuter toutes les opérations de l'EDI et pour construire, exécuter et déboguer le code, tout en exécutant l'EDI sur un client léger local.

CLion 2021.3 n'a pas fourni cette fonctionnalité car il y avait plusieurs problèmes de workflow majeurs au stade bêta, et JetBrains Gateway devait connecter le serveur distant et démarrer un client léger local. Mais avec la version 2022.1 EAP, les nouvelles fonctionnalités de développement à distance sont désormais regroupées dans CLion. Pour accéder à JetBrains Gateway, sélectionnez Développement à distance sur l'écran d'accueil de CLion :


Outil de build dans les paramètres des chaînes d'outils

Dans les paramètres des chaînes d'outils (Settings/Preferences | Build, Execution, Deployment | Toolchains), vous pouvez désormais configurer n'importe quel outil de build à utiliser avec une chaîne d'outils. Auparavant, l'outil make était requis dans ce champ, que vous pouviez ensuite remplacer par Ninja, par exemple dans les profils CMake. Cela a fonctionné, mais était définitivement gênant et non intuitif. Vous pouvez maintenant spécifier l'outil de build dans les paramètres des chaînes d'outils. Dans les chaînes d'outils par défaut, Ninja est utilisé lorsque rien n'est configuré :


UX améliorée pour le générateur CMake

JetBrains continue à rendre le générateur CMake plus facile à utiliser dans CLion. Deux options méritent d'être mentionnées dans la liste déroulante du générateur dans les paramètres du profil CMake, une nouvelle et une qui a été mise à jour :

  • Use default - pour les nouveaux projets, cette option prend désormais l'outil de build configuré pour la chaîne d'outils sélectionnée dans le profil CMake correspondant. La valeur réelle est également affichée dans l'option déroulante.
  • Let CMake decide - cette option signifie que CLion ne forcera aucun générateur CMake explicitement, ce qui signifie que CMake décidera quel générateur utiliser. Par défaut, CMake utilise la variable d'environnement CMAKE_GENERATOR pour déterminer le générateur CMake (CMAKE_GENERATOR).


Profilage CMake

Vous êtes-vous déjà demandé pourquoi il faut beaucoup de temps pour recharger votre projet CMake ? CMake 3.18 a introduit un moyen de générer des informations de trace lors de la génération d'un projet. Vous pouvez l'utiliser pour inspecter les résultats du traçage et identifier des endroits spécifiques dans vos scripts CMake qui peuvent être améliorés.

CMake utilise le format Trace Event de Google pour les résultats. Pour activer le traçage, ajoutez simplement deux flags à la commande CMake : –profiling-format=google-trace et –profiling-output=<path>. CMake générera ensuite un fichier JSON avec les résultats de traçage sous le <path> spécifié. La nouveauté de cet EAP est qu'il peut désormais vous aider à exécuter le traçage et à visualiser les résultats :


Utilisez l'une de ces deux méthodes pour activer le traçage CMake :
1. Manuel : ajoutez –profiling-format=google-trace et –profiling-output=<path> aux options CMake de votre projet.
2. Automatique : cliquez sur Add event tracing to CMake dans la fenêtre de l'outil CMake


CLion recherchera les configurations avec l'option de profilage CMake (avec le suffixe -event-trace dans le nom). Si aucun n'est trouvé, l'EDI copiera le profil actuellement sélectionné et ajoutera les options requises :


Une fois le profil CMake rechargé, CLion affichera une notification suggérant d'ouvrir les informations de profilage :


Dans la fenêtre de l'outil de profilage, vous pouvez :

  1. Sur le côté gauche : inspecter l'ID de processus et l'ID de thread pour le processus de rechargement CMake.
  2. Au centre : inspecter le diagramme de flamme montrant la trace de la pile du processus CMake à chaque période pendant le rechargement de CMake.
  3. Sur le côté droit : explorer les détails de l'événement sélectionné. Les détails incluent le nom de l'événement (fonction), la durée, les arguments de la fonction et l'emplacement de la fonction dans les scripts CMake.

Espaces de noms dans la boîte de dialogue New C++ Class

Lors de la création d'une nouvelle classe C++, vous pouvez désormais spécifier l'espace de noms dans lequel vous souhaitez placer la nouvelle classe. Vous pouvez écrire dans n'importe quel espace de noms existant ou inexistant (qui sera créé avec la nouvelle classe), un espace de noms imbriqué, ou même un espace de noms anonyme (sans nom) si vous entrez un espace vide dans ce champ :


Le champ a un contrôle de validation de base vérifiant que l'identifiant est un nom d'espace de noms valide ou un espace vide.

Aperçu des actions d'intention

Les actions d'intention de CLion couvrent un large éventail de situations, des avertissements aux suggestions d'optimisation. Comme vous le savez probablement, vous pouvez cliquer sur l'icône représentant une ampoule ou appuyer sur Alt+Entrée pour ouvrir la liste des suggestions et sélectionner une action dans la liste. À partir de cet EAP, vous pouvez également voir un aperçu du résultat de l'action sélectionnée :


Pour l'activer, appuyez sur Ctrl+Q (sous Windows/Linux) ou F1 (sous macOS). L'aperçu n'est pas disponible pour toutes les actions d'intention. Si une action d'intention est trop complexe et que l'aperçu ne peut pas être généré, vous verrez la description de l'action d'intention. Une fois activé, l'aperçu apparaîtra chaque fois que vous ouvrirez la liste des actions d'intention disponibles. Pour fermer l'aperçu, appuyez à nouveau sur le raccourci lorsque la liste des actions d'intention est ouverte.

Regroupement par nom qualifié dans la vue Structure

Dans la vue Structure, les éléments peuvent désormais être regroupés par le nom qualifié :


Paramètres Clang-Tidy

Les paramètres Clang-Tidy dans CLion peuvent être configurés dans Settings/Preferences | Editor | InspectionsC/C++ | Static Analysis Tools | Clang-Tidy. Cette version EAP est livrée avec une boîte de dialogue mise à jour pour la configuration des vérifications qui simplifie le processus d'activation/désactivation, en fournissant une arborescence avec toutes les vérifications :


La recherche rapide vous aide à trouver plus rapidement les vérifications requises - commencez simplement à taper le nom que vous recherchez lorsque la boîte de dialogue est en surbrillance. Cliquez sur l'icône Visit Help Page (symbole de la planète) pour accéder à la documentation sur le site Web de LLVM décrivant la vérification en détail.

Chaîne d'outils Docker

Lorsque vous travaillez avec la chaîne d'outils Docker, vous pouvez désormais fournir des paramètres de conteneur supplémentaires, tels que les liaisons (bindings) de port et de volume, entre autres :


Corrections notables

Comme il s'agit d'une version axée sur la qualité, JetBrains a également apporté de nombreuses corrections notables, dans divers domaines : modèle de projet, développement embarqué, analyse dynamique, refactorisations, Clangd, éditeur, etc.

Télécharger la dernière version EAP de CLion 2021.1