CLion 2022.1 est disponible. L'EDI C++ apporte une nouvelle fonctionnalit� de profilage CMake
et une exp�rience am�lior�e dans l'�diteur

CLion 2022.1 est maintenant disponible ! Il se concentre sur les am�liorations de la qualit� et les am�liorations des fonctionnalit�s et des flux de travail existants tels que le d�veloppement � distance, Docker, l'int�gration des pr�r�glages CMake, etc. Il apporte �galement une toute nouvelle capacit� de profilage CMake qui vous aide � inspecter visuellement pourquoi votre projet CMake peut prendre beaucoup de temps � recharger. L'analyse de code et les indications de type et de param�tre dans l'�diteur ont �t� ajust�es pour fonctionner mieux et plus pr�cis�ment avec le C++ moderne.

D�veloppement � distance

Le nouveau workflow de d�veloppement � distance est d�sormais fourni dans CLion et accessible � partir de l'�cran d'accueil de l'EDI. Vous pouvez ainsi utiliser une puissante machine distante pour effectuer toutes les op�rations de l'EDI et pour cr�er, ex�cuter et d�boguer du code, tout en ex�cutant l'EDI sur un client l�ger local. Les environnements de d�veloppement cloud fournis dans Space peuvent d�sormais �tre utilis�s avec CLion pour acc�l�rer l'int�gration, obtenir un EDI pr�t � l'emploi en quelques secondes et g�rer efficacement vos ressources de d�veloppement.

Nom : distance.png
Affichages : 39595
Taille : 95,5 Ko

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 des liaisons de port et de volume.

L'outil Valgrind memcheck, qui permet de d�tecter les probl�mes d'utilisation de la m�moire, fonctionne maintenant avec la cha�ne d'outils Docker.

Nom : docker.png
Affichages : 1960
Taille : 84,8 Ko

Am�liorations de l'exp�rience utilisateur

Pour cette version, JetBrains a peaufin� de nombreuses fonctionnalit�s CLion qui rendent votre exp�rience de codage plus confortable, facile et productive. JetBrains s'est concentr� sur leur flexibilit� et leur pr�cision concernant le langage C++ moderne.

Les espaces de noms dans la bo�te de dialogue New C++ Class

Lorsque vous cr�ez une classe C++, vous pouvez d�sormais sp�cifier l'espace de nom dans lequel vous souhaitez que se trouve la nouvelle classe. Vous pouvez sp�cifier n'importe quel espace de noms, existant ou non (dans le deuxi�me cas, il sera cr�� avec la nouvelle classe), imbriqu� ou m�me anonyme (sans nom), en saisissant un espace dans ce champ.

Nom : clion_4.png
Affichages : 1853
Taille : 50,5 Ko

Regroupement dans la vue Structure

Structure View vous aide � naviguer dans le fichier actuel en quelques clics. Parfois, vous souhaitez que les �l�ments aillent dans le m�me ordre que dans le fichier d'origine, mais parfois vous souhaitez qu'ils soient regroup�s par nom qualifi�. Il y a maintenant une bascule d�di�e dans la bo�te de dialogue qui vous permet de basculer entre ces modes : choisissez entre une vue group�e ou une vue simple avec un nom enti�rement qualifi� inclus dans chaque nom d'�l�ment.

Rust

Un nouveau g�n�rateur de projets stub pour les projets Rust vous aidera m�me si vous n'avez pas install� le plugin Rust. Il vous aidera � installer le plugin et vous guidera dans la cr�ation de votre projet.

Conseils d'insertions

Les indications de param�tre et de type vous aident � lire et � g�rer facilement vos bases de code existantes. Les informations suppl�mentaires sont affich�es directement dans l'�diteur et aident avec les noms de param�tres dans les appels de fonction et les types d�duits.

JetBrains a impl�ment� un certain nombre de correctifs pour rendre les conseils d'insertion dans le code C++ plus pr�cis, par exemple :
  • CLion affiche d�sormais un alias wstring convivial comme indice de type pour le type std::basic_string<wchar_t>.
  • CLion affiche d�sormais un indice de type pr�cis pour les types d�pendants.
  • CLion 2022.1 offre de meilleurs conseils pour les fonctions emplace, emplace_back/emplace_front et make_unique/make_shared.

Nom : clion_1.png
Affichages : 1817
Taille : 14,2 Ko

