Mes activités libres en novembre 2014

Mon rapport mensuel couvre une grande partie de mes contributions au logiciel libre. Je l’écris pour mes donateurs (merci à eux !) mais aussi pour la communauté Debian au sens large parce que cela peut donner des idées aux nouveaux venus et que c’est également un des moyens les plus effectifs de trouver des volontaires pour travailler sur les projets qui me tiennent à cœur.

Debian LTS

ce sont dix-huit de heures de travail sur Debian LTS qui ont été financées ce mois-ci (14 heures allouées par Freexian et 4 heures non consommées du mois dernier). Voici ce qui a été accompli :

  • Tri de vulnérabilités CVE: j’ai poussé 19 commits vers le suiveur de sécurité. J’ai également essayé d’encourager certains mainteneurs à fournir des mises à jour pour des paquets qui ne sont pas utilisés par les sponsors actuels de Debian LTS, et qui ne sont donc pas sur notre liste de priorités;
  • DLA 87 : mise à jour de dbus corrigeant 3 vulnérabilités CVE;
  • DLA 93: mise à jour de libgcrypt11 corrigeant 1 vulnérabilité CVE;
  • DLA 96: mise à jour de sécurité de openjdk-6 corrigeant 21 vulnérabilités CVE;
  • J’ai travaillé à la préparation d’une mise à jour de sécurité pour linux. Elle n’est pas encore publiée.

Mettre à jour le paquet source de linux nous a pris une bonne moitié du temps alloué. Nous avons opté pour une mise à jour du noyau vers la version amont 2.6.32.64. J’ai intégré les patchs amont et j’ai identifié environ 130 patchs que nous devions désactiver (car ils étaient déjà intégrés par l’amont). J’ai ensuite mis à jour notre patch openvz pour l’appliquer par-dessus le nouveau noyau. Cela a demandé un peu de travail manuel pour résoudre les conflits et il y a même des cas pour lesquels je ne suis pas sûr d’avoir pris la bonne décision. Je n’ai pas pu trouver un arbre git de l’amont openvz pour cette version de noyau afin de contre-vérifier.

A la place, j’ai demandé à Ben Hutchings de revoir mon patch. Il m’a répondu qu’il ne s’était pas porté volontaire pour travailler sur la version LTS, mais qu’il était disposé à y contribuer de manière rémunérée. En conséquence et en tant que coordinateur de l’offre Freexian, je lui ai proposé de rejoindre l’équipe des contributeurs LTS rémunérés, afin de s’occuper du noyau. Ce qu’il a accepté.

Ainsi, nous serons capable si tout va bien d’en finir avec cet envoi au cours de la première semaine de décembre. Nous n’avons pas eu d’uploads du noyau dans Squeeze depuis juillet dernier, aussi savoir que nous avons maintenant quelqu’un de capable pour traiter ça en priorité est une bonne chose.

Distro Tracker

Aucun nouveau développement ce mois-ci de ce côté. J’ai passé du temps à la place à importer les nouvelles de l’ancien historique de sorte à ce que lorsque vous recherchez d’anciens paquets vous obteniez des résultats plutôt qu’une erreur 404. Vous pouvez par exemple essayer avec python2.1.

Une autre chose faite ce mois-ci fut de marquer certains bogues avec le tag « newcomer », nouvellement créé. Ce sont des bogues faciles à traiter, et qui sont donc parfaits pour les nouveaux contributeurs souhaitant se lancer : la liste est ici.

A vous de jouer maintenant ! ;-)

DEP-14: Structure recommandée pour les dépôts Git utilisés pour le packaging Debian

J’ai ébauché la version initiale d’un document appelé Structure recommandée pour les dépôts Git utilisés pour le packaging Debian, et l’ai soumis pour discussion sur debian-devel.

La discussion fut intéressante et constructive (oui, c’est encore possible au sein de Debian !). J’ai une pile d’améliorations dans ma copie locale et j’ai besoin de prendre encore en compte quelques retours avant de soumettre un brouillon mis à jour. Ce n’est pas une révolution mais c’est un grand pas vers une standardisation des conventions de nommage pour les tags et les branches.

Systemd, le comité technique et nos listes de diffusion

En bon vétéran, je prête beaucoup d’attention à la gouvernance de Debian et il est ennuyeux de voir à quel point le débat autour de systemd fait resurgir certains de nos anciens démons, et combien il tend l’atmosphère sur nos listes de diffusion.

Nous pouvons être en désaccord sur beaucoup de choses, mais nous devons respecter les opinions de chacun et sommes ici pour travailler ensemble à des solutions utilisables par tout le monde. J’ai donc écrit aux personnes ayant franchi la ligne jaune pour les inviter à mieux se comporter. Et je suis content de voir les responsables des listes nous supporter en bannissant les personnes lorsque c’est justifié. Je crois que nous devons continuer dans cette direction et j’ai partagé une idée (sur un fil de discussion Debian privé qui n’aurait jamais du exister, tout comme le trafic sur cette liste) que je formaliserai et partagerai sur debian-project@l.d.o le moment venu (c’est chose faite ici).

Au même moment, nous avons eu une autre discussion concernant la gouvernance de Debian, avec l’idée qu’il fallait imposer une rotation des membres du comité technique. J’ai été heureux de voir que nous voterons bientôt à ce sujet. Je pense que c’est une bonne chose d’un point de vue général, même si trois de ses membres viennent juste d’en démissionner.

Travaux divers

J’ai parrainé un upload de galette et de trois de ses extensions. J’ai passé en revue jitsi-videobridge et jitsi-meet sur mentors.debian.net.

