Jython supporte maintenant Python 2.5

Posté par  (site web personnel) . Modéré par Mouns.
Étiquettes :
14
19
juin
2009
Python
Le 8 juin dernier, la version 2.5.0 de Jython a été publiée. Pour rappel, c'est un interprète Python écrit en Java. Cette nouvelle version supporte désormais les fonctionnalités de Python 2.5 (version de Python sortie en 2006, voir les nouveautés de Python 2.5).

Le développement de Jython s'était essoufflé fin 2004 avec le départ du développeur le plus actif, Samuele Pedroni, qui s'est consacré à PyPy (implémentation de Python, écrite en Python). Jython était alors figé sur Python 2.2. En mars 2008, le projet est relancé par SUN (éditeur du langage Java) qui embauche Ted Leung et Frank Wierzbicki pour développer Jython. Jython 2.5 est le fruit de ce travail.

La 2e partie de cette dépêche contient d'autres brèves Python : vidéos de Pycon FR, Python 3.1, compilateur à la volée PyPy et EuroPython.

Pycon FR se déroulera les 30 et 31 mai 2009 à Paris

Posté par  (site web personnel) . Modéré par Nÿco.
Étiquettes :
14
26
mai
2009
Python
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.

Debian remplace la glibc par eglibc

Posté par  (site web personnel) . Modéré par tuiu pol.
Étiquettes :
36
8
mai
2009
Debian
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).

Publication de Fusil le fuzzer 1.2

Posté par  (site web personnel) . Modéré par Nÿco.
Étiquettes :
12
21
fév.
2009
Python
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.

Nouvelle version majeure de Python (2.6)

Posté par  (site web personnel) . Modéré par rootix.
Étiquettes : aucune
31
2
oct.
2008
Python
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.

Configurez votre pare-feu Netfilter avec Nuface 2.0

Posté par  (site web personnel) . Modéré par Jaimé Ragnagna.
Étiquettes :
0
28
mar.
2008
Sécurité
Nuface est une interface web haut niveau de configuration de pare-feu Netfilter. Écrite en PHP5 et distribuée sous licence GPL v3, elle simplifie la gestion des règles en offrant une vue haut niveau du pare-feu et une aide contextuelle expliquant directement les options de filtrage. Travaillant de concert avec NuFW et Nulog2, Nuface permet également de gérer des règles d'accès par utilisateur, par application ou par système d'exploitation, et propose le filtrage par plage horaire. Il permet également de voir à partir des journaux affichés par Nulog quelle règle a permis la connexion.

Pour la version 2.0, un effort a été fait sur l'amélioration de l'ergonomie, notamment via des formulaires simplifiés, l'ajout d'une aide contextuelle, et la mise en place d'un historique de navigation. Les règles locales (INPUT et OUTPUT) ont maintenant un formulaire dédié. Pour chaque ACL, on peut décider de tracer (avec ulogd et NuFW) ou non les connexions avec un message de log personnalisé, exploitable notamment avec le logiciel Nulog ou n'importe quel analyseur de journaux. Enfin, la mise en place initiale a été revue et facilitée avec la création d'un outil d'auto-configuration réseau (interfaces, réseaux et routes).

N'hésitez pas à venir rencontrer les développeurs à l'install party le 2 avril prochain. L'ensemble des outils seront présentés (Nuface2, NuFW et Nulog2).

Fusillez vos applications avec Fusil 0.6

Posté par  (site web personnel) . Modéré par Jaimé Ragnagna.
Étiquettes :
0
19
déc.
2007
Sécurité
Le fuzzing est une technique d'assurance qualité logicielle visant à rechercher des bugs en injectant des données invalides. Fusil est un framework dédié au fuzzing comprenant divers outils pour créer des processus, surveiller un processus existant ou encore injecter des erreurs dans un fichier.

