Nouveautés de PyCharm 2022.2

Prise en charge de Python 3.11, Client HTTP amélioré et meilleure expérience utilisateur

Python 3.11

Code insight for exception groups and except* operator (PEP 654)

PyCharm vous avertit en cas de combinaisons interdites, telles que la présence d'opérateurs except et except* dans la même instruction try, ou des opérateurs continue, break et return dans les clauses except*. Si vous essayer de traiter une classe ExceptionGroup dans une clause try*, un avertissement vous sera également adressé.

Code insight for marking individual TypedDict items as required or potentially missing (PEP 655)

Python 3.11 permet de marquer les clés individuelles TypedDict comme Required ou NotRequired, ce qui évite d'avoir à créer des hiérarchies de classe complexes avec le paramètre total. PyCharm 2022.2 comprend les notations Required[ ] et NotRequired[ ] et fournit l'analyse de code pour ces dernières.

Initial support for Variadic Generics (PEP 646)

PyCharm 2022.2 reconnaît les expressions avec astérisque dans les opérations d'index (entre parenthèses) et *args: *Ts dans les définitions de fonction. Si vous n'utilisez pas Python 3.11, l'IDE vous indiquera que les génériques variadiques ne sont pas encore disponibles.

Client HTTP Pro

Sélection d'un environnement avant l'exécution

Il existe désormais une solution pratique qui permet de sélectionner un environnement d'exécution via une icône de la gouttière. Pour activer cette fonctionnalité, choisissez l'option Select Environment Before Run dans la boîte combinée Run with.

Barre de progression pour la vue Response

Pour vous aider à suivre le processus de téléchargement, nous avons ajouté une barre de progression dans la vue Response.

Prise en charge des points de terminaison WebSocket dans le Client HTTP

PyCharm 2022.2 prend en charge les connexions WebSocket. Grâce à cette API, vous pouvez envoyer des messages à un serveur et recevoir des réponses basées sur les événements sans avoir à interroger le serveur. PyCharm peut maintenant envoyer directement des requêtes sur les protocoles HTTP et WebSocket. ws:// et wss:// sont désormais délégués à l'exécuteur WebSocket.

Autres améliorations :

  • Prise en charge des points de terminaison GraphQL dans le Client HTTP

    La version 2022.2 introduit la prise en charge des requêtes GraphQL dans le Client HTTP.

Expérience utilisateur

Nouvelle interface utilisateur pour configurer les interpréteurs distants

Un nouvel assistant permet de configurer des interpréteurs sur les cibles distantes (WSL, SSH, Docker, Docker Compose, Vagrant). Cela permet de mieux structurer le processus de configuration et de faciliter son suivi.

Exécution du fichier en cours

Pour exécuter et déboguer instantanément un fichier sans configuration d'exécution dédiée, utilisez Run Current File, disponible dans le widget Run/Debug. Elle permet d'accéder à un menu secondaire qui propose les exécuteurs applicables, ainsi que l'action Run with Parameters, ce qui vous permet de régler les paramètres de configuration de l'exécution avant d'exécuter le fichier.

Paramètres de saisie semi-automatique du code dans la fenêtre contextuelle

Vous pouvez désormais accéder aux paramètres Code Completion Settings et configurer vos préférences directement à partir du bouton du menu (trois points verticaux) dans la fenêtre contextuelle de saisie semi-automatique.

Configuration de la mise en évidence des inspections améliorée

PyCharm 2022.2 permet de configurer l'affichage d'une inspection dans l'éditeur. Pour ce faire, utilisez le nouveau menu déroulant Highlighting in editor, qui présente de façon pratique tous les styles de mise en évidence possibles.

URL cliquables dans les chaînes de valeurs JSON, YAML et .properties

Les fichiers JSON, YAML et .properties comportent désormais des références web insérées automatiquement dans les valeurs commençant par http:// et https://. Vous pouvez ouvrir ces liens dans un navigateur web en un clic ou générer une requête dans le Client HTTP depuis le menu Context Actions (Alt + Entrée).

Autres améliorations :

  • Barre de progression Cloning repository sur l'écran d'accueil

    La barre de progression Cloning repository est maintenant plus visible et plus facile à utiliser car elle s'affiche directement dans la liste Projects.

  • Nouveau paramètre de contrôle de l'insertion automatique des parenthèses

    Vous pouvez indiquer si vous souhaitez que l'IDE insère automatiquement des parenthèses lors de la saisie-automatique en cochant l'option Insert parentheses automatically when applicable dans Settings / Preferences | Editor | General | Code Completion.

  • Nouveau panneau de notifications pour l'ajustement des associations de types de fichiers

    Lorsque votre fichier est détecté comme texte brut, l'IDE propose désormais de supprimer l'association de type de fichier potentiellement indésirable directement depuis l'éditeur.

  • Action Merge All Project Windows sur macOS

    Pour les utilisateurs de macOS, nous avons introduit la possibilité de fusionner toutes les fenêtres de projet ouvertes en les transformant en différents onglets d'une même fenêtre. Cette action est disponible dans le menu Window.

