URL: https://linuxfr.org/news/sortie-de-ipython-0-13 Title: Sortie de IPython 0.13 Authors: Günther Freimann mbussonn, Nÿco et Bruno Michel Date: 2012年06月28日T10:28:37+02:00 License: CC By-SA Tags: python, ipython, gui et roxor Score: 22 IPython est une console alternative principalement tournée vers l'exploration interactive des données. Après une longue période de réécriture du code, les versions stables s'enchainent tous les quelques mois depuis un peu plus d'un an. La précédente version, sortie en décembre 2011, a introduit une nouvelle interface web, que cette nouvelle mouture vient principalement améliorer, sans pour autant délaisser les utilisateurs de la ligne de commande. ---- [Site officiel](http://ipython.org/) [Releases notes de la version 0.12](http://ipython.org/ipython-doc/rel-0.12/whatsnew/version0.12.html) [Sources sur github](https://github.com/ipython/ipython/) [Dépèche pour la sortie de la version 0.12 ](https://linuxfr.org/news/ipython-012) [Annonce de la sortie sur la ML](http://mail.scipy.org/pipermail/ipython-dev/2012-June/009832.html) [Releases notes de la version 0.13](http://ipython.org/ipython-doc/rel-0.13/whatsnew/version0.13.html) [Télécharger le tar.gz](https://github.com/ipython/ipython/tarball/rel-0.13) ---- # Le notebook # L'interface web IPython est l'un des aspects de cette version qui a reçu le plus de modifications. La plus visible est bien sûr l'abandon du panneau droit pour laisser place à une barre de menu avec un bandeau d'accès rapide à certaines fonctions. Néanmoins le plus gros du travail a été effectué sous le capot, où la majorité du code javascript a été modifié pour être plus modulaire. Il est maintenant possible d'écrire soi-même un widget capable de dialoguer avec le noyau Python à l'autre bout de la connexion websocket pour effectuer toute action désirée. Donc oui, grâce à votre Arduino, vous pouvez maintenant changer le titre de l'onglet si votre café est prêt. On trouvera sur la liste de diffusion d'IPython, et dans les [pull requests](https://github.com/ipython/ipython/pull/1720), différents exemples comme l'intégration d'une bibliothèque de graphiques ([flot](http://code.google.com/p/flot/)) avec des [graphiques interactifs](https://github.com/crbates/ipython-flot) ou une cellule qui permet de choisir interactivement sur quel worker elle s'exécute lorsque l'on utilise la machinerie parallèle de IPython (docs/examples/widgets). Ce genre d'extensions devrait à l'avenir être de plus en plus répandu et facile à installer, grâce à la fonction magique `%install_ext $URL`, dont il est recommandé d'user et d'abuser. Cette nouvelle version a également été l'occasion de réécrire les infobules qui apparaissent pour donner les docstrings des fonctions afin de les rendre plus intelligentes et plus fonctionnelles, ainsi que les fonctionnalités du compléteur qui propose maintenant des complétions basées sur le texte environnant, y compris lorsque le noyau Python est occupé en arrière-plan. # Fonctions magiques # IPython est aussi connu pour ses fonction « magiques » précédées du symbole `%`. Pour rappel, ces « magics » permettent d'étendre le comportement de l'interpréteur IPython pour exécuter une commande en parallèle (`%px`) ou évaluer les performances d'une fonction (`%timeit`) de manière simple. Le fonctionnement interne de ces magics a été totalement repensé afin de rendre l'écriture et l'intégration de nouvelles magics le plus simple possible pour l'utilisateur. Cela a permis la mise en place de magics ayant pour portée l'ensemble d'une cellule du notebook, ou d'une entrée multi-ligne de la console. Il est maintenant possible de tester le temps d'exécution d'un bloc entier de code (`%%timeit`), d'écrire directement du Cython (grâce à `%%cython`), d'exécuter un sous-process bash (`%%shell bash`) ou Ruby (je vous laisse deviner). Vous trouverez même des extensions permettant de faire communiquer IPython avec R, graphviz et autres. N'hésitez pas à en écrire et ajouter leur URL à la liste connue [sur cette page](http://wiki.ipython.org/Extensions_Index). # Qtconsole # La complétion avec la console Qt à été légèrement améliorée afin que les résultats soient navigables à l'aide de la touche tabulation et des flèches directionnelles. On apprécie toujours d'avoir quelques touches en moins à taper pour obtenir ce que l'on veut. Pour ceux qui aiment redémarrer souvent leur noyau Python pour faire des tests, il est maintenant possible de tuer le noyau courant sans devoir confirmer que « Oui, je veux bien redémarrer le noyau, je sais ce que je fais laisse moi tranquille ». Il est aussi possible d'afficher de jolies nimages directement en JPG dans la Qtconsole, qui était auparavant monogame avec les PNG. # Divers # Microsoft aime IPython et explique comment l'installer sur Windows Azure (_hint_ : use Linux) http://www.windowsazure.com/en-us/develop/python/tutorials/ipython-notebook/ Beaucoup de corrections de bugs et d'améliorations mineures qui ne méritent pas un paragraphe, mais dont on remercie grandement les auteurs, qu'ils fassent partie des habitués de la Pull Request ou simplement de passage. À quand `%load_ext linuxfr` ? (un petit oiseau m'a dit que Fernando Perez parlait un peu français et était déjà venu ici...) IPython notebook [sur EC2 en tant qu'extension Chrome](https://chrome.google.com/webstore/detail/afepkpkdjhebipfagcfkeganflaannla). Je vous laisse bien sur aller consulter les notes de versions pour une description plus approfondie et plus exhaustive des changements apportés. Pour finir, les développeurs attendent donc vos réactions, rapports de bugs, patchs ou pull requests qui sont les bienvenus sur [github](https://github.com/ipython/ipython) que ce soit en Python, javascript, ou autre. Pour ceux qui préfèrent les rencontres physiques, il y aura des tutoriels lors de [SciPy 2012 au texas](http://conference.scipy.org/scipy2012/), qui espérons-le seront disponibles en vidéos. Et bien qu'aucun talk officiel ne soit prévu, certains développeurs se promèneront à [Euro SciPy](http://www.euroscipy.org/conference/euroscipy2012).