Manpages

NOM

deb−version − Format du numéro de version des paquets Debian

SYNOPSIS

[ epoch:] version_amont [−révision_debian ]

DESCRIPTION

Les numéros de version utilisés pour les paquets sources et binaires se composent de trois parties. Celles−ci sont :

epoch

Ce nombre est un entier positif (usuellement petit). Il peut être omis (dans ce cas, la valeur nulle est implicite). S’il est omis, la version_amont ne doit pas contenir de caractère deux−points.

Cette valeur est destinée à permettre de gérer des erreurs dans les anciens numéros de version d’un paquet ou un changement dans la méthode de numérotation des versions amont.

upstream_version

Ceci est la partie principale du numéro de version. Cela correspond normalement au numéro de version du paquet d’origine qui a servi à créer le fichier .deb. Le format d’origine spécifié par l’auteur est généralement conservé ; cependant, il arrive qu’il soit nécessaire d’adapter ce numéro pour qu’il se conforme au format du système de gestion de paquet et du procédé de comparaison des numéros de version.

Le principe de comparaison du système de gestion de paquet en ce qui concerne la version_amont est décrite ci−dessous. La partie version_amont du numéro est obligatoire.

La version_amont ne doit contenir que des caractères alphanumériques ("A−Za−z0−9") et les caratères suivants (".+−:~"). Et devrait commencer par un chiffre. S’il n’y a pas de partie revision_Debian alors le caractère tilde ("~") n’est pas autorisé ; si il n’y a pas de epoch, alors c’est le caractère ("deux points, :") qui n’est pas autorisés.

debian_revision

Cette partie du numéro de version indique la version du paquet Debian à partir du numéro de la version amont. Elle ne doit contenir que des symboles alphanumériques ("A−Za−z0−9") et les trois caractères (".+~"). Elle est analysée de la même façon que la version_amont.

Cette partie est facultative ; si elle n’est pas présent alors c’est que la version_amont ne doit pas contenir de signe moins ("−"). Ce format est pour le cas où un logiciel a été directement conçu comme paquet Debian, il y a donc qu’une seule « debianisation » et donc par suite pas besoin d’indication de révision.

Il est convenu de repartir à ’1’ pour la révision_debian à chaque fois que la version_amont est incrémentée.

Dpkg s’arrêtera au dernier signe moins ("−") du numéro de version (s’il y en a un) pour déterminer la partie version_amont et la version_Debian. L’absence de revision_Debian est comparée avant sa présence, mais notez que la revision_Debian est partie la moins significative du numéro de version.

Algorithme de classement
Les parties version_amont et revision_Debian sont comparées par le système de gestion de paquet en utilisant le même algorithme :

Les chaînes sont comparées de la gauche vers la droite.

Pour commencer, la première partie de chaque chaîne composée uniquement de caractères non numériques est déterminée. Puis ces deux parties (l’une peut être vide) sont comparées lexicalement. Si une différence est trouvée, elle est retournée. La comparaison lexicale est effectuée sur une version modifiée des valeurs ASCII afin que les lettres passent avant les autres caractères et que les tildes ("~") passent avant tout tous les caractères, même la fin d’une partie. Par exemple, les éléments suivants sont ordonnés ainsi : « ~~ », « ~~a », « ~ », partie vide, « a ».

Puis, le début de ce qui reste des chaînes de caractères qui ne doivent plus contenir que des chiffres est déterminé. Ces valeurs numériques sont comparées, et les différences sont remontées. Dans le cas d’une chaîne vide (ce qui peut arriver si une chaîne est plus longue que l’autre lors de la comparaison) elle compte pour un zéro.

Ces deux étapes (comparaison et suppression des caractères non numériques puis de suppression des caractères numériques dans le début de la chaîne) sont répétées jusqu’à ce qu’une différence soit trouvée ou la fin des chaînes atteinte.

Notez que le rôle de epoch est de permettre de se sortir de problèmes de numérotation de version, et de faire face à des situations de changement de logique de numérotation. Cela n’est pas destiné à faire face à des numéros de version qui contiennent des chaînes de lettres que le système de gestion de paquet ne sait pas interpréter (comme « ALPHA », « pre− »)ou d’autres choses stupides.

CAVEATS

Le caractère tilde (« ~ ») et sa propriété spéciale pour les comparaisons ont été introduites dans la version 1.10 de dpkg. Ce n’est qu’a partir des versions supérieures (1.10.x) que certaines parties de dpkg−dev ont commencé à gérer ce système.

VOIR AUSSI

deb−control(5), deb(5), dpkg(1).

AUTEURS

Copyright © 1996,1997,1998 Ian Jackson et Christian Schwarz
Copyright © 2007 Frank Lichtenheld

Ce programme est un logiciel libre ; voyez la « GNU General Public Licence » version 2 ou supérieure pour le copyright. Il n’y a PAS de garantie.

TRADUCTION

Ariel VARDI <ariel.vardi [AT] freesbee.fr>, 2002. Philippe Batailler, 2006. Nicolas François, 2006. Veuillez signaler toute erreur à <debian−l10n−french [AT] lists.org>.

COMMENTS