J’ai également créé quelques rapports de bogues :

  • n°768256 : au sujet d’icônes vim disproportionnées dans les menus contextuels GNOME;
  • n°768540 : cdebootstrap : échoue à lancer d’anciennes versions lorsque dpkg ne supporte pas data.tar.xz;
  • n°770011 : lynx -dump lors d’une mauvaise conversion de &#x2026.

Merci

Rendez-vous au mois prochain pour un nouveau résumé de mes activités !

Ceci est une traduction de mon article My Free Software Activities in November 2014 contribuée par Weierstrass01.

Mes activités libres en octobre 2014

Mon rapport mensuel couvre une grande partie de mes contributions au logiciel libre. Je l’écris pour mes donateurs (merci à eux !) mais aussi pour la communauté Debian au sens large parce que cela peut donner des idées aux nouveaux venus et que c’est également un des moyens les plus effectifs de trouver des volontaires pour travailler sur les projets qui me tiennent à cœur.

Travail d’empaquetage

Avec l’approche du gel effectif de Jessie, je me suis occupé d’empaqueter quelques nouvelles versions amont que je voulais voir incluses. J’ai commencé avec zim 0.62, ayant fait l’impasse sur la version 0.61 pour cause de régressions assez ennuyeuses. Et puisque j’avais deux rapports de bogues à transmettre, j’ai saisi cette opportunité pour discuter avec l’auteur amont et lui demander s’il avait des correctifs importants à inclure pour Jessie. Ce qui eut pour résultat l’envoi d’une autre mise à jour avec trois commits attentivement choisis depuis le dépôt Bazaar amont. J’ai également parrainé un rétroportage dans les dépôts wheezy-backports de cette nouvelle version.

J’ai poussé deux nouvelles versions correctives de Publican (4.2.3 et 4.2.6), mais j’ai du y inclure une solution de contournement pour un bogue que j’ai reporté plus tôt concernant docbook-xml (n°763598 : le catalogue XML ne permet pas à libxml2/xmllint d’identifier une copie locale de certains fichiers), et cela paraissait peu probable que cela soit correctement corrigé pour Jessie.

Last but not least, j’ai poussé la première révision mineure de Django 1.7 – également dénommée version 1.7.1 – vers unstable, et j’ai demandé aux responsables de la publication de s’assurer de son passage vers testing avant le gel effectif de Jessie. C’est important dans la mesure où plus nous sommes proches de l’amont, plus il est facile d’appliquer les correctifs de sécurité durant tout le cycle de vie de Jessie (qui je l’espère sera de 5 ans, grâce à Debian LTS !). J’ai également publié un rétroportage de python-django 1.7 vers les dépôts wheezy-backports.

J’ai enfin parrainé la publication d’un correctif de galette (0.7.8+dfsg-1), résolvant un bogue critique pour la publication, de sorte à ce que galette retourne dans testing (il en avait été enlevé du fait de ce bogue précisément).

Debian LTS

Vous pouvez prendre connaissance du travail rémunéré que j’ai effectué pour Debian LTS via le bulletin dédié. J’ai également consacré un certain temps à échanger avec les consultants Debian au sujet de nouvelles sociétés que nous pourrions contacter. De nouveaux sponsors sont attendus grâce à cette démarche, mais étant donné le très grand nombre de personnes que cela représente, j’en attendais plus. J’ai profité de cette opportunité pour rapporter toutes les entrées erronées (comme par exemple les rejets d’emails ou les URL mortes) au mainteneur de ladite page Web.

Distro Tracker

Seuls 30 commits ont été effectués ce mois-ci, avec presque aucune contribution extérieure. Je suis un petit peu peiné de cet état de fait dans la mesure où contribuer à ce projet n’est pas très compliqué, et que nous disposons d’une pelleté de bogues faciles à traiter pour vous mettre le pied à l’étrier.

Ceci étant dit je suis toujours content du travail accompli. La plupart des modifications ont été effectuées pour Kali, mais elles seront profitables à toutes les distributions dérivées : il est maintenant possible d’ajouter des dépôts externes dans le suiveur mais de ne pas les afficher dans la liste des versions disponibles, et de ne pas générer automatiquement de nouvelles à propos de ces dépôts. Une nouvelle application « dérivé » est maintenant disponible : elle n’en est qu’à ses balbutiements mais peut d’ores et déjà apporter une comparaison utile entre un dérivé et son parent. Vous pouvez la voir à l’oeuvre sur la page du suiveur Kali : http://pkg.kali.org/derivative/. Merci à Offensive Security pour avoir sponsorisé ce travail !

Dans la mesure où j’ai poussé Django 1.7 vers les dépôts wheezy-backports, toutes les instances de suiveurs de distribution que je gère ont été mis à jour avec cette version de Django, et j’ai opté pour rendre cette version obligatoire. Cela a permis de mettre en place la nouvelle fonctionnalité « migrations Django » pour gérer les futures mises à jour de schémas de base de données (j’ai volontairement évité tout changement de schéma jusqu’à aujourd’hui afin d’éviter les problèmes induits par le passage des migratinos gérées par South vers celles gérées par Django).

Merci

Rendez-vous au mois prochain pour un nouveau résumé de mes activités !

Ceci est une traduction de mon article My Free Software Activities in October 2014 contribuée par Weierstrass01.

Mon rapport Debian LTS d’octobre 2014

J’ai consacré dix heures rémunérées durant le mois d’octobre à travailler sur Debian LTS. J’aurais du travailler quatre heures de plus, mais pour diverses raisons cela n’a pas pu se faire. Je travaillerai donc quatre heures supplémentaires au mois de novembre.