Dans CLion 2022.1, JetBrains a am�lior� les param�tres dans Param�tres/Pr�f�rences | �diteur | Inlay Hints avec quelques explications et exemples de code. Vous pouvez maintenant mieux comprendre les cas o� les conseils sont affich�s et r�gler les param�tres selon vos pr�f�rences. Les conseils pour les indices de tableau peuvent d�sormais �tre d�sactiv�s si vous n'en avez pas besoin. Auparavant, ce n'�tait pas possible.

Analyse de code

Parce que l'analyse de code est un �l�ment cl� de l'EDI, JetBrains a travaill� pour la rendre plus pr�cise et plus facile � configurer, et pour rendre ses notifications plus informatives.

Les param�tres Clang-Tidy et MISRA dans Param�tres/Pr�f�rences | �diteur | Inspections | C/C++ | Les outils d'analyse statique ont �t� retravaill�s pour faciliter le processus de configuration des v�rifications. Une nouvelle repr�sentation visuelle comprend un arbre avec toutes les v�rifications. La recherche rapide vous aide � trouver plus rapidement les v�rifications dont vous avez besoin - commencez simplement � taper le nom que vous recherchez lorsque la bo�te de dialogue est en surbrillance.

Nom : clion_2.png
Affichages : 1768
Taille : 44,1 Ko

Pour Clang-Tidy, la bo�te de dialogue renvoie �galement � la documentation LLVM pour vous aider � en savoir plus sur les v�rifications.

Il est beaucoup plus facile d'am�liorer votre code lorsque les suggestions de l'IDE non seulement nomment le probl�me et sugg�rent le correctif, mais montrent �galement comment le correctif s�lectionn� transformera le code. C'est pourquoi nous avons ajout� un aper�u des actions d'intention*:

Nom : clion_3.png
Affichages : 1782
Taille : 27,3 Ko

Pour Clang-Tidy, le probl�me provoquant des r�sultats incorrects lors de l'utilisation de la cha�ne d'outils WSL a �t� r�solu en configurant Clang-Tidy pour qu'il s'ex�cute dans le WSL lui-m�me.

Aper�u pour les actions d'intention

