Principales mises à jour
Mises à jour de la prise en charge de Django (Pro)
Nouveaux modèles dynamiques pour les formulaires et les modèles Django
PyCharm 2023.2 ajoute plusieurs nouveaux live templates pour Django. Ces nouveaux live templates permettent d'insérer des constructions de code communes pour les vues, les formulaires et les modèles Django (y compris Django admin) en saisissant simplement des abréviations. Vous pouvez les gérer dans la section Settings | Editor | Live Templates | Django.
JetBrains a également étoffé la liste de modèles dynamiques qui permettent de créer rapidement des balises Django dans les fichiers de modèles. Vous pouvez consulter la liste actualisée dans la section Settings | Editor | Live Templates | Django Templates.
Fenêtre d'outils Endpoints pour Django
La fenêtre d'outils Endpoints dispose désormais d'une assistance dédiée pour le framework REST Django. Vous pouvez rechercher les déclarations de point de terminaison, naviguer vers des déclarations de point de terminaison spécifiques et renommer des segments de chemin d'accès d'une URL. D'autre part, la modification des points de terminaison dans l'onglet HTTP Client bénéficie de la saisie semi-automatique du code.
Intégration du formateur Black
PyCharm 2023.2 intègre le formateur Black. Si vous avez déjà installé Black, PyCharm le détecte et propose de le configurer pour votre projet.
Dans PyCharm, Black est compatible avec les fichiers .py et .pyi. Le formatage peut porter aussi bien sur des fichiers entiers que des fragments de fichiers. Vous pouvez exécuter Black au lieu du formateur intégré, que ce soit quand vous reformatez votre code manuellement (en appuyant sur Ctrl+Alt+L ou en sélectionnant Code | Reformat Code dans le menu principal) ou lorsque vous enregistrez les modifications dans votre fichier.
Run Anything
PyCharm 2023.2 introduit Run Anything, un outil qui permet d'exécuter littéralement tout ce que vous voulez, quel que soit le fichier actuellement ouvert. Utilisez-le pour créer et lancer rapidement des configurations d'exécution/débogage, lancer la console Python, gérer les packages Python ou exécuter des applications, des scripts, des commandes et des tâches. Pour ouvrir la fenêtre contextuelle Run Anything, appuyez deux fois sur Ctrl.
AI Assistant (accès limité, Pro)
Cette version voit arriver un ajout majeur à PyCharm Professional : AI Assistant. Dans l'état actuel des fonctionnalités assistées par IA, AI Assistant offre la possibilité de discuter avec l'IA et peut par exemple rédiger automatiquement des commentaires de documentation pour vous, suggérer des noms, générer des messages de commit, et plus encore.
L'AI Assistant est alimenté par le service JetBrains AI, qui peut vous connecter à OpenAI. JetBrains proposera la connexion à d'autres fournisseurs de modèles de langages par la suite. Pour accéder aux fonctionnalités d'IA de l'assistant, vous devez installer le plugin JetBrains AI et vous connecter au service JetBrains AI à l'aide de votre compte JetBrains. La disponibilité du service JetBrains AI peut varier initialement.
Prise en charge de QML (Pro)
Prise en charge de la syntaxe QML
Si vous utilisez Qt Modeling Language (QML) dans votre code, vous bénéficierez désormais de la prise en charge de la syntaxe QML dans PyCharm. Cette prise en charge inclut :
- Mise en évidence et saisie semi-automatique du code ;
- Capacité de recherche des utilisations ;
- Vue Structure pour naviguer plus facilement dans les fichiers QML ;
- Fenêtre contextuelle Quick Documentation pour des informations sur les symboles.
Outil de formatage QML et autres paramètres
PyCharm applique les paramètres de style de code intégré pour le code QML par défaut. Vous pouvez configurer les chemins d'accès Qt et QML, qmlformat en tant qu'outil de formatage et le serveur de langage QML dans Settings | Languages & Frameworks | QML.
Expérience utilisateur
Boîte de dialogue Python Run/Debug Configurations remaniée
JetBrains a simplifié la boîte de dialogue Run/Debug Configurations pour les configurations d'exécution Python. Désormais, lorsque la boîte de dialogue est ouverte, vous bénéficiez d'un accès immédiat aux paramètres les plus utilisés. Tous les paramètres supplémentaires, tels que Run with Python Console, Emulate terminal in output console et Before Launch ont été regroupés dans le menu Modify options.
Option de mise à jour des packages depuis la fenêtre d'outils Python Packages
La fenêtre d'outils Python Packages est une solution rapide et simple de gestion de PyPI, Conda ou des paquets privés de votre projet.
Dans PyCharm 2023.2, vous verrez la liste des versions de nouveaux packages dans la partie gauche de la fenêtre d'outils Python Packages et, si nécessaire, vous pouvez télécharger et installer les nouvelles versions directement depuis cette liste.
Option de réduction des annotations de type Python
Afin de renforcer la fiabilité du code, PyCharm 2023.2 prévoit une option permettant de plier les suggestions de types complexes. Si vous préférez lire le code sans annotations de type, vous pouvez sélectionner Settings | Editor | General | Code Folding | Python | Type annotations pour que vos projets s'ouvrent avec les annotations de type pliées par défaut. Vous pouvez également utiliser les actions Collapse Python Type Annotations et Expand Python Type Annotations pour écarter rapidement les annotations de type ou les rétablir lorsque nécessaire.
Recherche de texte dans Search Everywhere
Search Everywhere (Double Maj) s'utilise principalement pour lancer des recherches dans vos fichiers, classes, méthodes, actions et paramètres. Les résultats de la recherche textuelle s'affichent à présent dans les cas où il n'y a pas ou peu d'autres résultats de recherche disponibles pour une requête donnée.
Code Insight
Conseils d'insertion de nom de paramètre
Afin de faciliter la lecture des appels de fonction contenant de nombreux arguments, PyCharm 2023.2 dispose de conseils d'insertion de noms de paramètres. Vous pouvez configurer leur comportement dans Settings | Editor | Inlay Hints. D'autre part, il est possible de désactiver les conseils d'insertion de noms de paramètres pour des méthodes spécifiques avec le raccourci Ctrl+Clic.
Améliorations des conseils de type
PyCharm 2023.2 reconnaît les appels de fonction annotés avec typing.NoReturn. L'EDI fournit désormais des informations correctes sur le code inaccessible et les variables potentiellement non initialisées lorsque vous appelez ce type de fonction.
Prise en charge de la substitution des fixtures dans pytest
Lorsque les fixtures pytest sont substituées, PyCharm 2023.2 assure l'inférence de type, la navigation et la saisie semi-automatique du code. Ensuite, l'EDI résout les fixtures de la même façon que pytest, en vérifiant au préalable la fixture dans la classe de test, puis dans le fichier actif et dans les instructions d'importation, et enfin dans le fichier conftest.py le plus proche.
Meilleure prise en charge des modèles Jinja
Comme pour .j2 et .jinja2, PyCharm 2023.2 reconnaît automatiquement les fichiers utilisant l'extension .jinja en tant que modèles Jinja et assure la mise en évidence des éléments de syntaxe et la saisie semi-automatique du code en conséquence.
Les fichiers utilisant des extensions composites, tels que les modèles Ansible, bénéficient à présent de la mise en évidence des éléments de syntaxe et de la saisie semi-automatique du code standard, tant pour le langage du modèle que pour celui des données. Les principaux formats texte reconnus sont .xml, .yaml et .properties. Les fichiers *-playbook.yaml sont désormais également détectés en tant que fichiers Jinja2 avec le langage de données YAML.
Autres améliorations
Dans les fichiers pyproject.toml, PyCharm 2023.2 assure désormais la saisie semi-automatique des noms de paquets dans les attributs dependencies et requires. L'EDI propose également d'installer les paquets manquant à ces attributs.
Dans PyCharm 2023.2, l'éditeur de logiciels a introduit une option permettant de placer votre code entre parenthèses lorsque vous revenez à la ligne. Cela fonctionne pour les expressions binaires, les chaînes d'appels, les chaînes et les déclarations d'importation relative.
PyCharm 2023.2 assure la mise en évidence des éléments de syntaxe du contenu de la balise <py-config>. De plus, PyCharm offre désormais la saisie semi-automatique du code dans la balise <py-script> pour les éléments display, Element et Element.write, et vérifie les types de leurs arguments.
Interface utilisateur
En-têtes colorés pour les projets dans la nouvelle interface utilisateur
Vous pouvez désormais affecter une couleur unique et une icône à chacun de vos projets, ainsi que personnaliser les couleurs prédéfinies des en-têtes. Pour ce faire, faites un clic droit sur un en-tête pour accéder au menu contextuel. Sélectionnez l'option Change Project Color et choisissez la couleur voulue. Pour désactiver cette fonctionnalité, désélectionnez simplement l'option Show Project Gradient dans le menu contextuel.
Thème clair avec en-tête clair dans la nouvelle interface utilisateur
Dans la version 2023.2, JetBrains a affiné l'expérience utilisateur avec le thème Light en introduisant l'alternative Light with Light Header, qui comporte des couleurs claires claires pour les en-têtes de fenêtre, les infobulles et les bulles de notification.
Tri des fichiers par heure de modification dans la vue Project
PyCharm 2023.2 offre la possibilité (très attendue) de classer vos fichiers dans la vue Project en fonction de leur date/heure de modification. Cette nouvelle fonctionnalité réorganise automatiquement les fichiers à l'enregistrement des modifications de votre projet. Pour activer cette fonctionnalité, ouvrez le menu des trois points verticaux dans la vue Project, puis sélectionnez Tree Appearance | Sort by Modification Time.
Configurations d'exécution épinglées dans le widget Run
Afin de simplifier la gestion des configurations d'exécution multiples, JetBrains a implémenté une option permettent d'épingler les configurations préférées dans le widget Run. Pour épingler une configuration d'exécution dans la section Pinned, ouvrez le menu des trois points verticaux situé à côté de son nom et sélectionnez Pin. Si vous avez plusieurs configurations épinglées, vous pouvez facilement les réorganiser en les glissant-déposant dans la liste.
Autres améliorations
JetBrains a élargi les options de personnalisation pour la barre d'outils de la nouvelle interface utilisateur. Faites un clic droit sur n'importe quel widget et sélectionnez Add to Main Toolbar pour explorer les options disponibles.
Science des données (Pro)
Option de configuration des serveurs Jupyter gérés
Avec PyCharm 2023.2 vous pouvez configurer les serveurs Jupyter gérés. Vous pouvez spécifier les variables d'environnement des serveurs gérés, afin de les lancer depuis le répertoire voulu et via un fichier jupyter.exe distinct, n'appartenant pas à l'interpréteur Python sélectionné. Il est également possible de spécifier des paramètres supplémentaires pour les serveurs Jupyter ou JupyterLab.
Prise en charge des DataFrame Polars
PyCharm 2023.2 permet d'utiliser des tables Polars interactives dans les notebooks Jupyter. Dans la console Python, vous pouvez inspecter les DataFrame Polars via l'option View as DataFrame de la liste Special Variables. Les débogueurs Python et Jupyter sont tous les deux compatibles avec Polars. PyCharm fournit des informations sur les types et les dimensions des tables, complète les noms et les types des colonnes, et vous permet de trier les tables.
Notez que les DataFrame Polars ne sont pas pris en charge en mode Scientific.
Performances (Pro)
Nouvel outil pour générer facilement des index partagés
PyCharm 2023.2 propose un nouvel outil en ligne de commande pour créer et télécharger rapidement des index partagés. Il est conçu pour simplifier le travail d'équipe et éliminer le temps perdu à indexer localement de grands projets. Le nouvel outil simplifie le processus de génération d'index partagés pour votre équipe : il remplace plusieurs scripts et services par juste quelques clics.
Workflow de qualité du code (Pro)
Plateforme de qualité de code Qodana intégrée
Cette version facilite considérablement la configuration des analyses statiques en intégrant totalement Qodana, une plateforme de contrôle de la qualité du code.
Il est désormais possible de déclencher une analyse directement depuis PyCharm, d'afficher la liste des problèmes pour l'ensemble de votre projet et de mettre en place des murs qualité dans votre système CI/CD préféré. De plus, vous pouvez voir les résultats de l'analyse côté serveur sans avoir à quitter PyCharm.
Développement web (Pro)
Amélioration de la mise en forme des erreurs pour JavaScript et TypeScript
Pour cette version 2023.2 de PyCharm, JetBrains a tenu à améliorer la présentation des erreurs de type en JavaScript et TypeScript. Vos erreurs et vos avertissements seront désormais mis en forme d'une manière plus lisible, ce qui vous permettra de repérer plus facilement les problèmes dans votre code. Cela concerne toutes les erreurs TypeScript, certaines des erreurs JavaScript les plus courantes, et même les erreurs localisées.
Prise en charge de l'imbrication CSS
PyCharm 2023.2 prend désormais en charge l'imbrication CSS. JetBrains a implémenté une prise en charge syntaxique ainsi qu'une inspection qui vous alerte si le sélecteur imbriqué commence par un identifiant ou une notation fonctionnelle.
Plugin OpenAPI Specifications intégré
Le plugin OpenAPI Specifications est fourni avec PyCharm 2023.2. Ce plugin assure la prise en charge des fichiers de spécification OpenAPI et Swagger. Ses fonctionnalités principales incluent la validation par le schéma JSON, la navigation et la génération de code avec Swagger Codegen et OpenAPI Generator.
Aperçu de l'interface utilisateur de Redoc pour les fichiers OpenAPI et Swagger
PyCharm prend maintenant en charge les prévisualisations Redoc UI pour les fichiers de spécification OpenAPI et Swagger, notamment les fichiers YAML et JSON, et vous permet de basculer entre les interfaces utilisateur Redoc et Swagger dans l'EDI. Avec l'intégration de Redocly, vous pouvez accéder à la console Try it à partir de PyCharm et l'utiliser pour définir des paramètres et envoyer des requêtes à votre API.
Prise en charge de la modification des fichiers AsyncAPI
Travailler avec le format de spécification AsyncAPI dans PyCharm est maintenant beaucoup plus facile. L'EDI prend en charge la fonctionnalité de validation des schémas et fournit une saisie semi-automatique du code pour les références, la vue Endpoints et le volet Editor Preview.
Client HTTP
Requêtes gRPC utilisant TLS dans le client HTTP. Vous pouvez désormais envoyer des requêtes gRPC via TLS (Transport Layer Security) dans le client HTTP. TLS assure le cryptage et l'authentification, ce qui garantit la confidentialité et l'intégrité de la transmission de vos données. Les schémas https:// et grpcs:// sont tous deux pris en charge dans la syntaxe de la requête.
Prise en charge des schémas Swagger et OpenAPI dans le client HTTP. Le client HTTP est désormais capable de comprendre les spécifications Swagger et OpenAPI et de fournir les options de saisie semi-automatique du code correspondantes pour les corps de requête JSON.
Prise en charge des importations JavaScript dans le client HTTP. Dans PyCharm 2023.2, il est désormais possible de partager du code JavaScript commun pour les gestionnaires de requêtes du client HTTP via des modules importés.
Prévisualisation des réponses PDF et HTML dans le client HTTP. PyCharm peut maintenant afficher un aperçu des fichiers PDF et HTML directement dans les résultats de la requête du client HTTP.
Prise en charge de GraphQL et WebSocket dans l'interface en ligne de commande du client HTTP. Il est désormais possible d'utiliser l'interface en ligne de commande du client HTTP dans PyCharm pour interagir avec les API GraphQL et établir des connexions WebSocket avec des services, par exemple pour des tests ou des scripts d'automatisation.
VCS
Intégration de GitLab
PyCharm 2023.2 inaugure son intégration avec GitLab afin d'optimiser votre workflow de développement. Vous pouvez désormais travailler avec la fonctionnalité Merge Request directement dans l'EDI : passer en revue la liste des requêtes, vérifier les modifications, laisser des commentaires et naviguer vers les vues correspondantes.
Option permettant d'envoyer un commit de lignes de code spécifiques
PyCharm 2023.2 introduit une fonctionnalité très attendue qui permet d'effectuer des commits pour des parties spécifiques de blocs de code. Pour effectuer un commit partiel, sélectionnez les lignes d'un bloc et appelez Include these lines into commit dans le menu contextuel. Le bloc sera divisé en lignes individuelles et les lignes sélectionnées seront mises en évidence. Vous pouvez ajouter ou exclure des lignes de la sélection à l'aide de cases à cocher ou du menu contextuel.
Docker (Pro)
Aperçu des fichiers à l'intérieur des couches d'images Docker
Il est désormais facile d'accéder au contenu d'une couche d'image Docker et de le prévisualiser dans la fenêtre d'outil Services. Sélectionnez l'image dans la liste, sélectionnez Show layers et cliquez sur Analyze image for more information. Cela ouvre une liste des fichiers stockés dans la couche. Vous pouvez facilement ouvrir le fichier sélectionné dans l'éditeur à partir de cette liste en cliquant droit sur le fichier, puis en cliquant sur Open File (ou Download File pour les binaires).
Configuration du conteneur Docker comme tâche Before Launch pour les configurations d'exécution
Il est désormais possible de définir une configuration d'exécution Docker pour qu'elle s'exécute avant une autre configuration en la désignant comme tâche Before Launch. L'EDI attendra que le conteneur en cours d'exécution soit sain pour lancer la configuration d'exécution suivante. Pour placer une configuration d'exécution Docker dans une file d'attente, commencez par la créer puis ajoutez-la au conteneur concerné en cliquant sur Modify options | Add before launch task | Run configuration.
Kubernetes (Pro)
Prise en charge de plusieurs fichiers kubeconfig au sein d'un même projet
L'éditeur de logiciels a introduit une nouvelle fonctionnalité qui vous permet de configurer plusieurs fichiers kubeconfig dans le même projet. Cela simplifie la gestion de plusieurs clusters ou le travail avec des environnements sur plusieurs clusters dans le même projet. Pour configurer les fichiers, allez dans File | Settings | Build, Execution, Deployment | Kubernetes.
Possibilité de consulter les journaux d'activité du déploiement
Vous pouvez à présent consulter les journaux d'activité pour les déploiements dans les clusters Kubernetes dans la fenêtre d'outil Services. Effectuez un clic droit sur Deployment dans l'arbre, puis sélectionnez Follow Log ou Download Log dans le menu contextuel.
Outils de base de données (Pro)
Prise en charge de Redis Cluster
Vous pouvez désormais vous connecter à Redis Cluster et bénéficier des mêmes fonctionnalités qu'avec la version indépendante de Redis. Lors de la connexion à un cluster, jdbc:redis:cluster: doit être saisi avant l'URL souhaitée. Choisissez le type de connexion approprié pour votre situation. Si un tunnel SSH est nécessaire pour la connexion au cluster, les hôtes et les ports de tous les nœuds du cluster doivent être indiqués dans l'URL.
Nouvelle interface utilisateur pour la boîte de dialogue de migration du schéma
Pour la version 2023.2, JetBrains a remanié la fonctionnalité de migration des schémas. La principale différence est qu'un même objet est désormais placé sur la même ligne dans les deux parties de la boîte de dialogue. Il est donc plus facile de comprendre quels objets vont être ajoutés, supprimés ou modifiés dans le schéma cible.
Paramètre Time zone pour l'éditeur de données
La page de configuration Data Editor and Viewer comporte un nouveau champ Time zone permettant de définir le fuseau horaire dans lequel afficher la valeur datetime.
Prise en charge des partages de données et des bases de données externes dans Redshift
Les bases de données partagées et leur contenu sont désormais introspectés. Les partages de données sur lesquels ces bases de données sont créées sont eux aussi introspectés.
Autre
Avec cette version, JetBrains a introduit une API LSP pour les développeurs de plugins qui souhaitent utiliser un serveur LSP spécifique pour l'aide au codage dans l'EDI. Si vous avez créé votre propre langage de programmation ou framework, vous pouvez le faire prendre en charge par l'EDI en créant un serveur LSP et un plugin. Veuillez noter que cette fonctionnalité n'est disponible que dans la version payante de l'EDI.
JetBrains a décomposé le plugin Big Data Tools, pour vous permettre d'utiliser ses éléments séparément. Six nouveaux plugins sont donc disponibles pour PyCharm : Kafka, Spark, Flink, Remote File Systems, Big Data File Viewer et Zeppelin. Si vous avez besoin des six, l'installation du plugin générique Big Data Tools reste possible et constitue un moyen pratique de tous les obtenir d'un seul clic.
À partir de la version 2023.2, la valeur par défaut de la taille maximale du tas (-Xmx) a été modifiée pour atteindre 2 Go.
Nouveautés et téléchargement de PyCharm