Durant ces dix heures donc, j’ai effectué le travail suivant :

  • Tri de bogues CVE : j’ai poussé ce mois-ci 23 commits vers le dépôt SVN du suiveur de sécurité, et créé le rapport de bogue n°765352 concernant wpa;
  • J’ai publié une mise à jour pour mysql-5.1 (DLA-75-1), corrigeant trois CVE;
  • J’ai sponsorisé l’envoi de ppp version 2.4.5-4+deb6u1 corrigeant DLA-74-1, qui avait été préparé par Andrew Bartlett ;
  • J’ai envoyé une nouvelle version d’apache2 (DLA-71-1), corrigeant 2 CVE ;
  • J’ai créé quelques rapports de bogues concernant debian-security-support et demandant que certains paquets soient marqués comme non supportés dans Squeeze : cf. n°765374 pour axis2c et rampart, n°765452 pour une nouvelle fonctionnalité devant permettre aux paquets binaires d’être marqués comme non supportés, de sorte que glassfish-appserv soit répertorié en tant que tel (n°765454).

Après quelques mois de travail sur Debian LTS, je commence à avoir une meilleure vision du workflow et de ce qui peut être fait ou pas fait. Mais je suis toujours abasourdi de compter si peu d’utilisateurs de Squeeze sur la liste de diffusion. Si vous utilisez toujours Squeeze, inscrivez-vous s’il vous plaît à cette liste et testez les paquets soumis pour test/évaluation par les contributeurs. Cela nous aide vraiment d’avoir un retour des « vrais » utilisateurs avant de publier une mise à jour, en particulier lorsque le contributeur Debian qui l’a préparée n’est pas un utilisateur dudit paquet… tout le monde n’a pas les compétences requises pour préparer une mise à jour de sécurité, mais tout le monde peut aider à tester des paquets, vous n’avez pas d’excuses ! ;-)

Et nous sommes toujours à la recherche de nouvelles organisations rejoignant le projet LTS, soit en apportant de l’aide (comme Catalyst le fit en laissant Andrew Bartlett travailler sur LTS, merci à eux !) ou en sponsorisant le projet et en permettant aux autres de faire le travail.

Ceci est une traduction de mon article My Debian LTS report for October 2014 contribuée par Weierstrass01.

Mes activités libres en septembre 2014

Voici le récapitulatif mensuel de toutes mes activités gravitant autour du logiciel libre. Si vous faites partie des personnes ayant fait un don pour soutenir mon travail (26,6 €, merci à tous !), c’est l’occasion de constater ce que je fais de votre argent. Sinon, c’est toujours quelques nouvelles intéressantes sur l’avancement de mes différents projets.

Django 1.7

Depuis que la version 1.7 de Django a été publiée début septembre dernier, j’ai mis à jour le paquet dans le dépôt experimental et continué de pousser pour son inclusion dans unstable. J’ai également envoyé quelques patchs supplémentaires concernant plusieurs dépendances inverses de compilation (python-django-bootstrap-form, horizon, lava-server), puis envoyé le paquet dans unstable. J’ai augmenté à ce moment la criticité de tous les rapports de bogue enregistrés pour des paquets qui ne compilaient alors plus avec Django 1.7.

Plus tard dans le mois, je me suis assuré de la migration du paquet vers testing, qui n’a requis qu’une suppression temporaire de mumble-django (cf. le rapport n°763087). Pas mal de paquets ont été mis à jour depuis (vous pourrez trouver les bogues restants par ici).

Support Debian à long terme

J’ai travaillé à garder Debian Squeeze sûre, cf. l’article qui y est dédié : Mon rapport Debian LTS pour septembre 2014.

Distro Tracker

Le rythme de développement de tracker.debian.org s’est ralenti légèrement ce mois-ci, avec seulement 30 nouveaux commits dans le dépôt, fermant 6 rapports de bogue. Certaines des modifications méritent néanmoins d’être citées : les nouvelles contiennent maintenant de vrais hyperliens vers les rapports de bogue, CVE et URL (en voici un exemple). J’ai également corrigé un problème important concernant la manière dont les utilisateurs étaient identifiés lorsqu’ils utilisaient leurs identifiants de compte Alioth pour s’authentifier via sso.debian.org.

Côté développement, nous sommes maintenant capables de calculer la couverture du code testé par la suite de tests, ce qui est plutôt utile pour identifier les pans de code manquant clairement de tests (cf. bin/gen-coverage.sh dans le dépôt).

Empaquetage divers

Publican. J’ai suivi l’empaquetage des nouvelles versions amont de Publican et, la période de gel approchant, j’ai décidé de m’en occuper. Ça n’a malheureusement pas été aussi simple qu’escompté, car j’ai découvert de nombreux problèmes que j’ai remontés à l’amont (identifiant public invalide, échec de la compilation PDF pour cause de fonction noNumberLines non-disponible, la compilation du manuel requiert une connexion réseau). La plupart de ces derniers ont été corrigés en amont dans l’intervalle, mais le dernier semble provenir de la manière dont nous gérons nos catalogues Docbook XML au sein de Debian. J’ai en conséquence créé le rapport de bogue n°763598 (docbook-xml: xmllint échoue à identifier une copie locale du fichier des entités Docbook), qui reste sans réponse de la part du mainteneur.

Parrainage de paquet. J’ai « sponsorisé » les nouveaux envois de dolibarr (correction d’un bug critique pour la publication), tcpdf (correction d’un bug critique pour la publication), tryton-server (mise à jour de sécurité) et django-ratelimit.

GNOME 3.14. Avec l’arrivée de GNOME 3.14 dans unstable, je me suis occupé de la mise à jour de gnome-shell-timer et j’ai également créé quelques tickets pour des extensions que j’utilise : https://github.com/projecthamster/shell-extension/issues/79 et https://github.com/olebowle/gnome-shell-timer/issues/25.

