PyCharm 2023.2 : nouveaux live templates pour Django, intégration du formateur Black, Run Anything et AI Assistant
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. Pour modifier les modèles existants ou en créer un, consultez la page d'aide de PyCharm.
Nous avons également étoffé la liste des live templates qui permettent de créer rapidement des balises Django dans des fichiers de modèles. La liste des live templates actualisée est disponible dans Settings | Editor | Live Templates | Django Templates.
La fenêtre d'outils Endpoints fournit maintenant une prise en charge du framework Django REST. Vous pouvez rechercher des déclarations de point de terminaison, naviguer vers des déclarations de point de terminaison spécifiques et renommer des segments de chemins d'URL. Dans l'onglet HTTP Client, vous bénéficiez de la saisie semi-automatique du code pour la modification des points de terminaison. Essayez cette fonctionnalité et dites-nous de quelles autres fonctionnalités vous aimeriez disposer dans une future version de PyCharm !
PyCharm 2023.2 intègre le formateur Black. Si vous avez déjà installé Black, PyCharm le détectera et proposera de le configurer pour votre projet.
Dans PyCharm, Black fonctionne 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. Vous trouverez plus d'informations sur les options de configuration pour Black sur la page d'aide dédiée.
PyCharm 2023.2 ajoute l'outil Run Anything, qui permet d'exécuter littéralement tout ce que vous voulez, quel que soit le fichier qui est ouvert. Utilisez-le pour créer et lancer rapidement des configurations d'exécution/débogage, lancer la console Python, gérer les paquets 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.
Cette version se distingue par l'apport d'une nouveauté majeure dans PyCharm Professional : l'AI Assistant. Parmi les fonctionnalités générées par IA actuellement fournies par l'AI Assistant, vous trouverez notamment un chat, la rédaction automatique de commentaires de documentation, la suggestion de noms et la génération de messages de commit.
L'AI Assistant est alimenté par le service JetBrains AI, qui peut vous connecter à OpenAI. Nous proposerons la connexion à d'autres fournisseurs de modèles de langages par la suite. Pour accéder aux fonctionnalités d'AI Assistant, vous devez installer le plugin JetBrains AI et vous connecter au service JetBrains AI via votre compte JetBrains. La disponibilité du service JetBrains AI peut varier initialement. Consultez cet article pour plus d'informations sur l'AI Assistant et les instructions sur la façon d'y accéder.
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 :
PyCharm applique les paramètres de style de code intégrés pour le code QML par défaut. Vous pouvez configurer les chemins Qt et QML, qmlformat en tant qu'outil de formatage et le serveur de langage QML dans Settings | Languages & Frameworks | QML.
Nous avons simplifié la boîte de dialogue Run/Debug Configurations pour les configurations d'exécution Python. Désormais, une fois la boîte de dialogue ouverte, vous avez accès immédiatement 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, sont maintenant disponibles dans le menu Modify options.
La fenêtre d'outils Python Packages offre un moyen simple et rapide de gérer les packages PyPI, Conda ou privés pour votre projet.
Dans PyCharm 2023.2, la liste des versions des nouveaux paquets est visible dans la partie gauche de la fenêtre d'outils Python Packages et vous pouvez télécharger et installer les nouvelles versions directement depuis cette liste si besoin.
Afin de renforcer la lisibilité du code, PyCharm 2023.2 fournit une option pour 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 supprimer rapidement les annotations de type et les rétablir lorsque vous en avez besoin.
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.
PyCharm 2023.2 fournit de conseils d'insertion pour les noms de paramètres afin d'améliorer la lisibilité des appels de fonction contenant de nombreux arguments. Vous pouvez configurer leur comportement dans Settings | Editor | Inlay Hints. Il est aussi possible de les désactiver pour des méthodes spécifiques en utilisant le raccourci Ctrl+Clic.
PyCharm 2023.2 reconnaît les appels de fonction annotés avec typing.NoReturn
. L'IDE fournit désormais des informations correctes sur le code inaccessible et les variables potentiellement non initialisées lorsque vous appelez ce type de fonction.
Lorsque les fixtures pytest sont substitués, PyCharm 2023.2 assure l'inférence de type, la navigation et la saisie semi-automatique du code. L'IDE résout maintenant les fixtures de la même façon que pytest, en vérifiant d'abord 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.
Comme pour .j2
et .jinja2
, PyCharm 2023.2 reconnaît maintenant automatiquement les fichiers avec l'extension .jinja
en tant que modèles Jinja et fournit la mise en évidence de la syntaxe et la saisie semi-automatique du code.
Les fichiers avec des extensions composites, comme les modèles Ansible, disposent désormais d'une coloration syntaxique et d'une complétion de code appropriées pour le langage du modèle et pour le langage des données. Les principaux formats texte reconnus sont .xml
, .yaml
et .properties
. Les fichiers *-playbook.yaml
sont aussi détectés en tant que fichiers Jinja2 avec le langage de données YAML.
pyproject.toml
, PyCharm 2023.2 fournit maintenant la saisie semi-automatique pour les noms de paquets dans les attributs dependencies
et requires
. L'IDE suggère également d'installer les paquets manquant dans ces attributs. <py-config>
. De plus, la saisie semi-automatique du code est maintenant disponible dans la balise <py-script>
pour les éléments display
, Element
et Element.write
, et PyCharm vérifie les types de leurs arguments. Vous pouvez désormais affecter une couleur et une icône uniques à chacun de vos projets et 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 une couleur. Pour désactiver cette fonctionnalité, désélectionnez simplement l'option Show Project Gradient dans le menu contextuel.
Pour cette version 2023.2, nous avons affiné l'expérience utilisateur avec le thème Light en introduisant l'alternative Light with Light Header, qui propose des couleurs claires pour les en-têtes de fenêtre, les infobulles et les bulles de notification.
PyCharm 2023.2 offre la possibilité (très attendue) de classer vos fichiers dans la vue Project en fonction de leur heure de modification. Cette nouvelle fonctionnalité réorganise automatiquement les fichiers lorsque vous enregistrez les 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.
Afin de simplifier la gestion des configurations d'exécution multiples, nous avons implémenté une option permettant 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 kebab (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 dans la liste par glisser-déposer.
PyCharm 2023.2 permet de configurer les serveurs Jupyter gérés. Vous pouvez spécifier les variables d'environnement pour les serveurs gérés, les configurer pour les lancer à partir de tout répertoire et les lancer via un fichier jupyter.exe
distinct situé en dehors de l'interpréteur Python sélectionné. Il est également possible de spécifier des paramètres supplémentaires pour les serveurs Jupyter ou JupyterLab.
PyCharm 2023.2 vous permet d'utiliser des tables Polars interactives dans les notebooks Jupyter. Dans la console Python, vous pouvez inspecter les DataFrame Polars avec l'option View as DataFrame dans la liste Special Variables. Les débogueurs Python et Jupyter fonctionnent tous les deux 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.
Veuilez noter que les DataFrames Polars ne sont pas pris en charge en mode Scientific.
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 pour votre équipe : vous pouvez créer des index partagés en quelques clics sans utiliser de scripts ou de services supplémentaires. En savoir plus.
Cette version facilite considérablement la configuration des analyses statiques en intégrant totalement la plateforme de contrôle de la qualité du code Qodana.
Il est désormais possible de déclencher une analyse directement dans PyCharm, de voir 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.
Qodana vient de sortir de sa phase de preview. Vous trouverez plus d'informations à ce sujet dans cet article.
Nous avons cherché à améliorer la présentation des erreurs de type en JavaScript et TypeScript dans PyCharm 2023.2. Désormais, les erreurs et les avertissements seront présentés de manière plus lisible, ce qui facilite la détection des problèmes dans votre code. Cela s'applique à toutes les erreurs TypeScript, à certaines des erreurs JavaScript les plus courantes, et aux erreurs localisées dans une autre langue.
PyCharm 2023.2 prend désormais en charge l'imbrication CSS. Nous avons 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.
Le plugin OpenAPI Specifications est fourni avec PyCharm 2023.2. Ce plugin assure la prise en charge des fichiers de spécifications OpenAPI et Swagger. Ses principales fonctionnalités incluent la validation par schéma JSON, la navigation et la génération de code avec Swagger Codegen et OpenAPI Generator.
PyCharm prend maintenant en charge les aperçus de Redoc UI pour les fichiers de spécification OpenAPI et Swagger, y compris les fichiers YAML et JSON, et vous permet de passer de l'interface utilisateur de Redoc et à celle de Swagger dans l'IDE. 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.
Travailler avec le format de spécification AsyncAPI dans PyCharm est maintenant beaucoup plus facile. L'IDE prend en charge la fonctionnalité de validation des schémas et fournit la saisie semi-automatique du code pour les références, la vue Endpoints et le volet Editor Preview.
Vous pouvez désormais envoyer des requêtes gRPC via TLS (Transport Layer Security) dans le client HTTP. TLS fournit le cryptage et l'authentification, ce qui garantit la confidentialité et l'intégrité pour 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.
Le client HTTP est maintenant 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.
PyCharm 2023.2 permet de partager du code JavaScript commun pour les gestionnaires de requêtes du client HTTP via des modules importés.
PyCharm peut maintenant afficher des aperçus de fichiers PDF et HTML directement dans les résultats de requêtes 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.
PyCharm 2023.2 inaugure l'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'IDE : passer en revue la liste des requêtes, vérifier les modifications, laisser des commentaires et naviguer vers les vues correspondantes.
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.
Vous pouvez maintenant facilement accéder aux contenus d'une couche d'image Docker et en voir un aperçu dans la fenêtre d'outils Services. Sélectionnez l'image dans la liste, puis Show layers et cliquez sur Analyze image for more information. Cela permet d'ouvrir une liste des fichiers stockés dans la couche. Vous pouvez alors ouvrir le fichier sélectionné dans l'éditeur à partir de cette liste en faisant un clic droit sur le fichier, puis en cliquant sur Open File (ou Download File pour les binaires).
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'IDE attendra que le conteneur en cours d'exécution soit prêt avant de 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.
kubeconfig
au sein d'un même projet Nous avons 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.
Vous pouvez maintenant consulter les journaux d'activité des déploiements dans les clusters Kubernetes dans la fenêtre d'outils Services. Faites un clic droit sur Deployment dans l'arbre, puis sélectionnez Follow Log ou Download Log dans le menu contextuel.
Vous pouvez désormais vous connecter à Redis Cluster et bénéficier des mêmes fonctionnalités qu'avec la version autonome de Redis. Lors de la connexion à un cluster, saisissez jdbc:redis:cluster:
avant l'URL. Choisissez le type de connexion approprié en fonction de 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.
Pour la version 2023.2, nous avons remanié la fonctionnalité de migration de schéma. La principale différence est qu'un objet est désormais placé sur la même ligne dans les deux parties de la boîte de dialogue, ce qui permet de comprendre plus facilement quels objets vont être ajoutés, supprimés ou modifiés dans le schéma cible.
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.
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.