Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

PyCharm 2019.3 disponible avec les widgets interactifs pour les notebooks Jupyter
La prise en charge de MongoDB et l'assistance au codage pour toutes les fonctionnalités de Python 3.8

Le , par Michael Guilloux

34PARTAGES

11  0 
JetBrains vient d'annoncer la sortie de PyCharm 2019.3, la troisième et dernière mise à jour majeure annuelle de son EDI pour le développement web et la data science avec Python. La première, publiée en mars dernier, a apporté un bon lot de fonctionnalités et améliorations, notamment une meilleure intégration avec Jupiter Notebook, un keymap pour Sublime Text, le support des plugins de thèmes personnalisés, entre autres. PyCharm 2019.2 a suivi au mois de juillet avec une amélioration de l'expérience Jupyter Notebook, la coloration syntaxique pour de nombreux autres langages, la prise en charge de certaines des fonctionnalités majeures de Python 3.8, et bien plus encore.

La dernière grosse mise à jour annuelle de l'EDI Python vient, quant à elle, avec des widgets interactifs pour les notebooks Jupyter, la prise en charge de MongoDB et l'assistance au codage pour toutes les fonctionnalités de Python 3.8, entre autres nouveautés que nous détaillerons dans la suite.

Jupyter

Widgets interactifs

Pour plus d'interactivité, les notebooks Jupyter prennent en charge des contrôles interactifs connus sous le nom de widgets interactifs. Ces contrôles vous permettent de transformer des notebooks statiques en tableaux de bord interactifs, afin que les personnes qui consultent vos notebooks puissent personnaliser leur vue. Avec cette mise à jour, PyCharm prend désormais en charge ces widgets interactifs. Cela signifie que la sortie tient compte du rendu des widgets, et qu'ils peuvent être utilisés pour manipuler les notebooks de la même façon que sur les notebooks Jupyter natifs. L'EDI prend maintenant en charge la plupart des bibliothèques de widgets couramment utilisées.


Saisie semi-automatique lors de l'exécution

L'un des avantages de PyCharm est son assistance intelligente au codage, rendue possible par des algorithmes avancés d'analyse du code statique. Toutefois, pour des langages dynamiques comme Python, l'analyse du code statique ne suffit pas toujours. C'est pourquoi avec cette mise à jour, JetBrains étend ces capacités d'analyse en exploitant les informations d'exécution fournies par Jupyter lui-même. Ce processus permet une saisie automatique plus efficace dans les cas tels les index de dictionnaires ou les expressions profondément imbriquées dont l'EDI ne pouvait pas déterminer le type à l'aide d'une analyse statique.


Zoom avant et arrière pour le volet de la sortie

Vous pouvez à présent choisir d'utiliser une taille de police de l'aperçu cohérente avec l'éditeur ou personnalisée dans les paramètres. De plus, l'aperçu respecte maintenant l'option de l'éditeur "Change font size (Zoom) with Ctrl+Mouse Wheel". Si cette option est activée, vous pouvez lancer un zoom avant ou arrière sur l'aperçu à l'aide de la roue de la souris en maintenant la touche Ctrl enfoncée.


Autres améliorations

Si un notebook Jupyter est modifié en dehors de l'EDI (par exemple via l'interface native de Jupyter), l'EDI synchronise maintenant automatiquement son état pour s'assurer que l'utilisateur de l'EDI voie la dernière version du notebook et qu'aucune modification ne soit perdue.

Python

Saisie automatique pour les chemins de fichiers

Il arrive souvent de faire des erreurs de frappe lorsque vous écrivez un nom de fichier, particulièrement avec des noms de fichiers assez longs comme "open(‘data/survey_data_28112019_exported.csv’)". Pour éviter ce genre d'erreur, vous pouvez maintenant bénéficier de suggestions de chemins de fichiers dans l'éditeur de code ou la console Python. JetBrains a en effet perfectionné sa fonctionnalité de saisie automatique de code contextuelle afin que les littéraux de chaînes des contextes associés aux fichiers suggèrent des chemins de fichiers possibles.


Prise en charge de l'importation relative

Si vous préférez les importations relatives aux importations absolues, PyCharm est maintenant capable d'effectuer des conversions automatiques entre ces styles. Si vous importez déjà depuis un certain paquet avec une importation relative, toute nouvelle importation depuis ce paquet sera automatiquement créée en tant qu'importation relative également.


Python 3.8 : TypedDicts

Vous pouvez éviter les erreurs d'affectations de valeurs pour les dictionnaires grâce à la prise en charge de TypedDict par PyCharm. Vous bénéficiez ainsi d'une représentation précise de vos structures de paires clé-valeur et de l'aide de l'éditeur de code pour leur utilisation.


Python 3.8 : annotation de type Literal