Prise en charge initiale de PyScript Pro

PyScript is a framework for creating rich Python applications in the browser using HTML's interface and the power of Pyodide, WASM, and modern web technologies. PyScript donne accès aux utilisateurs de tout niveau à un langage de programmation expressif, facile à apprendre et offrant un grand nombre de possibilités.

« PyScript est un élément clé de la vision d'Anaconda visant à démocratiser la science des données et Python. Nous sommes ravis de voir que JetBrains reconnaisse le potentiel de PyScript et en tire parti en ajoutant sa prise en charge initiale dans un produit destiné aux professionnels ».

Fabio Pliger,
Principal Software Architect at Anaconda, Inc.,
co-creator of PyScript

Analyse du code dans <py-script>

La balise <py-script> permet d'exécuter des scripts Python multilignes et d'interagir avec la page. PyCharm 2022.2 reconnaît la syntaxe Python, y compris les bibliothèques NumPy et Matplotlib, vérifie le code contenu dans les balises <py-script> des fichiers HTML et fournit la saisie semi-automatique et la mise en évidence du code appropriées.

Mise en évidence des éléments de syntaxe et saisie semi-automatique pour les balises et leurs attributs

La saisie semi-automatique du code et la mise en évidence des éléments de syntaxe sont maintenant disponibles pour les balises PyScript, telles que <py-env> pour déclarer des dépendances et <py-repl> pour créer des composants REPL.

Prise en charde de PyScript dans le navigateur intégré

Vous pouvez voir un aperçu de vos fichiers PyScript directement dans le navigateur intégré de PyCharm, de la même façon que pour les fichiers HTML, et les modifications apportées au script s'affichent dans le navigateur lors de chaque enregistrement.

Jupyter Notebooks Pro

Sorties d'image redimensionnables

Pour améliorer la lisibilité des sorties d'images, PyCharm 2022.2 permet de les redimensionner en faisant simplement glisser leur bordure inférieure.

Pour vous simplifier la tâche, la bordure inférieure est plus visible.

Nouvelles actions de copier-coller de cellules à partir de la barre d'outils

Vous avez maintenant la possibilité d'utiliser de couper, copier et coller des cellules en utilisant les actions disponibles dans barre d'outils de l'éditeur Jupyter (boutons et icônes).

Docker Pro

Mise en ligne de l'image Docker locale vers Minikube et d'autres connexions

Il est maintenant possible de copier facilement des images d'un démon Docker vers un autre avec la nouvelle action Copy Docker Image, qui enregistre l'image dans un fichier, puis la transmet à la connexion choisie en mode push.

Options de connexion Docker pour différents démons docker

PyCharm s'intègre avec Colima et Rancher et peut ainsi prendre en charge davantage d'options permettant d'établir des connexions à un démon Docker.

Autres améliorations :

  • Connexion automatique à Docker lors du redémarrage de l'IDE

    PyCharm 2022.2 se connecte automatiquement à Docker au redémarrage de l'IDE. Ce nouveau paramètre est activé par défaut ou peut être sélectionné dans Settings / Preferences | Advanced Settings | Docker.

Gestion des bases de données Pro

Possibilité d'importer plusieurs fichiers CSV

PyCharm 2022.2 vous permet d'importer plusieurs fichiers CSV dans des tables de données, qu'elles soient nouvelles ou existantes. Pour ce faire, sélectionnez plusieurs fichiers dans la vue Project et faites-les glisser vers un schéma de base de données ou sélectionnez Import to database dans le menu contextuel.

Modes de résolution Playground et Script

PyCharm 2022.2 comporte deux modes de résolution pour les scripts SQL. En mode Playground, les objets sont résolus en fonction du contexte. Il s'agit désormais de la valeur par défaut des consoles de requête. En mode Script, le début du fichier est résolu en fonction du contexte, mais toute déclaration SET CURRENT SCHEMA dans le script peut modifier le contexte de la résolution. Le mode Script est maintenant le mode de résolution par défaut pour les fichiers locaux. Pour passer d'un mode à l'autre, utilisez simplement la liste déroulante de la barre d'outils.

Autres améliorations :

  • Prise en charge de base de DuckDB, Mimer SQL et Apache Ignite

    PyCharm 2022.2 fournit maintenant la prise en charge de 3 bases de données supplémentaires : DuckDB, Mimer SQL et Apache Ignite.

  • Nouvelle interface utilisateur Modify

    Dans PyCharm 2022.2, tous les objets enfants d'une table peuvent être ajoutés et modifiés avec la nouvelle interface utilisateur Modify. L'ancienne interface utilisateur reste accessible depuis le menu contextuel.