J'ai récemment commencer à travailler sur un petit utilitaire pour gentoo appellé "euscan" (pour Ebuild Upstream Scan). Pour ceux qui ne connaissent pas l'utilitaire "uscan" de Debian, il permet de scanner "upstream" pour trouver de nouvelles versions. uscan est utilisé par packages.qa.debian.org (par exemple: http://packages.qa.debian.org/p/php-net-ipv4.html).
Pour l'instant, j'utilise deux heuristiques pour trouver de nouvelles versions. Les deux sont basées sur les variables SRC_URI (uri source) et PV (package version) d'un ebuild: - Scan des répertoires pour trouver de nouvelles versions - Brute force: on génère de nouvelles versions et on regarde si elle sont dispo
Cela marche aussi quand uniquement une partie de la version est dans l'url (par exemple: http://foo.bar/2.0/bar.tar.gz pour la 2.0.1).
Le code est dispo sur http://git.iksaif.net/?p=euscan.git;a=summary
Et l'interface web sur http://euscan.iksaif.net/
Un exemple d'utilisation de euscan:
$ ../euscan htop
* sys-process/htop-0.9 [gentoo]
Ebuild: /usr/portage/sys-process/htop/htop-0.9.ebuild
Repository: gentoo
Homepage: http://htop.sourceforge.net
Description: interactive process viewer
* Scanning: http://switch.dl.sourceforge.net/sourceforge/htop/htop-${PV}.tar.gz
* Scanning: http://switch.dl.sourceforge.net/sourceforge/htop
* Generating version from 0.9
* Brute forcing: http://switch.dl.sourceforge.net/sourceforge/htop/htop-${PV}.tar.gz
* Trying: http://switch.dl.sourceforge.net/sourceforge/htop/htop-0.10.tar.gz ... [ !! ]
* Trying: http://switch.dl.sourceforge.net/sourceforge/htop/htop-0.11.tar.gz ... [ ok ]
* Trying: http://switch.dl.sourceforge.net/sourceforge/htop/htop-1.0.tar.gz ... [ !! ]
* Trying: http://switch.dl.sourceforge.net/sourceforge/htop/htop-2.0.tar.gz ... [ !! ]
* Trying: http://switch.dl.sourceforge.net/sourceforge/htop/htop-0.12.tar.gz ... [ ok ]
* Trying: http://switch.dl.sourceforge.net/sourceforge/htop/htop-0.13.tar.gz ... [ ok ]
* Trying: http://switch.dl.sourceforge.net/sourceforge/htop/htop-0.14.tar.gz ... [ !! ]
* Trying: http://switch.dl.sourceforge.net/sourceforge/htop/htop-0.15.tar.gz ... [ !! ]
Upstream Version: 0.11 http://switch.dl.sourceforge.net/sourceforge/htop/htop-0.11.tar.gz
Upstream Version: 0.13 http://switch.dl.sourceforge.net/sourceforge/htop/htop-0.13.tar.gz
Upstream Version: 0.12 http://switch.dl.sourceforge.net/sourceforge/htop/htop-0.12.tar.gz
# Mauvaise numérotation
Posté par chtitux (site web personnel) . Évalué à 6.
Ton outil ne fonctionne que si les développeurs nomment leur version correctement. Ça peut paraître évident, mais il y a des cas où ça ne fonctionne pas, parce que la numérotation a été chaotique, comme ... htop, que tu cites comme exemple !
La dernière version de htop est la 0.9 d'après le site officiel, mais la numérotation du début n'a pas été très cohérente : après la 0.1, ce sont les versions 0.11, 0.12 et 0.13 qui ont été publiées.
Ils sont revenus à une numérotation plus logique pour la 0.2 (0.2, 0.2.1, 0.3), et sont maintenant arrivés à la 0.9.
cf http://htop.sourceforge.net/index.php?page=downloads
Cela risque d'être amusant de voir comment htop va s'en sortir pour ne pas s'emmêler dans les versions supérieures à 0.10.
En attendant, même si ton outil facilitera la détection des nouvelles versions, rien ne vaut une surveillance humaine. Peut-être qu'il faut développer un standard pour la publication des nouvelles versions des logiciels...
[^] # Re: Mauvaise numérotation
Posté par JGO . Évalué à 3.
Problème aussi avec les numérotations imprévisibles :
[^] # Re: Mauvaise numérotation
Posté par Corentin Chary (site web personnel) . Évalué à 2.
En effet pour htop, "fail".
Par contre pour chromium, je vois pas trop le problème: http://euscan.iksaif.net/package/www-client/chromium/
En attendant, oui il y'a des faux positifs (il faudrais les "apprendre" à euscan, donc si vous en trouvez, n'hésitez pas à le signaler).
Mais dans le cas général, ça marche plutôt pas mal.
[^] # Re: Mauvaise numérotation
Posté par JGO . Évalué à 2.
Le problème que je soulevais, c'est pour les serveurs qui ne te laissent pas scanner le répertoire, si en plus le nom de la release ne peut pas être deviné. Pour chromium si tu peux scanner le répertoire, pas de problème.
[^] # Re: Mauvaise numérotation
Posté par windu.2b . Évalué à 3.
Y aura peut-être moyen de rattraper le coup en comparant les dates de parution ?
# sinon utilise urlwatch
Posté par Denis Montjoie (site web personnel) . Évalué à 3.
En mettant Urlwatch en cron, on obtient un diff des pages entre 2 moments.
Cela permet de surveiller notament les pages "download" des projets. (independament de leur systeme de version).
Seul probleme, les sites avec pubs aleatoires et/ou compteur de vistes.
Ca marche pour surveiller l'upstream de 90% des ebuilds que je maintient.
# En moins magique
Posté par DLFP est mort . Évalué à 2.
Il y a cet outil : https://github.com/JNRowe/cupage
DLFP >> PCInpact > Numerama >> LinuxFr.org
# Portscout
Posté par Thierry Thomas (site web personnel, Mastodon) . Évalué à 3.
Portscout fait ça pour les logiciels portés sous FreeBSD, and potentially other software repositories . À voir ce que ça pourrait donner avec Gentoo.
http://www.inerd.com/software/portscout/
[^] # Re: Portscout
Posté par Corentin Chary (site web personnel) . Évalué à 2.
Portscout à l'air de faire à peu près la même chose que euscan, à quelques différences:
Quelques idées à reprendre donc, mais je pense que portscout n'est pas utilisable tel quel avec gentoo.
[^] # Re: Portscout
Posté par Misc (site web personnel) . Évalué à 3.
J'ai cru avoir poster mais visiblement non, j'ai des amis à moi qui ont écrit youri-check, qui est utilisé par Mandriva et Mageia pour savoir ce qui a besoin d'être mis à jour ( http://youri.zarb.org/ ).
Par exemple : http://check.mageia.org/updates.html
Ensuite, tu peux configurer ça via un simple fichier yaml ( http://svnweb.mageia.org/adm/puppet/modules/youri-check/templates/check.conf?view=log ), tu peux à défaut de reprendre le code ( c'est du perl, ton projet est en python ), regarder les différentes sources et la façon dont ça marche.
Si tu as une question hésite pas à demander sur la ml, ou à venir voir sur irc ( #mageia-fr sur freenode ).
[^] # Re: Portscout
Posté par Corentin Chary (site web personnel) . Évalué à 1.
Intéressant, comme méthode.
après Gentoo à des noms de paquets assez différents des autres distribs, mais peut être que ça peux marcher pour certains.
[^] # Re: Portscout
Posté par Misc (site web personnel) . Évalué à 2.
Il y a le projet distro-match a voir aussi : http://www.enricozini.org/2011/debian/distromatch-deploy/
Je sais pas si ça supporte gentoo, mais ça peut aider à completer youri. ( et c'est du python ça )
# Souscription mail ?
Posté par JGO . Évalué à 2.
Ton outil est super, mais frustrant : je peux découvrir quels paquets de mon système ne sont pas à jour, mais je ne peux rien faire (enfin, je peux ./configure && make à la main). Pourrais-tu faire de la publicité pour ton système auprès des mainteneurs gentoo ? Dans l'idéal, ils pourraient souscrire et recevoir un mail à chaque mise à jour upstream.
[^] # Re: Souscription mail ?
Posté par DLFP est mort . Évalué à 3.
La plupart des ebuilds sont « bumpables » uniquement en les renommant (la version est déterminée par le nom de fichier).
Si tu veux faire ça proprement tu te crée un overlay avec les copies.
Sinon, ça n'a pas grand intérêt pour un utilisateur, sauf si tu veux absolument passer aux dernières versions sans qu'elles soient passées par des phases de test / stabilisation.
DLFP >> PCInpact > Numerama >> LinuxFr.org
[^] # Re: Souscription mail ?
Posté par JGO . Évalué à 2.
Bon ok je viens de surmonter ma flemme et créer un PORTDIR_OVERLAY pour avoir x11-misc/zim-0.50. En fait je voulais dire que ce serait encore mieux si un post apparaissait dans la planète gentoo (les titres étant repris en page d'accueil gentoo.org), de façon que les mainteneurs souscrivent à d'éventuelles alertes mails. Plusieurs dizaines de mainteneurs maintiennent plusieurs dizaines (voir centaines) de paquets chacun, je comprends qu'ils en oublient certains de temps en temps. Ce serait d'autant plus utile si freshmeat vient à disparaitre[1].
[1] https://linuxfr.org/users/psychofox/journaux/la-fin-de-freshmeatnet
[^] # Re: Souscription mail ?
Posté par Corentin Chary (site web personnel) . Évalué à 2.
J'ai posté sur la ml gentoo-dev et ai discuté avec quelques devs sur #gentoo-sunrise.
Il est prévu d'ajouter de quoi s'inscrire, et surveiller ses/des paquets, mais pas tout de suite par manque de temps. A noter que si quelqu'un veut s'y essayer avant moi, je serais ravis d'en discuter et d'aider à l'implémentation.
En attendant, en cas de paquet pas à jour, le mieux est de poster en bug sur bugs.gentoo.org, et de rajouter les herd/maintainers en CC (et foutre un lien vers euscan dans le rapport de bug :p).
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.