git-buildpackage. J’ai rapporté de nombreux bogues de git-buildpackage m’ayant affecté depuis que j’ai commencé à utiliser cet outil : n°761160 (gbp pq export/switch devrait être plus intelligent), n°761161 (gbp pq import/export devraient préserver les noms de fichier des patchs), n°761641 (gbp import-orig devrait être moins fragile et plus idempotent).

Merci

Rendez-vous au mois prochain pour un nouveau résumé de mes activités !

Ceci est une traduction de mon article My Free Software Activities in September 2014 contribuée par Weierstrass01.

Mon rapport Debian LTS de septembre 2014

Grâce au soutien de nombreuses sociétés, j’ai été payé pour travailler (au moins) 11h sur Debian LTS ce mois-ci.

J’ai commencé par opérer un tri important dans le systèm de suivi des alertes sécurité (si vous souhaitez aider, les instructions se trouvent ici), car j’ai remarqué que la liste dla-needed.txt (qui contient la liste des paquets nécessitant une mise à jour de sécurité pour Debian Squeeze LTS) ne contenait pas un certain nombre de paquets qui pourtant avaient des vulnérabilités connues dans oldstable.

J’ai poussé in fine 23 commits dans le dépôt subversion de suivi des alertes sécurité. Je n’en présenterai pas le détail tout le temps mais, pour une fois, il est intéressant que vous puissiez vous faire une idée du travail que cela représente :

  • J’ai passé en revue les patchs des vulnérabilités CVE-2014-0231, CVE-2014-0226, CVE-2014-0118 et CVE-2013-5704, et j’ai confirmé que toutes affectaient la version d’apache2 présente dans Squeeze. J’ai ajouté par la suite apache2 au fichier dla-needed.txt.
  • J’ai passé en revue la vulnérabilité CVE-2014-6610 concernant asterisk et j’ai marqué la version présente dans Squeeze comme non affectée, dans la mesure où le fichier présentant la faille n’existe pas dans cette version (ce qui a nécessité d’inspecter d’autres fichiers à la recherche de cette fonctionnalité particulière, qui aurait pu y être déplacée à la faveur d’une réorganisation des fichiers ou de modifications internes similaires).
  • J’ai passé en revue la vulnérabilité CVE-2014-3596 (Apache Axis) et j’ai corrigé l’entrée mentionnant sa correction dans unstable. J’ai confirmé qu’elle affectait la version présente dans Squeeze, et l’ai ajouté au fichier dla-needed.txt.
  • Même chose pour la vulnérabilité CVE-2012-6153 affectant commons-httpclient.
  • J’ai passé en revue la vulnérabilité CVE-2012-5351 et ajouté un lien vers le ticket amont.
  • J’ai passé en revue les vulnérabilités CVE-2014-4946 et CVE-2014-4945 concernant php-horde-imp/horde3, ajouté des liens vers les patchs amont et marqué les versions présentes dans Squeeze comme non affectées, dans la mesure où ces failles proviennent de fichiers javascript absents de ces versions.
  • J’ai passé en revue la vulnérabilité CVE-2012-3155 affectant glassfish et fus vraiment ennuyé par le manque d’informations la concernant. J’ai donc commencé une discussion sur la liste debian-lts pour voir si ce paquet ne devait pas être marqué comme non supporté pour les mises à jour de sécurité. Il semble que nous n’allons marquer qu’un seul binaire comme non supporté… celui contenant le serveur d’applications touché par les vulnérabilités, le reste étant toujours requis pour compiler de nombreux paquets java.
  • J’ai passé en revue de nombreuses vulnérabilités CVE affectant dbus, drupal6, eglibc, kde4libs, libplack-perl, mysql-5.1, ppp, squid et fckeditor, et ajouté ces paquets au fichier dla-needed.txt.
  • J’ai passé en revue les vulnérabilités CVE-2011-5244 et CVE-2011-0433 affectant evince et suis parvenu à la conclusion que ces dernières avaient déjà été corrigées dans la version 2.30.3-2+squeeze1. Je les ai donc marquées comme corrigées.
  • J’ai supprimé graphicsmagick de la liste de dla-needed.txt car la seule vulnérabilité CVE l’affectant a été marquée comme no-dsa (ce qui signifie que nous estimons qu’une mise à jour de sécurité n’est pas requise, habituellement parce que le problème est mineur et/ou que sa correction aurait plus de chances d’introduire des régressions que d’aider).
  • J’ai créé quelques rapports de bogues lorsque ceux-ci étaient manquants : n°762789 concernant ppp, n°762444 concernant axis.
  • J’ai marqué un grand nombre de vulnérabilités CVE affectant qemu-kvm et xen comme « en fin de vie » dans Squeeze, puisque ces paquets ne sont actuellement plus supportés dans Debian LTS.
  • J’ai passé en revue la vulnérabilité CVE-2012-3541 et, dans la mesure où le rapport entier n’est pas très clair, j’ai envoyé un email à l’auteur amont. Cette discussion m’a conduit à marquer ce bogue comme no-dsa, car l’impact semble être limité à une divulgation d’informations uniquement. J’ai invité l’auteur amont à continuer cette discussion directement dans le ticket du bugzilla de RedHat.