Vous avez une méthode qui prend une chaîne littérale spécifique, par exemple le mode fichier pour "open" ? Vous pouvez utiliser l'annotation de type "Literal" de Python 3.8 pour contrôler non seulement un type, mais également une valeur précise. PyCharm vous avertit désormais lorsque vous appelez une fonction à l'aide d'une valeur non prise en charge.


Création automatique de tests pytest

L'outil de JetBrains pour la création automatique de tests a bénéficié d'une mise à niveau pour prendre en charge pytest. Grâce à cela, PyCharm vous permet de créer automatiquement des tests pytest d'un simple clic sur l'option Go To > Test, dans le menu contextuel d'une déclaration de méthode.


Débogueur : informations sur la taille pour les collections

Lors du débogage, les informations de suivi doivent être aussi claires et détaillées que possible. C'est pourquoi JetBrains a mis à jour la vue des variables afin qu'elle affiche des données mieux organisées et plus complètes. Grâce à cela, vous bénéficiez d'un nouveau tri, d'une représentation visuelle optimisée pour les tableaux scientifiques, de l'affichage de la longueur des collections et de la suppression des doublons dans les détails.


Autres améliorations

Si vous travaillez avec des scripts réseau ou communiquez avec des équipements informatiques à l'aide de valeurs hexadécimales ou binaires, il est important de noter que PyCharm intègre à présent la conversion du format entre les valeurs décimales et le format hexadécimal ou binaire directement depuis la console ou le débogueur, grâce à la vue des variables.

Pour ceux qui développent pour Linux sous Windows, JetBrains a également ajouté la prise en charge du sous-système Windows pour Linux 2. Vous pouvez donc configurer votre interpréteur Python dans PyCharm afin qu'il utilise celui de WSL 2.

Améliorations des performances

Indexation plus rapide

PyCharm peut vous aider à progresser plus vite grâce à son analyse de code avancée. Pour que cela fonctionne, JetBrains a besoin d'indexer non seulement votre code, mais aussi tous les paquets que vous importez. Lorsque vous utilisez un paquet avec des extensions compilées, comme beaucoup de paquets de science des données, avant de pouvoir l'indexer, JetBrains doit générer des squelettes Python (fichiers stub) qui décrivent l'interface Python. L'éditeur de logiciels a apporté des améliorations à ce processus qui permettent d'accélérer l'ensemble de l'indexation d'au moins 25 %. Évidemment, si vous utilisez le même paquet dans plusieurs virtualenvs, JetBrains réutilise l'index déjà créé. Rappelons que le terme virtualenv désigne un environnement virtuel Python isolé ou encore un outil qui permet de créer de tels environnements.


Moins de blocages et une signalisation améliorée pour ces blocages

Malheureusement, parfois l'interface utilisateur de PyCharm se bloque pendant quelque temps avant de vous permettre de reprendre votre travail de codage. JetBrains comprend que ce problème est extrêmement désagréable, et travaille pour éliminer ces blocages. C'est pourquoi, dans PyCharm 2019.3, JetBrains a corrigé de nombreux problèmes pouvant entraîner des blocages de l'interface utilisateur, et ajouté la possibilité de signaler immédiatement un blocage de l'interface directement dans l'EDI. Cela lui permet d'enquêter sur les raisons de ce blocage pour s'assurer qu'il ne se reproduise pas. Les utilisateurs sont donc invités à signaler les différents blocages de l'interface utilisateur de PyCharm afin d'aider à les éliminer.

Autres améliorations

Cette année, JetBrains a beaucoup travaillé sur les performances de démarrage de tous ses EDI. Le temps de démarrage de sa plateforme principale (IntelliJ) a été amélioré dans les versions 2019.3 et l'entreprise compte poursuivre ses efforts allant ce sens pour tous ses EDI ; ce qui promet des améliorations futures.

Notons également qu'il est maintenant possible de changer de thème sans redémarrer l'EDI. Cela peut se faire lorsque vous choisissez un thème préinstallé, mais aussi juste après en avoir téléchargé un nouveau.

Plusieurs améliorations du traitement des événements et des fichiers ignorés ont permis d'accélérer la mise à jour du statut des systèmes de contrôle dans PyCharm 2019.3. En outre, JetBrains a apporté des modifications au rendu de l'éditeur et le défilement à travers de longs fichiers est beaucoup plus fluide.

Prise en charge des bases de données

Prise en charge de MongoDB

Si vous créez une application sur MongoDB, vous serez ravi d'apprendre que vous pouvez maintenant parcourir vos collections MongoDB dans PyCharm. Vous pouvez connecter votre base de données en ajoutant une source de données depuis la fenêtre d'outils de base de données (View > Tool Windows > Database). PyCharm Professional Edition propose toutes les fonctionnalités de base de données de DataGrip, l'EDI SQL professionnel créé par JetBrains.