Chaque exécution de la cible se voit attribuer une note de -100% à +100% en utilisant diverses sondes pour déterminer si l'application a planté ou non. Des sondes surveillent l'état d'un processus et sa consommation processeur, d'autres surveillent des fichiers texte tel que syslog, d'autres encore se basent sur la durée d'exécution, etc. Le système de notation est réutilisé pour autoconfigurer Fusil : l'agressivité, nombre d'erreurs injectées, évolue en fonction des notes précédentes. Divers exemples sont fournis pour essayer Fusil et voir de quoi il est capable : Mplayer, Image Magick, ClamAV, PHP, printf, etc. Un dossier temporaire est généré pour chaque exécution. Il est utilisé comme répertoire de travail et est conservé en cas de plantage de la cible.

Publication du projet Hachoir en version 1.0

Posté par  (site web personnel) . Modéré par Nÿco.
Étiquettes :
0
13
juil.
2007
Python
Après un an et demi de développement, le projet Hachoir a abouti à une version 1.0 grâce à l'effort commun d'une trentaine de contributeurs. Ce projet est constitué d'une base de connaissance des 70 formats de fichiers les plus courants et d'une suite d'outils exploitant ces informations.

Hachoir est tolérant aux erreurs, ce qui permet de traiter des fichiers corrompus et/ou tronqués ; il est rapide parce qu'il ne lit que les informations nécessaires. Il est donc possible d'identifier le codec correspondant à un fichier vidéo dès que les premiers kilo-octets ont été téléchargés, ou d'accéder aux données stockées dans un fichier plus gros que la mémoire. Un cas d'utilisation est l'extraction des fichiers d'une archive (gzip, bz2, etc.) tronquée quand les outils standards refusent de la traiter.

De nombreux composants sont disponibles, notamment hachoir-metadata, dédié à l'extraction des méta-données (nom de l'auteur, durée d'une musique, taux de compression d'une image, etc) et servant d'alternative au programme file pour identifier le type d'un fichier; et hachoir-subfile, dédié à la récupération de fichiers depuis une partition disque corrompue ou une image de la mémoire.

Voyagez dans le temps avec Macfly 1.0

Posté par  (site web personnel) . Modéré par Jaimé Ragnagna.
Étiquettes :
0
25
mai
2007
Technologie
Macfly est un projet dont le but est de modifier l'horloge d'un programme tiers sans nécessiter les droits administrateur ni avoir à modifier l'horloge système. Toute application peut être ainsi lancée dans l'environnement Macfly. Le projet est conçu autour d'un démon, deloreand, qui va synchroniser le ou les programmes décalés dans le temps par macfly.

Le projet peut servir à tester les logiciels face aux sauts de temps provoqués par l'utilisateur ou par une synchronisation via NTP sans avoir à modifier la date de la machine. En particulier, on peut tester la date « 2038-01-19 04:14:07 » qui est la dernière du format Epoch (on boucle alors en décembre 1901 ou en janvier 1970).

Étant donné qu'on peut modifier la vitesse de l'horloge, on peut s'amuser à lire des vidéos en accéléré avec VLC, ralentir les jeux pour tricher, etc. On peut également imaginer d'autres usages comme envoyer des emails dans le passé ou le futur.

Le projet a été développé pour le Centre National d'Études Spatiales (CNES) par INL.

Mesa 3D version 6.5.3

Posté par  (site web personnel) . Modéré par j.
Étiquettes :
0
5
mai
2007
Technologie
Mesa 3D est une implémentation de la spécification OpenGL offrant un rendu logiciel d'une scène 3D. Cette bibliothèque est publiée sous licence MIT et supporte l'ensemble des systèmes d'exploitation modernes. Les pilotes de carte graphique (Linux et *BSD) utilisent Mesa pour le rendu OpenGL avec accélération matérielle.

La version 6.5.3 sortie le 27 avril dernier apporte beaucoup de nouveautés et notamment le support d'OpenGL dans ses versions 2.0 et 2.1 (sorties respectivement en Août 2004 et Août 2006). OpenGL 2.0 apporte le support des instructions programmables connues sous le nom de « shader » : l'effet de « cell shading » en est un exemple.

Autres nouveautés : prise en charge des MRT, Multiple Render Target, qui permet de modifier plusieurs tampons en une seule instruction; prise en charge des VBO, Vertex Buffer Object, qui permettent de stocker des tableaux de vertex dans la mémoire de la carte vidéo. Enfin de nombreux bugs ont été corrigés : reportez-vous au ChangeLog complet pour les détails.