Les suggestions d'actions d'intention sont disponibles via Alt+Entr�e (ou en cliquant sur l'ic�ne ampoule). Dans la liste des suggestions, vous pouvez d�sormais voir un aper�u du r�sultat de l'action s�lectionn�e. L'aper�u est disponible pour les lois De Morgan, l'inversion de la condition if, la fusion if-else, la fusion de if imbriqu�es, Clang-Tidy, MISRA, Clazy, la division en d�clarations et affectations, la division en d�clarations s�par�es, et plusieurs autres actions.

Analyse de code plus pr�cise

JetBrains a trait� plusieurs probl�mes afin d'am�liorer la pr�cision du moteur d'analyse du code dans CLion, notamment :
  • Les v�rifications Condition is always false/true fonctionnent d�sormais correctement avec les types et la conversion restrictive.
  • CLion ne marque plus les champs comme inutilis�s s'ils ont des destructeurs non triviaux.


Formateur

De nouvelles options de formatage pour les liaisons structur�es ont �t� ajout�es aux sections Spaces et Wrapping and Braces :

Nom : clion_5.png
Affichages : 1765
Taille : 73,8 Ko

Prise en charge CMake plus puissante

CMake est l'un des principaux mod�les de projets dans CLion. Dans cette version, JetBrains s'est concentr� sur la flexibilit� de la configuration de CMake dans CLion, ainsi que sur l'am�lioration de l'exp�rience d'�dition CMake et l'ajout de la prise en charge du profilage. La version 2022.1 de CLion corrige les incoh�rences et le manque de capacit�s de configuration dans les aspects essentiels de la prise en charge de CMake : les pr�r�glages et les profils.

Pr�r�glages CMake et profils CLion

CMake 3.19 a introduit CMake Presets, un moyen universel de configurer CMake et de partager les configurations au sein de votre �quipe. Il est encore jeune et �volue rapidement, avec de nombreuses approches test�es puis mises � jour ult�rieurement en fonction des retours des personnes les utilisant dans des projets r�els. La prise en charge par CLion des pr�r�glages CMake �volue �galement. JetBrains cr�e maintenant des profils CMake pour configurer les pr�r�glages. CLion utilise des profils CMake pour ex�cuter et d�boguer votre application, mais il ne les cr�ait auparavant que pour les pr�r�glages de construction. Les profils de configuration permettent de supprimer les pr�r�glages de construction redondants dans de nombreux cas.

Si vous ne voulez pas que CLion cr�e des profils � partir de pr�r�glages, un nouveau param�tre qui contr�le cela a �t� ajout� � Param�tres/Pr�f�rences | Param�tres avanc�s | CMake | Activez l'int�gration des pr�r�glages CMake. Un autre param�tre est la possibilit� de d�finir des profils CMake dans CLion pour qu'ils se rechargent de mani�re s�quentielle. Vous pourriez en avoir besoin en cas de connexions non triviales entre des profils qui rendent impossible le rechargement parall�le (la valeur par d�faut dans CLion) :

Nom : clion_6.png
Affichages : 1770
Taille : 35,4 Ko

Profils CMake recharg�s de fa�on s�quentielle

Lorsque le rechargement parall�le des profils CMake n'est pas possible, CLion peut maintenant les recharger s�quentiellement. Vous pouvez activer ce comportement dans Settings | Advanced Settings | CMake.

G�n�rateurs CMake

Les g�n�rateurs CMake sont maintenant plus faciles � configurer dans CLion gr�ce aux nouvelles options et mises � jour :
  • Use default : cette option permet d'utiliser dans les nouveaux projets l'outil de build configur� pour la cha�ne d'outils s�lectionn�e dans le profil CMake correspondant.
  • Let CMake decide : avec cette option, CLion n'accorde pas de pr�f�rence explicite � un g�n�rateur, c'est donc CMake qui d�cide lui-m�me quel g�n�rateur utiliser.

Profilage CMake

Vous pouvez maintenant voir pourquoi le rechargement d'un projet CMake prend beaucoup de temps dans CLion. � partir de CMake 3.18, le nouveau tra�age peut �tre activ� dans les param�tres de CMake. CLion vous aidera � ex�cuter le tra�age et � en visualiser les r�sultats.

Mise en forme CMake

Les scripts CMake sont maintenant mis en forme de mani�re plus pr�cise :
  • if() .. endif(), else() et elseif(), endforeach(), endfunction(), endmacro() et endwhile() sont align�s correctement.
  • Il est d�sormais possible de r�duire les blocs pour ces commandes.
  • L'appariement des accolades et la mise en �vidence des blocs de code sont �galement disponibles pour ces commandes.

D�bogueur

D�bogueur CUDA

Vous pouvez d�sormais utiliser le d�bogueur CUDA-GDB dans CLion. Pour ce faire, vous devez sp�cifier le binaire cuda-gdb dans les param�tres du d�bogueur de votre cha�ne d'outils actuelle et utiliser l'option de compilation ci-dessous :

add_compile_options(-G) pour ajouter les symboles de d�bogage CUDA.

Mise � jour de l'interface utilisateur du d�bogueur

Deux nouvelles options sont disponibles dans les param�tres de mise en page de la fen�tre d'outils du d�bogueur :
  • Separate Watches : vous permet d'utiliser un onglet s�par� avec des points de surveillance.
  • Show Tab Labels : permet d'utiliser les noms des onglets de la fen�tre d'outil du d�bogueur.

Valeurs hex dans le d�bogueur

L'option permettant d'afficher les valeurs d�cimales et hexagonales dans le d�bogueur fonctionne d�sormais pour LLDB sous Windows (Settings | Build, Execution, Deployment | Debugger | Data Views | C/C++ | Show integers as hex values and Display alongside the original value).

D�veloppement embarqu�

Serveur GDB int�gr�
La configuration du serveur GDB embarqu� permet maintenant de r�initialiser l'appareil � diff�rentes �tapes :
  • Avant ou apr�s le t�l�chargement (c'est-�-dire le flashage de la ROM de l'unit� centrale ou l'�criture dans la RAM).
  • Toujours (avant et apr�s).
  • Ou jamais.

Les macros fonctionnent d�sormais dans les champs de configuration du serveur GDB embarqu�.

FreeRTOS

Le port FreeRTOS GCC/Posix est maintenant pris en charge et permet de d�boguer FreeRTOS sous Linux.

Autres am�liorations
  • Dans les param�tres des cha�nes d'outils (Settings | Build, Execution, Deployment | Toolchains), vous pouvez d�sormais configurer n'importe quel outil de build � utiliser avec une cha�ne d'outils, comme Make, Ninja, ou autres.
  • Pour les fichiers de biblioth�que, CLion n'affiche plus la notification This file does not belong to any project target (Ce fichier n'appartient � aucune cible de projet).
  • Les r�sultats incorrects de Clang-Tidy qui se produisaient lors de l'utilisation de la cha�ne d'outils WSL sont maintenant corrig�s en ex�cutant Clang-Tidy � l'int�rieur-m�me de WSL.

En savoir plus et t�l�charger CLion 2022.1