Fonctionnalités de l'EDI

Paramétrage des configurations d'exécution

Lorsque vous créez une application de ligne de commandes, il est généralement pratique de pouvoir modifier rapidement les arguments. Vous pouvez bien sûr toujours accéder à "Edit Configuration" pour les modifier, mais il existe désormais un meilleur moyen : grâce à la nouvelle fonction "run configuration macros (variables)", vous pouvez paramétrer PyCharm pour qu'il vous invite à saisir la valeur à chaque fois que vous lancez votre application.


Recherche dans une sélection

Si vous souhaitez connaître la fréquence d'occurrence d'un texte dans une section de votre fichier, notez que l'action "Find" cible désormais votre sélection en priorité. Et si vous voulez chercher partout, il suffit d'appuyer à nouveau sur Ctrl-F (Cmd-F sous MacOS) pour étendre votre recherche au reste du fichier.


Autres améliorations

Si une partie de votre application est écrite en JavaScript, il y a des chances que vous utilisiez des modèles Handlebars quelque part. Si l'extension Handlebars est installée, vous pouvez à présent activer l'intelligence de code Handlebars dans n'importe quelle chaîne Python. Il vous suffit d'appuyer sur Alt-Entrée dans votre chaîne, de choisir "Inject language or reference", puis d'indiquer "Handlebars".

Contrôle de version

Amélioration de la comparaison avec la branche actuelle

Plus vous avez de branches, plus il est difficile de garder la trace des différences entre chacune d'elles. Dans la nouvelle version de PyCharm, la fonctionnalité de comparaison des branches, relookée, vous offre un aperçu rapide des commits qui font la différence entre deux branches.


Amélioration de l'interface utilisateur pour cloner un référentiel

Quel que soit le type de dépôt que vous utilisez, JetBrains propose à présent un emplacement unique de départ pour extraire un nouveau projet.


Autres améliorations

Lors de l'extraction d'une branche distance, vous souhaitez généralement créer une branche locale pour opérer un suivi de la branche distante. Dans PyCharm 2019.3, une action "checkout" unique vous assure de pouvoir consulter l'état actuel de la branche distante, sans risquer de perdre l'un de vos commits locaux.

PyCharm a toujours eu la capacité d'effectuer un push de la branche actuellement extraite. Mais parfois, vous pouvez avoir besoin d'effectuer un push d'une autre branche. Notez que désormais, vous n'avez plus besoin de l'extraire d'abord.

Développement web

Classes CSS depuis un CDN

Si vous utilisez une feuille de style provenant d'un CDN, vous pouvez maintenant télécharger une version de cette feuille de style pour une utilisation spécifique de saisie automatique de code.


Consultation des valeurs renvoyées par les méthodes lors du débogage de JavaScript

Tout comme le débogueur Python, le débogueur JavaScript peut maintenant vous montrer les valeurs renvoyées des méthodes que vous appelez. Pour afficher les valeurs de retour, il suffit de cliquer sur l'icône de roue dentée dans le débogueur et activer "Show Return Values".


Autres améliorations

Il est maintenant possible de configurer les paramètres de style CSS pour forcer l'utilisation d'apostrophes simples ou doubles en guise de guillemets. Que vous utilisiez des apostrophes simples ou doubles dans votre CSS, PyCharm peut désormais vous aider à maintenir la cohérence de vos guillemets. Vous pouvez les configurer dans Settings > Editor > Code Style > Style Sheets > CSS, dans l'onglet "Other".

Si vous utilisez des composants React qui n'ont pas de propTypes définis, sachez que PyCharm peut désormais inférer les props et vous proposer une saisie semi-automatique pour les composants qui n'ont pas de propTypes définis.

Télécharger PyCharm 2019.3

Voir aussi :

Sortie de DataGrip 2019.3, l'EDI de JetBrains destiné aux administrateurs de bases de données vient avec le support de MongoDB et une première version du débogueur PL/SQL
RubyMine 2019.3 est disponible avec la possibilité de configurer le mappage pour RuboCop, apporte un meilleur aperçu du code et améliore le débogueur
IntelliJ IDEA 2019.3 est disponible avec une amélioration notable des performances et de la qualité, ainsi que de nombreuses corrections de bugs
WebStorm 2019.3 est disponible avec un démarrage plus rapide, une prise en charge plus avancée de Vue.js et une complétion de code plus intelligente pour JavaScript
PhpStorm 2019.3 est disponible et intègre un support complet de PHP 7.4, le style de code PSR-12, le support de MongoDB, le Windows Subsystem for Linux (WSL), et autres
Sortie de CLion 2019.3, la dernière version majeure de l'année 2019 pour l'EDI C/C++ de Jetbrains

Une erreur dans cette actualité ? Signalez-le nous !