PyPy, le serpent qui se mord la queue, sort en version 0.99

Posté par  (site web personnel) . Modéré par j.
Étiquettes :
1
22
fév.
2007
Python
PyPy est un projet financé par l'Union Européenne qui vise à écrire un interpréteur Python en Python. Le projet est sur le point d'aboutir : il n'est plus que 3x plus lent que l'implémentation de référence (CPython) avec laquelle il est compatible à 98%.

PyPy apporte de nombreuses améliorations à Python comme les « espaces d'objet », la programmation logique, la programmation concurrente, etc. Une partie de l'interpréteur Python est écrite en RPython, sous-ensemble limité de Python, ce qui permet de le compiler pour LLVM, .NET ou encore en C.

La version 0.99 apporte un backend pour la plateforme .NET, beaucoup de travail sur le backend JavaScript (AJAX fonctionne), et les derniers modules Python qui manquaient ont été écrits : mmap, signal, bz2 et fcntl.

Encore une fois, un gros travail a été fait sur l'optimisation : limitation des appels à malloc(), inlining, accélération des dictionnaires, etc. Cette version est deux fois plus rapide que la précédente, mais l'ajout du compilateur JIT devrait encore améliorer les performances de la prochaine version.

Faites parler vos fichiers avec hachoir-metadata

Posté par  (site web personnel) . Modéré par Thomas Petazzoni.
Étiquettes :
0
19
déc.
2006
Audiovisuel
Tous les jours, nous manipulons des dizaines de fichiers binaires sans vraiment se soucier de leur format ou de connaître toutes les informations qu'ils contiennent. Pourtant, ils sont souvent accompagnés de métadonnées qui renseignent sur leur origine et leur contenu : auteur, nom du logiciel, date de création, durée, taille, codec, genre, etc. Ces informations permettent une classification fine et des recherches multicritères très fines.

Hachoir-metadata, programme basé sur la bibliothèque Hachoir, permet de lire ces informations et les présente de manière synthétique. Tous les formats courants sont reconnus : image (JPEG, PNG, GIF, ICO...), vidéo (AVI, WMV, FLV, MKV...), audio (MP3, wav, Ogg, WMA...), archive (zip, gzip, bzip2, tar...).