Et lorsque je dis « passé en revue », c’est un raccourci derrière lequel le processus suivant se cache :

  • Recherche d’une explication claire de la vulnérabilité, d’une liste des versions affectées, et des patchs pour les versions que nous avons dans Debian, aux endroits suivants:
    • La page Debian de suivi des vulnérabilités CVE.
    • L’entrée associée dans le système de suivi des bogues Debian (s’il y en a un).
    • La description de la vulnérabilité CVE sur cve.mitre.org, et les pages qui y sont référencées.
    • L’entrée du bugzilla de RedHat pour la vulnérabilité CVE (ce qui implique souvent le téléchargement du RPM source depuis CentOS, afin d’extraire le patch qu’ils ont utilisé).
    • Le dépôt git amont et parfois certaines pages dédiées à la sécurité sur le site web amont.
  • Lorsque cela n’a pas été suffisant pour les versions que nous avons dans Debian (et c’est malheureusement souvent le cas), cela passe par le téléchargement du paquet source Debian et la recherche dans les sources des anciennes versions du code problématique (en partant de l’hypothèse qu’on peut l’identifier depuis le patch dont on dispose pour les versions plus récentes).

Le tri des vulnérabilités CVE représente presque la moitié du processus en général : une fois que vous savez que vous êtes affectés et que vous disposez d’un patch, le chemin vers la publication d’une mise à jour est relativement simple (parfois cela requiert quand même un travail de rétroportage du patch).

Lorsque j’en ai eu fini avec la première passe de triage, j’avais déjà dépassé les 11 heures payées mais je me suis occupé de préparer la mise à jour de sécurité pour python-django. Thorsten Alteholz avait commencé le travail mais s’est retrouvé bloqué à l’étape du rétroportage des patchs. Comme je suis co-mainteneur du paquet, j’ai pris le relai et fini le travail, pour le publier sous la référence DLA-65-1.

Ceci est une traduction de mon article My Debian LTS report for September contribuée par Weierstrass01.

Mes activités libres en août 2014

Voici le récapitulatif mensuel de toutes mes activités gravitant autour du logiciel libre. Si vous faites partie des personnes ayant fait un don pour soutenir mon travail (65,55 €, merci à tous !), c’est l’occasion de constater ce que je fais de votre argent. Sinon, c’est toujours quelques nouvelles intéressantes sur l’avancement de mes différents projets.

Distro Tracker

Bien qu’officiellement en vacances trois des quatre semaines d’août, j’ai passé de nombreuses nuits à travailler sur Distro Tracker. Je suis heureux d’avoir réussi à rendre l’ensemble de la base de code (testée) de nouveau compatible Python 3. La suite de tests complète passe maintenant avec succès pour Python 3.4 et Django 1.6 (ou 1.7).

Je lancerai « tox » sur tous les bouts de codes soumis à partir de maintenant, ce afin d’être sûr que nous ne régresserons pas sur ce point. tox lance également flake8 à ma place, de sorte que je puisse facilement détecter tout pan de code contribué ne respectant pas la norme de codage PEP8. De même qu’il intercepte d’autres erreurs intéressantes (comme les variables inutilisées ou les fonctions trop complexes).

Réussir à faire passer au code le test flake8 avec succès demanda également un effort conséquent, qui a entraîné un énorme commit (89 fichiers modifiés, 1763 insertions, 1176 suppressions).

Toute cette refactorisation n’a mené, grâce à la suite de tests intensifs, qu’à deux régressions que j’ai corrigées assez rapidement.

Quelques statistiques : 51 commits réalisés le mois dernier, dont 41 par mes soins,3 par Andrew Starr-Bochicchio, 3 par Christophe Siraut, 3 par Joseph Herlant et 1 par Simon Kainz. Merci à eux ! Leurs contributions ont porté plusieurs fonctionnalités qui étaient déjà disponibles sur l’ancien PTS. Le nouveau PTS avertit maintenant des prochaines suppressions automatiques, affiche les problèmes avec les URL amont, inclut une courte description du paquet dans la page de titre, et fournit un lien vers des captures d’écran (si ces dernières existent sur screenshots.debian.net).

Il nous reste toujours de nombreux bogues à traiter, vous pouvez donc aider également : aller voir https://tracker.debian.org/docs/contributing.html. Je laisse toujours des bogues faciles à traiter pour les autres, donc choisissez-en un et mettez-vous au travail ! Je passerai en revue votre patch avec plaisir. :-)

Tryton

Après mon dernier lot de contributions au plan comptable français de Tryton (n°4108, n°4109, n°4110 et n°4111), Cédric Krier m’a accordé les droits de commit sur le module mercurial account_fr.

Debconf 14

Je n’ai pas pu y assister cette année, mais grâce à l’exceptionnel travail de l’équipe vidéo, j’ai pu visionner certaines vidéos (et j’en ai encore un petit paquet que je souhaite regarder). Certaines ont été mises en ligne dès le lendemain de l’enregistrement, ce qui est vraiment un sacré boulot !

Django 1.7

Après les rapports de bogue initiaux, j’ai reçu un retour des mainteneurs craignant d’avoir des difficultés à rendre leurs paquets compatibles avec Django 1.7. Je les ai aidés du mieux que j’ai pu en leur apportant quelques patchs (pour horizon, pour django-restricted-resource, ainsi que pour django-testscenarios).

Dans la mesure où je m’attendais à ce que beaucoup de mainteneurs ne soient pas vraiment très pro-actifs, j’ai recompilé tous les paquets avec Django 1.7, afin de détecter a minima ceux qui échouaient à compiler. J’ai marqué tous les rapports de bogue correspondants comme confirmés.

On peut constater au détour de https://bugs.debian.org/cgi-bin/pkgreport.cgi?users=python-django@packages.debian.org;tag=django17 les progrès réalisés, avec 25 paquets corrigés. Il en reste au moins 25 autres qui sont problématiques dans sid et 35 pour lesquels aucune investigation n’a encore été réalisée (exceptée la compilation automatique qui a réussi). Votre aide est encore une fois plus que bienvenue !

Il est facile d’installer python-django 1.7 à partir d’experimental, et d’essayer d’utiliser/recompiler les paquets de la liste mentionnée ci-dessus.

Traduction Dpkg

