Nouveautés de PyCharm 2025.2

Présentation de l'AI Toolkit, la dernière version prise en charge de PyCharm Community, des améliorations pour l'IA, Junie et les notebooks, une interface utilisateur persistante pour mettre à jour les fichiers .lock, et bien plus encore

PyCharm Community fera bientôt partie de la version unifiée de PyCharm

Dans le cadre de notre stratégie visant à unifier et renforcer PyCharm, 2025.2 sera la dernière version prise en charge de PyCharm Community. Avec la version 2025.3, nous offrirons un moyen fluide de migrer vers le PyCharm unifié. Vous pouvez effectuer une mise à niveau vers la version 2025.2 Community en utilisant Toolbox App ou depuis la notification de mise à jour intégrée au produit.

Si vous souhaitez commencer à utiliser la version unifiée de PyCharm avec des notebooks Jupyter gratuitement dès maintenant, sans attendre la migration, vous pouvez la télécharger ici.

En savoir plus sur la version unifiée de PyCharm

AI Toolkit Pro

PyCharm AI Toolkit intègre le développement d'IA directement dans PyCharm, réunissant ainsi l'expérimentation, le débogage, l'évaluation, l'ajustement et le déploiement dans un environnement familier.

En savoir plus

AI Playground Pro

PyCharm 2025.2 introduit l'AI Playground, un nouvel outil polyvalent qui permet aux ingénieurs en IA de comparer côte à côte les réponses de différents modèles d'IA. Vous pouvez configurer les prompts système et affiner les paramètres individuels du modèle, ce qui permet un contrôle précis des paramètres Temperature, Top P et Max length.

Allez dans More Tool Windows | AI Playground, où vous pourrez choisir entre :

  • Tous les modèles inclus dans votre abonnement IA payant (cela utilisera vos jetons AI AssistantExpérimental).
  • Des fournisseurs personnalisés que vous pouvez ajouter via des clés d'API.
  • Des modèles exécutés localement.

En savoir plus

AI Agents Debugger Pro

PyCharm 2025.2 introduit également un nouveau plugin puissant, AI Agents Debugger, conçu pour offrir de la transparence et des capacités de débogage pour le développement d'agents IA. Il est conçu pour les développeurs travaillant avec des systèmes agentiques qui ont besoin de comprendre, déboguer et optimiser leurs workflows d'agents.

AI Agents Debugger transforme les systèmes agentiques, qui sont des « boîtes noires » par nature, en fournissant des informations détaillées sur le raisonnement, les métadonnées, les entrées et les sorties de chaque nœud d'agent.

Télécharger

Junie

L'agent de programmation JetBrains Junie planifie, écrit, améliore et teste le code de façon autonome, pour offrir une expérience de développement fluide, efficace et agréable. Il gère les tâches fastidieuses comme la restructuration du code, la création de tests et l'implémentation d'améliorations, afin que vous puissiez vous concentrer sur des problèmes plus importants et sur l'innovation.

Junie a bénéficié de plusieurs mises à jour majeures, dont un gain de vitesse pouvant atteindre 30 % ! La prise en charge du MCP permet désormais à Junie de se connecter à des serveurs externes et d'offrir des solutions plus précises. Junie est également désormais disponible pour le développement à distance (actuellement pris en charge sur macOS et Linux) et a lancé un programme d'accès anticipé pour son intégration à GitHub. Cette intégration vous permet de travailler sur des pull requests sans ouvrir l'IDE.

Junie est disponible dans PyCharm dans le cadre de l'abonnement JetBrains AI.

AI Assistant

  • Saisie semi-automatique plus intelligente dans tous les langages pris en charge, avec l'ajout de SQL, YAML, JSON, Markdown, etc.
  • Règles du projet vous permettant de demander à l'IA de se conformer aux conventions de code et à la logique métier de votre équipe.
  • Plus de flexibilité hors ligne : connectez n'importe quel serveur de modèle compatible avec OpenAI, comme llama.cpp ou LiteLLM.
  • JetBrains AI Assistant prend désormais en charge les images en pièces jointes dans le chat lors de l’utilisation de modèles Anthropic et OpenAI.

Toutes les fonctionnalités JetBrains AI sont disponibles gratuitement dans le cadre d'un abonnement PyCharm Pro, avec la saisie semi-automatique illimitée du code, des workflows locaux puissants et un nombre limité de fonctionnalités cloud.

Connexion de clients IA externes à votre IDE avec la configuration en un clic du serveur MCP

PyCharm prend désormais en charge la configuration en un clic pour le serveur MCP (Model Context Protocol), facilitant la connexion des clients IA externes tels que Claude, Cursor ou Windsurf. Lorsqu'un client compatible est détecté sur votre machine, votre IDE vous invite à activer le serveur et à configurer automatiquement la connexion, sans aucune configuration manuelle.

Grâce à cette intégration, les fonctionnalités de vos clients IA préférés sont complétées par l'intelligence de PyCharm, vous permettant de déclencher des actions telles que l'exécution de tests unitaires, la refactorisation du code et la génération de fichiers.

Vous trouverez plus de détails et la liste des outils pris en charge dans la documentation

Interface utilisateur persistante pour la mise à jour des fichiers .lock

Nous avons ajouté des contrôles persistants aux fichiers de configuration .toml pour uv, Hatch, et Poetry. Ces contrôles vous permettent d'appliquer les modifications apportées à un fichier .toml en cliquant sur les boutons correspondants pour synchroniser, verrouiller ou mettre à jour les dépendances dans votre environnement.

Génération contextuelle du code pour les notebooks Jupyter et les cellules SQL Pro