Les informations sont triées par pertinence (ex les dimensions d'une image sont plus importantes que la méthode de compression). Pour les formats contenant plusieurs « documents », chaque document possède sa propre section (ex : les flux audio, vidéo et les informations générales sont séparés). Contrairement à certains outils où la présentation est calquée sur le format de fichier, hachoir-metadata classe des informations de manière générique (ex : le champ 'duration' est partagée pour une vidéo ou un son).

Hachoir-metadata n'est sûrement pas une révolution, il existe déjà une multitude de bibliothèques pour extraire les métadonnées. Mais, pour les formats supportés, il donne d'aussi bons résultats que ses concurrents voire parfois meilleurs. Au passage, essayez également le programme hachoir-urwid pour explorer vos fichiers en profondeur et découvrir d'autres informations passées sous silence.

Hachoir version 0.6

Posté par  (site web personnel) . Modéré par j.
Étiquettes :
0
29
oct.
2006
Python
Un an après la naissance du projet, Hachoir sort dans sa version 0.6. C'est une suite d'outils développés dans le langage Python ayant pour but de manipuler facilement un fichier binaire tel qu'un arbre de champs typés. Le projet a été éclaté en plusieurs composants dont les principaux sont : hachoir (c½ur du système), hachoir-parser (quarantaine de parseur des formats les plus courants), hachoir-metadata (extraction de méta-données) et hachoir-urwid (visualisation de fichier binaire).

Hachoir supporte maintenant l'édition de fichier : il est possible de modifier la valeur d'un champ, de supprimer un champ ou encore d'en insérer. hachoir-strip est un programme d'exemple exploitant cette possibilité : il va supprimer tous les champs qu'il juge inutile, c'est-à-dire les méta-données, les octets de bourrage, index pour les vidéos, etc. Il peut être utilisé pour rendre un fichier anonyme ou en réduire légèrement sa taille.

Autre amélioration notable : la possibilité d'ouvrir des fichiers corrompus et/ou tronqués. Dans la mesure du possible, le parseur va tenter de corriger l'erreur puis de continuer son travail. Cette version apporte également la possibilité d'utiliser Hachoir sur un pipe, ce qui permet de parser un flux de données au fur et à mesure (par ex. : un flux réseau).

Pour stocker le texte, Hachoir utilise maintenant uniquement Unicode, ce qui évite d'avoir à se soucier du jeu de caractères. Cette version fonctionne également sur toutes les implémentations de Python (CPython, Stackless, pypy, IronPython, Jython), même si des retouches mineures sont parfois nécessaires. Pour finir, une interface graphique basée sur wxPython est en cours de développement.

Rejouez chez vous les plus grandes batailles de la guerre du libre

Posté par  (site web personnel) . Modéré par Pascal Terjan.
Étiquettes :
0
26
oct.
2006
Jeu
Avec Wengo, parlez à vos amis, avec Wormux, massacrez-les !

La nouvelle version de Wormux est encore plus amusante grâce à des armes toujours plus délirantes : putois, sniper, seringue, enclume, bombe anti-émeute et d'autres vous attendent. Vos tireurs d'élites, s'ils tombent, ne manqueront pas d'entraîner avec eux quelques ennemis, ce qui permet de jolies réactions en chaîne. Autres nouveautés : saut périlleux arrière, baril explosif, terrain de l'île de Pâques, refonte des menus, etc.

Dans un moment de démence, yekcim et lodesi se sont laissés aller à démembrer littéralement les avatars ! Un avatar est maintenant défini par un squelette et des animations en fonction de la position des membres. Les avatars les plus anciens tirent leur révérence, et OpenOffice, SPIP et BSD font leur apparition pour des parties encore plus endiablées.

Cette version préliminaire (0.8alpha1) de Wormux ne demande qu'à être testée en réseau. Pour y jouer, il faut saisir l'adresse IP de celui qui héberge la partie. Vous pouvez aller sur le salon IRC #wormux-fr du serveur Freenode (irc.freenode.net) pour proposer ou rejoindre une partie :-) Le jeu en solo reste, quand à lui, tout à fait jouable.

Nous avons de besoin de toi, oui toi là-bas ! Bruitage, traduction, graphisme, programmation, rapport de bug (oui on adore ça !), tests, critiques, (...) : n'hésitez pas à nous contacter, vous nous intéressez !

Faille de sécurité dans le pilote propriétaire Nvidia

Posté par  (site web personnel) . Modéré par Jaimé Ragnagna.
Étiquettes :
0
17
oct.
2006
Matériel
Le 2 décembre 2004, Nate Nielsen rapporte un plantage de Xorg lorsque Firefox affiche une très longue URL dans la barre d'adresse. Quatre mois plus tard un bug similaire est détecté dans Eclipse. Le bug concerne l'affichage de très longues lignes de texte avec le pilote propriétaire Nvidia. La solution est d'utiliser le pilote libre nv qui n'a pas ce bug.

Face à l'absence de réaction de Nvidia, un exploit exploitant ce dépassement de tampon offrant un shell en root est publié sur Rapid7. Il est possible d'exploiter la faille à distance à l'aide d'un client X distant. La faille a en fait été corrigée dans la version 9625 du pilote Linux sortie le 21 septembre 2006, mais la série 9xxx des pilotes Linux est encore en phase béta.

Cette faille relance bien sûr le débat pour ou contre les pilotes propriétaires (BLOBs). Pour le cas de Nvidia, il est difficile de trancher car refuser le pilote officiel implique de se priver d'accélération matérielle. Plutôt que de brasser l'air avec un débat sans fin, il serait plus judicieux de contribuer au projet Nouveau qui vise justement à écrire un pilote libre offrant l'accélération matérielle. D'ailleurs, l'écriture d'un pilote a été entamée il y a peu mais il est encore loin d'être utilisable.

NdM : Merci également à Pascal Terjan d'avoir proposé une dépêche sur le même sujet.
Mise à jour : la version 9626 du pilote (stable) corrige la faille.