Avec l’approche du gel, je souhaitais m’assurer que dpkg était intégralement traduit en français. J’ai ainsi contacté debian-l10n-french@lists.debian.org et fusionné certaines traductions faites par des volontaires. Il apparait malheureusement que personne ne s’est porté volontaire pour maintenir cette traduction sur le long terme… j’ai donc moi-même réalisé la mise à jour requise lorsque dpkg en version 1.17.12 a été envoyé.

Y a-t-il qui quelqu’un désireux de maintenir la traduction de dpkg en français ? Avec les derniers changements de la 1.17.13, nous avons de nouveau quelques chaînes non traduites :

$ for i in $(find . -name fr.po); do echo $i; msgfmt -c -o /dev/null --statistics $i; done
./po/fr.po
1083 translated messages, 4 fuzzy translations, 1 untranslated message.
./dselect/po/fr.po
268 translated messages, 3 fuzzy translations.
./scripts/po/fr.po
545 translated messages.
./man/po/fr.po
2277 translated messages, 8 fuzzy translations, 3 untranslated messages.

Travaux divers

J’ai réalisé un envoi QA de xsane (qui est actuellement orphelin) afin de supprimer la dépendance (à la compilation) à liblcms1, et éviter son retrait de Debian testing (cf. le n°745524). Pour information : how-can-i-help m’a informé de ce problème après un dist-upgrade.

Avec le travail dédié à Django 1.7 et le besoin d’ouvrir une branche expérimentale, j’ai décidé de basculer l’empaquetage de python-django vers git, même si la politique actuelle de l’équipe est d’utiliser subversion. Cela a déclenché (une fois de plus) la discussion d’un possible passage à git, et j’ai été heureux de constater cette fois un peu plus d’enthousiasme à cette idée. Barry Warsaw a testé quelques workflows, partagé son sentiment et invité à en discuter lors d’une discussion pendant Debconf. Il se pourrait que cela advienne pour de bon cette fois. J’ai apporté ma pierre aux discussions sur la liste de diffusion.

Merci

Rendez-vous au mois prochain pour un nouveau résumé de mes activités !

Ceci est une traduction de mon article My Free Software Activities in July 2014 contribuée par Weierstrass01.

Mes activités libres en juillet 2014

Voici le récapitulatif mensuel de toutes mes activités gravitant autour du logiciel libre. Si vous faites partie des personnes ayant fait un don pour soutenir mon travail (548,59 €, merci à tous !), c’est l’occasion de constater ce que je fais de votre argent. Sinon, c’est toujours quelques nouvelles intéressantes sur l’avancement de mes différents projets.

Distro Tracker

Maintenant que tracker.debian.org est en ligne, les gens créent des rapports de bogues (sur le nouveau pseudo-paquet tracker.debian.org que j’ai demandé) plus vite que je n’ai le temps de les corriger.
J’ai encore passé de très, très nombreuses heures sur ce projet, passant en revue les patchs soumis (merci à Christophe Siraut, Joseph Herlant, Dimitri John Ledkov, Vincent Bernat, James McCoy et Andrew Starr-Bochicchio qui ont tous soumis des patchs !), corrigeant des bogues, m’assurant que le code fonctionne avec Django 1.7, et commençant à faire de même avec Python 3.

J’ai ajouté un tox.ini de sorte à facilement lancer la suite de tests dans les 4 environnements supportés (créés par tox en tant que virtualenv avec des combinaisons de Django 1.6/1.7 et Python 2.7/3.4).

Le dépôt Git a vu passer au cours de ce mois 73 commits, nous avons corrigé 16 bogues et autres problèmes qui ont été remontés via le canal #debian-qa sur IRC. Avec l’aide d’Enrico Zini et Martin Zobel, nous avons activé la possibilité de se connecter via sso.debian.org (le portail d’identification unique (Single Sign-On) de Debian), de telle sorte que les développeurs n’aient même pas à créer réellement un compte.

Comme à l’accoutumée, toute aide supplémentaire est la bienvenue et je répondrai avec plaisir à vos questions et passerai en revue vos patchs.

Travaux d’empaquetage divers

Publican. J’ai poussé une nouvelle version amont de Publican et abandonné une dépendance à la compilation inutile, qui était affectée par un bogue critique pour la publication difficile à corriger. (Pour les curieux, il s’agit du n°749357. J’ai essayé d’investiguer mais un travail conséquent est nécessaire pour assurer la compatibilité avec make 4.x).

GNOME 3.12. Avec gnome-shell 3.12 qui est arrivé dans unstable, j’ai du mettre à jour gnome-shell-timer (et créer un ticket côté amont dans le même mouvement), une extension GNOME Shell permettant de déclencher des comptes à rebours.

Django 1.7. J’ai empaqueté la version candidate 1 de la 1.7 de python-django dans experimental (j’ai trouvé un petit bogue, soumis un ticket avec un patch qui a été rapidement intégré) et créé 85 rapports de bogue en référence à toutes les dépendances inverses ; ce afin de demander à tous les mainteneurs concernés de tester leurs paquets avec Django 1.7 (que nous souhaitons pousser avant la période de gel, bien évidemment). Nous avons identifié une étape problématique dans le processus de mise à jour concernant les paquets utilisant South. J’ai essayé d’en discuter avec l’amont mais, après une investigation plus poussée, il s’est avéré qu’aucun des paquets n’était affecté. Le problème peut néanmoins toucher les administrateurs d’applications Django non-empaquetés.

