Amélioration continue pour Yapsy

yapsy

Difficile de parler de kaizen pour un projet aussi petit et qui finalement n’avance que par à coup, deux fois par an, mais pour tenir compte des retours utilisateurs j’ai été amené à tester quelques nouveaux outils pour améliorer la qualité de Yapsy et les interactions avec les utilisateurs qui contribuent des modifications:

  • depuis quelques mois les sources (dans un dépôt mercurial sur sourceforge) sont synchronisées avec un répertoire git sur github, ce qui devrait simplifier la vie des contributeurs dont une bonne partie semble fan de github et qui pourront cloner et faire des pull requests à loisir.
  • depuis sa dernière sortie yapsy est lié au serveur d’intégration continue Travis CI pour qu’à chaque commit la batterie de test soit lancée.

Ci-après mes impressions sur ces deux outils.

Continue reading

Subtilités du packaging en Python

Récemment pour le développement de ma librairie Yapsy, je suis tombé sur quelques subtilités liés à la création de « paquets » pour des librairies Python.

J’utilise distutils bien sûr et je place les paquets générés sur http://pypi.python.org, mais j’avais les problèmes suivants:

  • les fichiers de données utilisés par mes tests unitaires n’étaient pas packagés
  • je n’arrivais pas à faire comprendre à pypi que l’un des paquets « sources » ne pouvait être récupéré que par les utilisateurs de Python2 alors que l’autre devait l’être par les utilisateurs de Python3, bien qu’ils correspondent tous les deux à la même version du logiciel (typiquement je n’arrivais pas à avoir ces deux paquets sur la même page de pypi.python.org)

Les solutions étaient relativement simples mais étrangement peu documentées sur internet…

Continue reading