L'Association Francophone Python organise comme à son habitude son rendez-vous annuel autour de Python : Pycon FR. Venez échanger sur Python avec des passionnés à la Cyberbase de la Villette (Paris), les 30 et 31 mai.
Des dizaines de conférences, courtes présentations et tutoriels, seront égrainés tout au long du week-end, sur des sujets tout public ou parfois un peu plus techniques.
L'intégralité de l'événement est gratuit !
L'organisation de Pycon FR est rendue possible grâce aux partenaires de l'AFPy pour cet événement. Merci à eux !
Les conférences devraient être visionnables en ligne (streaming vidéo) durant l'événement, puis téléchargeables après l'événement comme les années précédentes.
Journal Hasard 0.8 : bibliothèque de génération des nombres aléatoires
Hasard
est une bibliothèque de génération de nombres (pseudo) aléatoires.
Simplicité
Elle offre une API simple avec des fonctions de haut niveau et une distribution uniforme. Elle embarque de nombreux algorithmes (Mersenne Twister, ISAAC, RC4, etc.) et peut réutiliser des bibliothèques existantes (OpenSSL, GSL, GMP, glib).
Sécurité
Hasard choisit le meilleur générateur selon vos besoins et votre environnement (Linux, Windows, ...) en utilisant des « profils » (ex: « @fast » ou « @secure »). Le générateur est initialisée automatiquement (…)
Simplicité
Elle offre une API simple avec des fonctions de haut niveau et une distribution uniforme. Elle embarque de nombreux algorithmes (Mersenne Twister, ISAAC, RC4, etc.) et peut réutiliser des bibliothèques existantes (OpenSSL, GSL, GMP, glib).
Sécurité
Hasard choisit le meilleur générateur selon vos besoins et votre environnement (Linux, Windows, ...) en utilisant des « profils » (ex: « @fast » ou « @secure »). Le générateur est initialisée automatiquement (…)
Debian remplace la glibc par eglibc
Les mainteneurs Debian de la bibliothèque standard C ont décidé de passer de la GNU libc (glibc) à eglibc. La migration est déjà effective dans Debian Sid. La « libc » est un élément essentiel dans une distribution étant donné que l'intégralité des applications l'utilise. La décision de migrer a été mûrement réfléchie et découle de plusieurs raisons : relations difficiles avec les développeurs de la glibc, prise en charge incomplète de l'ARM dans la glibc, branche stable non maintenue, etc.
Le projet eglibc a été lancé en août 2006 par Codesourcery et est aujourd'hui soutenu par un consortium (Freescale, MIPS technologies, MontaVista, Wind River). Ce n'est pas à proprement parler un « fork » de la glibc, c'est une collection de patchs visant l'embarqué. Il permet notamment de désactiver certains composants, les locales par exemple, pour diminuer l'empreinte mémoire. La compilation croisée est également améliorée, point important pour l'embarqué. La bibliothèque eglibc est aussi compatible avec d'autres shells que le très classique Bash.
Le projet vise une compatibilité binaire avec la glibc, et pour cela l'arborescence des sources est régulièrement synchronisée. La distribution Linux OpenWrt supporte déjà eglibc (en plus d'uClibc).
Le projet eglibc a été lancé en août 2006 par Codesourcery et est aujourd'hui soutenu par un consortium (Freescale, MIPS technologies, MontaVista, Wind River). Ce n'est pas à proprement parler un « fork » de la glibc, c'est une collection de patchs visant l'embarqué. Il permet notamment de désactiver certains composants, les locales par exemple, pour diminuer l'empreinte mémoire. La compilation croisée est également améliorée, point important pour l'embarqué. La bibliothèque eglibc est aussi compatible avec d'autres shells que le très classique Bash.
Le projet vise une compatibilité binaire avec la glibc, et pour cela l'arborescence des sources est régulièrement synchronisée. La distribution Linux OpenWrt supporte déjà eglibc (en plus d'uClibc).
Journal Actualités Python : PyPy 1.1, Python 3.1 beta 1, Pycon FR et Pycon US
Sentant la pression monter avec la sortie Parrot 1.0, PHP6 et Perl6 en préparation, le serpent se remue (la queue) !
PyPy 1.1 a été publié le 28 avril dernier :
http://codespeak.net/pypy/dist/pypy/doc/release-1.1.0.html
http://morepypy.blogspot.com/2009/04/beta-for-110-released.h(...)
PyPy supporte maintenant Python 2.5 (au lieu de Python 2.4), avec notamment l'ajout des modules ctypes et sqlite3. L'interprète est 10% à 50% plus rapide que la version 1.0, et 0,8 à 2x plus lent que CPython (3 à 4x dans les pires cas). Amélioration due surtout (…)
PyPy 1.1 a été publié le 28 avril dernier :
http://codespeak.net/pypy/dist/pypy/doc/release-1.1.0.html
http://morepypy.blogspot.com/2009/04/beta-for-110-released.h(...)
PyPy supporte maintenant Python 2.5 (au lieu de Python 2.4), avec notamment l'ajout des modules ctypes et sqlite3. L'interprète est 10% à 50% plus rapide que la version 1.0, et 0,8 à 2x plus lent que CPython (3 à 4x dans les pires cas). Amélioration due surtout (…)
Journal Debian migre de la GNU libc à EGLIBC
Aurélien Jarno, développeur Debian, vient de pousser le paquet « eglibc » qui est une variante de la GNU libc. Cette variante semble plus ouverte aux contributions externes, a un meilleur support des architectures embarquées, backporte les correctifs dans les branches « stables » (alors que Debian doit le faire pour la GNU libc : find debian/patches/ -name "cvs-*" donne une vingtaine de patches), etc.
Informations sur le blog d'Aurélien Jarno :
http://blog.aurel32.net/?p=47
Site du projet EGLIBC :
http://www.eglibc.org/
Il (…)
Informations sur le blog d'Aurélien Jarno :
http://blog.aurel32.net/?p=47
Site du projet EGLIBC :
http://www.eglibc.org/
Il (…)
Journal Publication de Parrot 1.0
Parrot est une machine virtuelle conçue pour compiler et exécuter rapidement du bytecode de langages dynamiques. Parrot contient actuellement diverses implémentations de langage (de qualité variable) : Tcl, Javascript, Ruby, Lua, Scheme, PHP, Python, Perl 6, APL, et un traducteur de bytecode .NET.
Contrairement à Perl5, Parrot sépare clairement la phase de compilation et la phrase d'exécution, ce qui permet une grande modularité et facile d'autant le support d'autres langages que Perl.
Parrot a été conçu pour permettre l'interopérabilité entre (…)
Contrairement à Perl5, Parrot sépare clairement la phase de compilation et la phrase d'exécution, ce qui permet une grande modularité et facile d'autant le support d'autres langages que Perl.
Parrot a été conçu pour permettre l'interopérabilité entre (…)
Publication de Fusil le fuzzer 1.2
Fusil est à la fois une bibliothèque de fuzzing et une vingtaine de fuzzers (Gstreamer, ClamAV, Python, etc.). Bien qu'il vise d'abord les applications Linux en ligne de commande, on peut l'utiliser pour tester des applications graphiques comme Firefox ou VLC en scriptant ces applications. Le fuzzing est une technique de recherche de bogues utilisant l'injection de fautes pour évaluer et améliorer la stabilité d'un logiciel. Un bogue pouvant parfois aboutir à une faille de sécurité, cette technique sert également à rechercher des vulnérabilités.
Avec la version 1.2, la documentation comprend désormais un manuel utilisateur et un tutoriel pour écrire un fuzzer. Fusil indique maintenant des informations sur un crash dans le nom du dossier qui le contient. On peut donc rapidement isoler les doublons et analyser les crashs les plus intéressants en premier. Enfin, la compatibilité avec Python 3.0 a été améliorée. Fusil est écrit en Python 2.5 et fonctionne sous Linux, BSD, Mac OS X et Windows. Le projet est distribué sous licence GPLv2. Il existe des paquets pour Debian, Ubuntu, Mandriva, OpenEmbedded, Arch Linux, Gentoo, ainsi qu'un MacPort. Pour les curieux, il existe aussi un script de conversion pour Python 3.0.
Avec la version 1.2, la documentation comprend désormais un manuel utilisateur et un tutoriel pour écrire un fuzzer. Fusil indique maintenant des informations sur un crash dans le nom du dossier qui le contient. On peut donc rapidement isoler les doublons et analyser les crashs les plus intéressants en premier. Enfin, la compatibilité avec Python 3.0 a été améliorée. Fusil est écrit en Python 2.5 et fonctionne sous Linux, BSD, Mac OS X et Windows. Le projet est distribué sous licence GPLv2. Il existe des paquets pour Debian, Ubuntu, Mandriva, OpenEmbedded, Arch Linux, Gentoo, ainsi qu'un MacPort. Pour les curieux, il existe aussi un script de conversion pour Python 3.0.
Journal Explorez les richesses du langage Python
C'est le titre du hors-série dédié à Python en vente dans toutes les librairies en France pour 6,50€ (sauf dans la gare de Sens).
Introduction
Introduction : Python, un monstre de langage
Nouveautés de Python 2.6
Nouveautés de Python 3
Éducation
Apprenez d’abord Python !
Science
Python comme langage scientifique
Réseau
Python et le réseau
Code(s)
Packager et diffuser son application Python
Trucs et astuces
Ctypes et Python
Présentation de la Zope Component Architecture
Vous pouvez en avoir un aperçu (…)
Introduction
Introduction : Python, un monstre de langage
Nouveautés de Python 2.6
Nouveautés de Python 3
Éducation
Apprenez d’abord Python !
Science
Python comme langage scientifique
Réseau
Python et le réseau
Code(s)
Packager et diffuser son application Python
Trucs et astuces
Ctypes et Python
Présentation de la Zope Component Architecture
Vous pouvez en avoir un aperçu (…)
Journal Cherche ISO de Windows 7
Journal Publication de Python 3.0rc2
Nouveautés de Python 3 : http://docs.python.org/dev/3.0/whatsnew/3.0.html
ChangeLog complet : http://www.python.org/download/releases/3.0/NEWS.txt
Documentation : http://docs.python.org/dev/3.0/
Par rapport à 3.0rc1, il s'agit essentiellement de corrections de bugs. D'ailleurs, vu la quantité de bugs critiques (qui n'étaient -forcément- pas prévus), Python 3.0 a pris beaucoup de retard sur son planning. L'équipe Python préfère corriger tous les bugs plutôt que de sortir une version boguée qui dégoûterait les gens de Python 3.
Par rapport Python 2.5, Python 3.0 inclut tous les changements de Python 2.6. (…)
ChangeLog complet : http://www.python.org/download/releases/3.0/NEWS.txt
Documentation : http://docs.python.org/dev/3.0/
Par rapport à 3.0rc1, il s'agit essentiellement de corrections de bugs. D'ailleurs, vu la quantité de bugs critiques (qui n'étaient -forcément- pas prévus), Python 3.0 a pris beaucoup de retard sur son planning. L'équipe Python préfère corriger tous les bugs plutôt que de sortir une version boguée qui dégoûterait les gens de Python 3.
Par rapport Python 2.5, Python 3.0 inclut tous les changements de Python 2.6. (…)
Nouvelle version majeure de Python (2.6)
En attendant la sortie de Python3 prévue mi-octobre, le langage de programmation Python sort en version 2.6. Cette version vise à préparer la migration vers Python3 et apporte énormément de nouveautés, aussi bien dans le langage que dans la bibliothèque standard. Les principales nouveautés sont décrites dans la seconde partie de cet article.
Le développement de Python est ouvert et suit les propositions d'améliorations (PEP). L'outil de suivi de bugs (bugs.python.org) a migré de Sourceforge à une installation personnalisée de Roundup. La documentation LaTeX a été convertie dans le format reStructuredText et est maintenant compilée avec l'outil Sphinx, développé pour l'occasion.
Le développement de Python est ouvert et suit les propositions d'améliorations (PEP). L'outil de suivi de bugs (bugs.python.org) a migré de Sourceforge à une installation personnalisée de Roundup. La documentation LaTeX a été convertie dans le format reStructuredText et est maintenant compilée avec l'outil Sphinx, développé pour l'occasion.
Journal 500 portables XO (projets OLPC) distribués sur l'île de Niué
Le déploiement des portables XO du projets OLPC (One Laptop Per Child, un portable par enfant) est de plus en plus actif avec la multiplication de projets pilotes. Fin août, c'est la petit nation de [[Niué]] (1500 habitants) qui a décidé d'offrir gratuitement 500 portables à ses enfants. Un autre projet, Waveplace, s'est lancé dans l'[[espace caraïbe]]. Depuis mars dernier, c'est le [[pérou]] qui a acheté des portables XO. Le déploiement a également début au (…)
Journal Sortie de Fusil le fuzzer en version 1.0beta3
Fusil est à la fois une boîte à outils permettant d'écrire son propre fuzzer et une suite de fuzzers : Apache, ClamAV, Firefox, gettext, gstreamer, ImageMagick, libpoppler, printf(), Mplayer, ogg123, PHP et Python. Il permet d'écrire rapidement un fuzzer et s'occupe de gérer une campagne de fuzzing(création de fichiers, nettoyage en quittant, classement des erreurs, etc.). Un fuzzer est un outil d'assurance qualité permettant de générer des bugs dans vos programmes. Ceci permet d'améliorer la robustesse de vos applications (…)
Journal Conférences Pycon FR 2008 en ligne
Les journées Python francophones 2008, Pycon FR, se sont déroulées les 17 et 18 mai 2008 à la Cité des Sciences et de l'Industrie à Paris. Pour ceux qui n'ont pas pu se rendre sur place ou bien n'ont pas pu assister à toutes les conférences, les vidéos sont maintenant disponibles au format Ogg/Theora :
http://dl.afpy.org/pycon-fr-08/
Supports (diaporamas) des conférences :
http://fr.pycon.org/presentations_2008/
Liste des conférences :
http://fr.pycon.org/programme
Enfin, n'hésitez pas à répondre à notre questionnaire pour nous aider à améliorer (…)
http://dl.afpy.org/pycon-fr-08/
Supports (diaporamas) des conférences :
http://fr.pycon.org/presentations_2008/
Liste des conférences :
http://fr.pycon.org/programme
Enfin, n'hésitez pas à répondre à notre questionnaire pour nous aider à améliorer (…)
Journal Sortie de la bibliothèque Hasard version 0.2
La faille de sécurité OpenSSL+Debian m'a motivé à lancer un projet que j'avais en tête depuis quelques temps : écrire une bibliothèque haut niveau pour gérer les nombres pseudo-aléatoires.
http://haypo.hachoir.org/trac/wiki/hasard
Ma motivation est que l'API C, srand() et rand(), est difficile à utiliser et peu de gens l'utilisent correctement. L'idée est donc de créer des fonctions qui empêchent les erreurs courantes : utilisation d'une faille entropie pour initialiser le générateur (typiquement time(NULL), voir getpid() et getppid()), utilisation de rand()%nombre pour (…)
http://haypo.hachoir.org/trac/wiki/hasard
Ma motivation est que l'API C, srand() et rand(), est difficile à utiliser et peu de gens l'utilisent correctement. L'idée est donc de créer des fonctions qui empêchent les erreurs courantes : utilisation d'une faille entropie pour initialiser le générateur (typiquement time(NULL), voir getpid() et getppid()), utilisation de rand()%nombre pour (…)