Divers. J’ai créé quelques rapports de bogue (n°754282 concernant git-import-orig –uscan, n°756319 concernant wnpp pour voir si quelqu’un se portait volontaire pour empaqueter loomio), j’ai passé en revue un paquet mis à jour pour django-ratelimit dans le n°755611, j’ai poussé une nouvelle version amont de mairix en tant que non-mainteneur (et sans notification préalable) afin de mettre à jour le paquet et le mettre aux normes d’empaquetage modernes (Mako n’a rien poussé en quatre années, j’ai juste fait ce que j’aurais fait si le paquet était mien).

Travaux sur Kali qui ont résulté en contributions Debian

Kali souhaite passer d’une base stable à une base testing, j’ai donc essayé de paramétrer britney afin de gérer un nouveau dépôt kali-rolling et ai rencontré certains problèmes que j’ai remontés à l’équipe debian-release. Niels Thykier a été d’une aide précieuse et a même réussi à améliorer britney grâce au problème très spécifique que le paramétrage Kali a déclenché.

Comme nous utilisons reprepro, j’ai écrit quelques scripts Python afin de transformer le fichier HeidiResult en un jeu de commandes reprepro, tandis que je demandais au même moment via le n°756399 un support propre des fichiers heidi dans reprepro.
Tandis que j’analysais les messages de britney, j’ai également remarqué que les miroirs Kali contenaient de nombreux paquets sources qui sont inutiles, dans la mesure où ils ne concernent que des architectures que nous ne supportons pas (et j’ai créé le rapport de bogue n°756523 pour reprepro).
En essayant de compiler une image live de kali-rolling, j’ai noté que libdb5.1 et db5.1-util étaient toujours référencés comme standards et prioritaires, alors que du côté de Debian le passage à db5.3 avait déjà été réalisé, et qu’ils devaient donc être considérés comme optionnels (j’ai créé en conséquence le n°756623 vis-à-vis de ftp.debian.org).

Lors des tests de montée de version de kali (basée sur Wheezy) à kali-rolling (basée sur Jessie), j’ai remarqué des problèmes affectant également Jessie. J’ai créé le rapport n°756629 vis-à-vis de libfile-fcntllock-perl (accompagné d’un patch), ainsi que le n°756618 vis-à-vis de texlive-base (pour des en-têtes « Replaces » manquants).
J’ai également sollicité Colin Watson par rapport au n°734946 car une demande de mot de passe m’a inopinément été faite durant la montée de version (qui fut déclenchée via la copie par schroot de mon fichier /etc/passwd d’unstable dans le chroot de kali, et le paquet a détecté une différence dans le shell de tous mes utilisateurs système).

Merci

Rendez-vous au mois prochain pour un nouveau résumé de mes activités !

Ceci est une traduction de mon article My Free Software Activities in July 2014 contribuée par Weierstrass01.

Spotify migre 5000 serveurs de Debian à Ubuntu

Ou une raison de plus prouvant qu’il est important que Debian LTS soit un succès. L’année dernière nous avions eu la nouvelle que Dreamhost passait à Ubuntu parce qu’ils pouvaient maintenir une version stable de Ubuntu plus longtemps que la version stable de Debian (et ceci bien que Ubuntu n’assure que le support des logiciels dans la section principale, ce qui exclue un grand nombre de logiciels populaires).

Spotify Logo

Il y a quelques jours, nous apprenions que Spotify avait pris une décision similaire:

Il y a quelques temps, nous avons décidé de migrer vers Ubuntu pour nos serveurs de backend. Les principales raisons de ce changement étaient le cycle de publication prévisible et le support à long terme (cette décision prédate l’annonce que Debian s’engageait également à offrir un support à long terme). Avec la sortie de Ubuntu 14.04 LTS nous sommes maintenant en train de migrer nos ~5000 serveurs vers cette distribution.

Il s’agit d’un preuve supplémentaire, s’il en était besoin, que nous devons fournir un support à long terme des versions stables de Debian si nous voulons rester un choix pertinent dans les grands déploiements.

Mais la tâche est ingrate et il est difficile de trouver des volontaires pour l’assumer. C’est pourquoi je suis persuadé que la meilleure des solutions est de convaincre les entreprises de contribuer financièrement à Debian LTS.

Nous avons déjà convaincu une poignée de sociétés et juillet est le premier mois où des contributeurs payés ont rejoint l’effort Debian LTS pour une participation modeste de 21 heures de travail (suivez Thorsten Alteholz et Holger Levsen sur debian-lts et debian-lts-announce). Mais nous devons encore multiplier ce chiffre par 5 ou 6 au moins pour assurer un travail correct de maintenance de Debian 6.

C’est pourquoi je vous invite à télécharger le formulaire de souscription et à avoir une discussion avec votre encadrement. C’est le moment de convaincre votre entreprise de rejoindre cette initiative. N’hésitez pas à prendre contact si vous avez des questions ou si vous préférez que je contacte un représentant de votre entreprise. Merci !

Mes activités libre en juin 2014

Voici le récapitulatif mensuel de toutes mes activités gravitant autour du logiciel libre. Si vous faites partie des personnes ayant fait un don pour soutenir mon travail (168,17 €, merci à tous !), c’est l’occasion de constater ce que je fais de votre argent. Sinon, c’est toujours quelques nouvelles intéressantes sur l’avancement de mes différents projets.

Debian LTS

Après avoir mis en place l’infrastructure permettant aux entreprises de contribuer financièrement à Debian LTS, j’ai passé pas mal de temps à ébaucher l’annonce du lancement de Debian LTS (sur une suggestion de Moritz Mühlenhoff, qui m’a fait remarquer qu’aucune communication n’avait encore été faite en ce sens).