Vous pouvez à présent générer du code pour les notebooks Jupyter et les cellules SQL à l'aide de l'AI Assistant, qui prend en compte le contexte de la cellule source.

Pour ce faire, cliquez sur AI Edit Cell dans le menu contextuel ou accédez-y à partir de l'icône d'IA dans la barre d'outils de droite.

Fenêtre d'outils Logical structure pour Django Pro

La fenêtre Logical structure donne une vue centrée sur le framework de votre projet Django, ce qui vous permet de naviguer dans votre application et de comprendre son architecture de façon plus intuitive. Votre projet est représenté tel que Django le voit, en faisant apparaître les relations significatives entre les modèles, les vues, les sérialiseurs, les formulaires, les classes d'administration et autres composants que vous manipulez quotidiennement. Vous pouvez également générer des modèles pour les relations manquantes entre les entités, afin de rapidement créer le squelette de votre code.

Un abonnement JetBrains AI actif permet d'accéder à des fonctionnalités plus avancées. En remplacement des modèles basiques, l'IA génère un code complet qui tient compte des relations entre les entités, ce qui offre des résultats plus pertinents et riches en contexte.

Traitement d'image avancé

La nouvelle visionneuse d’images comporte des options permettant d’effectuer des manipulations supplémentaires, notamment la restauration de l’image d’origine, l’inversion des canaux de l’image d’origine, la conversion de l’image en niveaux de gris, la définition du seuil de binarisation et bien plus.

Fenêtre contextuelle remaniée d'information sur les paramètres

Nous avons remanié la fenêtre contextuelle d'information sur les paramètres pour la rendre plus claire, plus lisible et intuitive pour les différents langages pris en charge :

  • Les longues listes de paramètres sont désormais automatiquement renvoyées à la ligne, ce qui évite d'avoir à faire défiler horizontalement.
  • La mise en évidence des paramètres a été adaptée à l'éditeur pour plus de lisibilité.
  • Le signe de coche a été supprimé car il s'agissait d'un élément d'interface utilisateur redondant.
  • Les polices, la mise en page et la couleur de fond ont été mises à jour.
  • Lors de l'ouverture, la fenêtre contextuelle défile automatiquement jusqu'à la signature de méthode pertinente.

Frameworks et technologies Pro

Angular : prise en charge du mot-clé in dans les modèles

PyCharm 2025.2 ajoute la prise en charge du mot-clé « in » dans les modèles Angular, une fonctionnalité qui avait été introduite dans Angular 20. Il est désormais possible d'utiliser des expressions telles que foo in myObj et @if (key in myObj) directement dans vos modèles tout en profitant de la mise en évidence et de la validation à part entière du code.

Formateur intégré désactivé si Prettier est utilisé

Le formateur intégré est automatiquement désactivé pour le formatage de l'ensemble du fichier si Prettier est configuré dans votre projet. Cela permet d'éviter les conflits de formatage et d'assurer des résultats cohérents à tous les niveaux de votre base de code. Le formatage instantané et les autres fonctionnalités de l'éditeur fonctionnent toujours de la façon habituelle, mais le formatage de l'ensemble du fichier a recours à Prettier lorsque cette fonctionnalité est présente.

Outils de base de données Pro

Nous avons introduit plusieurs mises à jour qui vont améliorer votre expérience des bases de données ! Les résultats modifiables des requêtes SELECT avec des clauses JOIN sont désormais pris en charge, ce qui permet de modifier directement les résultats des requêtes dans la grille. L'ajout de l'introspection par niveaux dans PostgreSQL et Microsoft SQL Server permet de charger plus rapidement les métadonnées, tandis que PostgreSQL bénéficie désormais de son propre mécanisme d'actualisation intelligent permettant de ne mettre à jour que les objets affectés après des modifications DDL. D'autre part, SQLite prend maintenant en charge les chemins de fichiers WSL, ce qui résout les problèmes de verrouillage en écriture, tandis que les connexions MongoDB permettent à présent de configurer les préférences de lecture et la connectivité des jeux de réplicas.

Vous trouverez ici plus de détails sur ces fonctionnalités.

Correctifs de bugs

  • [PY-28509] Les modules ne peuvent pas être profilés avec des importations relatives.
  • [PY-60819] FLASK_DEBUG=1 fait échouer le débogueur lorsqu'un chemin d'installation Python ou PyCharm comporte des espaces.
  • [PY-75536] Les conteneurs Django ne peuvent pas s'exécuter en même temps que la console Python.
  • [PY-19974] Il n'est pas possible de créer un environnement Conda et de gérer les packages Conda avec environment.yml/yaml.
  • [PY-75294] La commande docker compose run lie les ports par défaut et ne donne aucune possibilité de désactiver ce comportement.
  • [PY-70287] requirements.txt : Aucun avertissement ne s'affiche pour les packages périmés.
  • [PY-81011] Dans un notebook Jupyter, les suggestions de code persistent de façon indéfinie sans possibilité de les accepter ou de les refuser, puis elles occupent un espace formaté dans la cellule précédant et suivant du code.
  • [PY-34368] Un faux avertissement This decorator will not receive a callable it may expect s'affiche lors de l'utilisation du décorateur @typing.overload sur @classmethod.
  • [PY-4330] Les importations non utilisées sont classées dans la catégorie Unresolved reference.
  • [PY-80762] Les instructions match renvoient des faux positifs lors des inspections Unreachable code.
  • [PY-80455] Faire glisser et déposer les fichiers sur la structure de projet ne fonctionne pas.
  • [PY-80565] Un faux avertissement est déclenché lorsque auto est affecté à StrEnum.