Je suis plutôt content des résultats, car nous avons réussi à faire mention d’une offre commerciale sans déclencher une levée de boucliers de la part de la communauté. Cette offre est (à mon sens, ce qui est nécessairement subjectif) clairement dans l’intérêt de Debian, mais dans la mesure où l’argent ne lui revient pas nous avons pris des précautions supplémentaires : lorsque j’étais en contact avec les chargés de presse, j’ai systématiquement inclus le Chef de projet Debian dans la discussion et ses retours ont été d’une grande aide dans l’amélioration de l’annonce. Il a également officiellement approuvé le communiqué de presse, afin de conforter les chargés de presse dans leur décision de publier le communiqué.

Lucas m’a également poussé à demander le retour de la communauté vis-à-vis de cette ébauche de communiqué, ce que j’ai fait. La discussion a été constructive et le brouillon n’en a été qu’encore plus abouti.

La nouvelle a été largement relayée, le revers de la médaille étant que l’appel à contribuer n’a quasiment pas retenu l’attention de la presse. Même Linux Weekly News a fait l’impasse !

Du côté de Freexian, nous venons juste de passer la barre des 10% d’un « équivalent temps plein » (financé par 6 entreprises), et nous sommes en contact avec plusieurs autres sociétés. Nous sommes toutefois encore loin de notre but et nous devons rechercher activement d’autres soutiens. Connaissez-vous des entreprises qui font encore tourner des serveurs sous Debian 6 ? Si oui, je vous serai gré de m’en faire savoir un peu plus (nom + url + contact si possible) en m’écrivant à deblts@freexian.com, de sorte à ce que je puisse prendre contact et les inviter à participer au projet.

Distro Tracker

Dans la continuation du concours Debian France, j’ai continué à travailler avec Joseph Herlant et Christophe Siraut sur de multiples améliorations de distro tracker. Ce afin de préparer son déploiement sur tracker.debian.org (que je viens tout juste d’annoncer \o/).

Debian France

Le concours Debian France étant fini, j’ai expédié les récompenses. Cinq livres ont donc été envoyés à :

Travaux Debian divers

J’ai déclaré sql-ledger orphelin et réalisé un dernier envoi (d’une nouvelle version amon) pour changer son mainteneur en Debian QA.

Après avoir été ennuyé plusieurs fois par dch estropiant mon nom dans les journaux de modification, j’ai soumis le rapport n°750855, qui a été rapidement corrigé.

J’ai désactivé un patch défectueux de quilt, afin de corriger un bogue critique pour la publication : n°751109

J’ai soumis le rapport n°751771 lorsque j’ai découvert une dépendance incorrecte vers ruby-uglifier, tandis que je travaillais à l’empaquetage pour Kali Linux.

J’ai testé de nouvelles versions de ruby-libv8 sur armel/armhf à la demande de l’auteur amont. Je lui ai remonté des erreurs de compilation (cf. le ticket github).

Merci

Rendez-vous au mois prochain pour un nouveau résumé de mes activités !

Ceci est une traduction de mon article My Free Software Activities in June 2014 contribuée par Weierstrass01.

Entreprises : soutenez le projet de support à long terme de Debian

La presse a relayé notre annonce sur Debian LTS mais essentiellement pour dire que le support LTS est disponible et fonctionnel. L’appel à l’aide présent dans l’annonce n’est jamais mentionné.

C’est vraiment dommage car si le support LTS est effectivement disponible, il ne fonctionne pas encore de manière satisfaisante. À ce jour (19 juin 2014), 36 paquets de Debian 6 ont besoin d’une mise à jour de sécurité et pourtant squeeze-lts n’a connu que 7 mises à jour.

debian-lts-periodsComme d’habitude, ce qui manque c’est les contributeurs qui font le travail requis. Mais dans ce cas particulier, il y a une solution simple: il faut payer des personnes pour le faire. Le support à long terme profite essentiellement aux entreprises et si elles y voient une valeur ajoutée, cela ne devrait pas être trop difficile de les convaincre de soutenir le projet.

Avec quelques autres développeurs Debian, nous avons fait des efforts pour que les entreprises puissent soutenir le projet de manière on ne peut plus simple. Nous avons créé une offre de service pour les organisations utilisant Debian.

Freexian (ma société) collecte l’argent de toutes les entreprises qui souhaitent contribuer (par le biais de factures), puis utilise cet argent pour payer les contributeurs Debian qui préparent les mise à jour de sécurité. En plus de cela, nous avons prévu des avantages concrets pour les entreprises participantes comme la possibilité d’indiquer les paquets qui doivent être gérés en priorité, ou même la possibilité de fournir des test fonctionnels pour s’assurer que les mises à jour de sécurité n’introduisent pas de régression dans leur infrastructure de production.

Pour faire un bon travail de maintenance de Debian 6 Squeeze, notre objectif est de financer l’équivalent d’un temps plein. Nous en sommes assez loin avec seulement 13 heures par mois financées par 4 entreprises. Cela fait une moyenne de 3,25 heures financées par chaque société participante, pour un prix moyen de 276 EUR/mois ou 3315 EUR/an.

Cela n’est vraiment pas beaucoup si l’on compare cela au prix que ces entreprises auraient du payer pour mettre à jour immédiatement toutes leurs machines équipées de Debian 6 (au lieu de les conserver pendant 2 ans supplémentaires).

En supposant que le niveau de contribution moyen reste fixe, nous avons seulement besoin du soutien de 50 autres entreprises dans le monde. Ce n’est vraiment pas beaucoup comparé aux milliers d’entreprises qui utilisent Debian. Pouvez-vous convaincre votre entreprise ? Récupérez le formulaire de souscription et entamez une discussion avec votre direction.

Aidez-nous à atteindre cet objectif, partagez cet article et le lien vers l’offre Debian LTS de Freexian. Le support à long terme de Debian est important si nous voulons que Debian soit un bon choix pour les serveurs et les gros déploiements. Nous devons réussir Debian 6 LTS !

Merci !