uscan

Autres langues

Langue: fr

Version: Utilitaires Debian (ubuntu - 24/10/10)

Section: 1 (Commandes utilisateur)

NOM

uscan - Tester/surveiller la disponibilité d'une nouvelle version amont

SYNOPSIS

uscan [options] [chemin-vers-le-paquet-source ...]

DESCRIPTION

uscan parcourt les répertoires donnés (ou le répertoire courant si aucun n'est indiqué) et tous leurs sous-répertoires à la recherche de paquets contenant un fichier de contrôle debian/watch. Les paramètres de ces fichiers de contrôle sont ensuite analysés, et les sites FTP ou HTTP amont sont inspectés pour tester la présence de nouvelles mises à jour (qui sont comparées aux numéros de version amont des fichiers debian/changelog du même répertoire). Les mises à jour les plus récentes (en fonction de leur numéro de version) sont récupérées et un programme est exécuté sur les sources téléchargées si c'est spécifié dans le fichier « watch ».

Les fichiers debian/watch traditionnels peuvent encore être utilisés, mais le format actuel est à la fois plus simple et offre des services plus souples. L'ancien format n'est pas décrit ici. Pour la documentation de l'ancien format, reportez-vous au code source de uscan.

FORMAT du fichier debian/watch

L'exemple suivant montre le type d'entrée que l'on peut trouver dans un fichier debian/watch. Bien sûr, toutes ces entrées n'apparaîtront pas dans un seul fichier. Il y a d'habitude une seule ligne pour le paquet courant.

 # numéro de version du format, actuellement 3.
 # Cette ligne est obligatoire !
 version=3
 
 # Les lignes peuvent être poursuivies à la ligne suivante avec un \
 
 # Voici le format pour un site FTP :
 # Nom-complet-du-site-avec-modèle [Version [Action]]
 ftp://ftp.tex.ac.uk/tex-archive/web/c_cpp/cweb/cweb-(.*)\.tar\.gz \
   debian  uupdate
 
 # Voici la syntaxe pour un site FTP, avec une expression rationnelle
 # dans le nom du fichier
 ftp://ftp.worldforge.org/pub/worldforge/libs/Atlas-C++/transitional/Atlas-C\+\+-(.*)\.tar\.gz
 
 # Voici la syntaxe pour un site FTP avec un modèle de répertoire
 ftp://ftp.nessus.org/pub/nessus/nessus-([\d\.]+)/src/nessus-core-([\d\.]+)\.tar\.gz
 
 # Voici comment remplacer le paramètre PASV pour un site spécifique :
 # opts=pasv ftp://.../...
 
 # Il s'agit d'un format pour un site HTTP, identique à celui d'un
 # site FTP. uscan commence par télécharger la page principale,
 # obtenue en supprimant le dernier élément de l'URL ; dans ce cas,
 # http://www.cpan.org/modules/by-module/Text/
 http://www.cpan.org/modules/by-module/Text/Text-CSV_XS-(.*)\.tar\.gz
 
 # Voici un autre format pour les sites HTTP,
 # qui permet de spécifier directement la page principale :
 # Page principale  Modèle  [Version  [Action]]
 http://www.dataway.ch/~lukasl/amph/amph.html \
   files/amphetamine-([\d\.]*).tar.bz2
 
 # Cet exemple montre qu'il est possible de scanner des répertoires, sous
 # deux formes différentes, à condition que le site web autorise les
 # requêtes de la forme http://site/répertoire/inter/médiaire/
 http://tmrc.mit.edu/mirror/twisted/Twisted/(\d\.\d)/ \
   Twisted-([\d\.]*)\.tar\.bz2
 http://tmrc.mit.edu/mirror/twisted/Twisted/(\d\.\d)/Twisted-([\d\.]*)\.tar\.bz2
 
 # qa.debian.org fournit un redirecteur qui permet une forme plus
 # simple pour les projets hébergés sur SourceForge. Le format
 # ci-dessous sera automatiquement récrit pour utiliser le redirecteur
 http://sf.net/audacity/audacity-src-(.+)\.tar\.gz
 
 # githubredir.debian.net est un redirecteur pour les projets GitHub
 # Il peut être utilisé de la façon suivante :
 http://githubredir.debian.net/github/<utilisateur>/<projet> (.*).tar.gz
 
 # Ceci est le format pour un site qui possède des numéros de
 # version exotiques ; le groupe entre parenthèses devra être joint
 # par des points pour créer un numéro de version sain
 http://www.site.com/pub/toto/toto_v(\d+)_(\d+)\.tar\.gz
 
 # Voici une autre manière pour des sites ayant des numéros de version
 # bizarres, en effectuant une modification cette fois. (Notez que
 # plusieurs groupes seront concaténés avant d'effectuer la modification,
 # et que les modifications ne seront effectuées que sur le numéro de
 # version de base, et pas dans les versions contenues dans les chemins.)
 opts="uversionmangle=s/^/0.0/" \
   ftp://ftp.ibiblio.org/pub/Linux/ALPHA/wine/development/Wine-(.*)\.tar\.gz
 
 # De manière similaire, la partie de la version amont du numéro de
 # version Debian peut être modifiée :
 opts=dversionmangle=s/\.dfsg\.\d+$// \
   http://un.site.org/un/chemin/toto-(.*)\.tar\.gz
 
 # Le nom de fichier est déterminé en prenant le dernier composant de
 # l'URL et en retirant tout ce qui se trouve après un éventuel « ? ».
 # Si ça ne donne pas de nom de fichier utilisable, utilisez
 # filenamemangle. Par exemple,
 # <A href="http://toto.titi.org/download/?path=&amp;download=toto-0.1.1.tar.gz">
 # peut être géré ainsi :
 # opts=filenamemangle=s/.*=(.*)/$1/ \
 #     http://toto.titi.org/download/\?path=&amp;download=toto-(.*)\.tar\.gz
 #
 # <A href="http://toto.titi.org/download/?path=&amp;download_version=0.1.1">
 # peut être géré ainsi :
 # opts=filenamemangle=s/.*=(.*)/toto-$1\.tar\.gz/ \
 #    http://toto.titi.org/download/\?path=&amp;download_version=(.*)
 
 # L'option downloadurlmangle peut être utilisée pour modifier l'URL
 # du fichier à télécharger. Ceci ne peut être utilisé qu'avec des liens
 # http://. Ceci peut être nécessaire si le lien donné sur la page web
 # doit être transformé de manière à ce que cela fonctionne
 # automatiquement, par exemple :
 # opts=downloadurlmangle=s/prdownload/download/ \
 #   http://developer.berlios.de/project/showfiles.php?group_id=2051 \
 #   http://prdownload.berlios.de/softdevice/vdr-softdevice-(.*).tgz
 
 

Des lignes de commentaire peuvent être ajoutées avec un caractère « # ». Les lignes peuvent se poursuivre à la ligne suivante en les terminant par un caractère backslash (« \ »).

La première ligne (en ne prenant pas en compte les commentaires) doit commencer par « version=3 ». Ceci devrait permettre des extensions futures, sans avoir à changer le nom du fichier.

Les fichiers « watch » acceptent deux syntaxes pour les sites HTTP, et une seule pour les sites FTP. Voici la syntaxe la plus commune (et la plus simple). Le premier champ optionnel opts=... est décrit plus bas et sera ignoré dans ce qui suit.

Le premier champ donne le modèle complet des URL à rechercher. Dans le cas d'un site FTP, la liste des fichiers du répertoire indiqué sera demandée et il recherchera dans cette liste des fichiers dont le nom de base (ce qui suit le « / » final) correspond. Dans le cas d'un site HTTP, il recherche dans l'URL obtenue en enlevant tout ce qui suit le « / » de fin des références « href » (liens de la forme <a href=...>) vers soit une URL complète, un chemin absolu (l'ensemble de l'URL, sans la partie http://nom.serveur/) ou encore vers un nom de base (la partie qui suit le « / » final) qui correspond au modèle donné. L'ensemble, jusqu'au « / » final est considéré comme l'URL complète, tant qu'il n'y a pas de parenthèse (« ( » et « ) ») dans cette partie de l'URL. S'il y a des parenthèses, on cherchera à faire correspondre le nom du répertoire de la même façon que l'élément final de l'URL, comme décrit ci-dessous. (Veuillez noter que les caractères spéciaux des expressions rationnelles, comme « + » sont considérés littéralement, à moins qu'ils se trouvent dans une partie entre parenthèses ; voyez l'exemple d'Atlas-C++ ci-dessus. De plus, les parenthèses doivent se fermer à l'intérieur de chaque élément du chemin.)

Le modèle (la partie après le « / » final) est une expression rationnelle Perl (voir perlre(1) pour plus de détails). Vous devez utiliser un modèle suffisamment strict pour qu'il ne corresponde qu'au programme amont qui vous intéresse, et à rien d'autre. Aussi, le modèle sera ancré au début et à la fin pour qu'il corresponde au nom complet. (Notez que dans les URL HTTP, le champ « href » peut contenir un chemin absolu ou le nom du site avec le chemin, et être toujours accepté.) Le modèle doit contenir au moins un groupe Perl comme décrit dans le prochain paragraphe.

Après avoir récupéré une liste de « fichiers » qui correspondent au modèle, leurs numéros de version sont extraits en concaténant l'ensemble des groupes de l'expression rationnelle Perl (démarqués par « (...) ») et en les séparant par un « . ». Ce numéro est considéré comme le numéro de version du fichier. Les numéros de version sont ensuite modifiés si l'option uversionmangle, décrite ci-dessous, a été précisée. Enfin, les versions des fichiers sont ensuite comparées pour trouver celui qui a le plus grand numéro de version, qui est trouvé en utilisant dpkg --compare-versions. Note : si vous avez besoin de groupes qui ne sont pas utilisés dans le numéro de version, utilisez soit « (?:...) » soit l'option uversionmangle pour nettoyer la version par la suite.

La version courante (amont) peut être indiquée comme le second paramètre dans la ligne du fichier. Si elle vaut debian ou est absente, alors la version courante Debian (telle qu'elle est déterminée par debian/changelog) est utilisée pour déterminer la version amont courante. La version amont courante peut aussi être indiquée par l'option --upstream-version en ligne de commande, qui spécifie le numéro de version amont du paquet actuellement installé (c'est-à-dire, le numéro de version Debian sans epoch ni version Debian). Le numéro de version amont sera alors modifié en utilisant l'option dversionmangle si elle est indiquée, tel que cela est décrit plus bas. Si la version la plus récente disponible est plus récente que la version courante, alors elle sera téléchargée dans le répertoire parent, sans que l'option --report ou --report-status ait été utilisée. Une fois que le fichier a été téléchargé, un lien symbolique vers le fichier est créé depuis le paquet <paquet>_<version>.orig.tar.gz si le fichier a un suffixe .tar.gz ou .tgz et <paquet>_<version>.orig.tar.bz2 si le fichier a un suffixe .tar.bz2, .tbz ou .tbz2.

Enfin, si un troisième paramètre est donné dans la ligne du fichier « watch », il est considéré comme le nom d'une commande, et la commande :

     commande --upstream-version version nom_fichier
 
est exécutée, en utilisant soit le fichier initial, soit le nom du lien symbolique. En règle générale, cette commande est uupdate. (Notez que la syntaxe d'appel est légèrement différente de celle des fichiers « watch » sans la ligne « version=... », pour lesquels la commande exécutée était « commande fichier version ».)

L'autre syntaxe possible pour les URL HTTP est la suivante. Le premier champ correspond à la page d'accueil qui doit être téléchargée et dans laquelle doivent être recherchés les liens (« href ») correspondant au modèle donné dans le second champ. (Encore une fois, ce modèle sera ancré à son début et à sa fin, de façon à ce qu'il corresponde au lien complet. Si vous chercher à faire correspondre uniquement le nom de base du lien, vous pouvez utiliser un modèle comme « .*/nom-(.*)\.tar\.gz » si vous savez qu'il y a une URL complète, ou encore mieux : « (?:.*/)?nom-(.*)\.tar\.gz » si l'URL peut être ou ne pas être complète. Notez l'utilisation de « (?:...) » qui évite de créer une référence.) Si un des liens de cette page est une URL relative, elle sera considérée comme relative à l'URL de base de la page d'accueil (c'est-à-dire en retirant tout ce qui suit le « / » final), ou relative à l'URL de base indiquée dans cette page avec une balise <base href="...">. Les troisième et quatrième champs sont les champs du numéro de version et de la commande, comme précédemment.

OPTIONS SPÉCIFIQUES À UN SITE

Une ligne du fichier « watch » peut être précédée de « opts=options », où options est une liste d'options séparées par des virgules. La chaîne options peut être placée entre guillemets doubles (« " »), ce qui est nécessaire si options contient des espaces. Les options reconnues sont :
active et passive (ou pasv)
Si utilisé sur une ligne FTP, ceci forcera l'utilisation du mode passif (PASV) ou actif pour ce site.
uversionmangle=règles
Ceci permet de modifier le numéro de version amont qui correspond à une règle ftp://... ou http://... de la façon suivante. Dans un premier temps, les règles sont découpées en plusieurs règles en utilisant « ; » comme séparateur. Puis les numéros de version amont sont modifiés en appliquant la règle à la version, de façon similaire à l'exécution de la commande Perl suivante :
     $version =~ règle;
 
pour chaque règle. Ainsi, la règle « s/^/0./ » permet d'ajouter « 0. » au début du numéro de version et « s/_/./g » pour changer les « underscore » en point. Notez que la chaîne de caractères règle ne doit pas contenir de virgule ; ceci ne devrait pas être un problème.

règle ne peut utiliser que les opérations « s », « tr » et « y ». Quand l'opération « s » est utilisée, seuls les drapeaux « g », « i » et « x » peuvent être utilisés et règle ne peut contenir d'expression pouvant exécuter du code (c'est-à-dire que les constructions de la forme (?{}) ou (??{}) ne sont pas prises en charge).

dversionmangle=règles
Utilisé pour modifier le numéro de version Debian du paquet courant installé dans la même optique que l'option uversionmangle. Ainsi, une règle appropriée peut être « s/\.dfsg\.\d+$// » pour supprimer le suffixe « .dfsg.1 » dans un numéro de version Debian ou pour gérer les numéros de version de type « .pre6 ». Ici encore, la chaîne de caractères règles ne doit pas contenir de virgule ; ceci ne devrait pas être un problème.
versionmangle=règles
Il s'agit d'un raccourci syntactique pour uversionmangle=règles,dversionmangle=règles, appliquant les mêmes règles à la fois aux numéros de version Debian et amont.
filenamemangle=règles
Ceci est utilisé pour modifier le nom de fichier sous lequel le fichier téléchargé sera enregistré, et est parcouru de la même manière qu'avec l'option uversionmangle. Les exemples d'utilisation sont donnés dans la section ci-dessus.
downloadurlmangle=règles
Ceci est utilisé pour modifier l'URL nécessaire pour le téléchargement. L'URL est d'abord calculée en se basant sur la page principale téléchargée et sur la correspondance du motif, puis le numéro de version est déterminé depuis cette URL. Enfin, toutes les règles données par cette option sont appliquées avant que la tentative de téléchargement soit effectuée. Un exemple d'utilisation est donné dans la section des exemples ci-dessus.

Vérification du nom du répertoire

Comme plusieurs autres scripts du paquet devscripts, uscan parcourt le répertoire demandé à la recherche de fichiers debian/changelog et debian/watch. Pour se protéger contre certains fichiers égarés qui pourraient poser problème, il examine le nom du répertoire parent une fois qu'il a trouvé le fichier debian/changelog, et vérifie que le nom du répertoire correspond au nom du paquet. Il ne cherchera à télécharger les nouvelles versions d'un paquet et à effectuer l'action demandée que si le nom du répertoire correspond au nom du paquet. La façon précise utilisée est contrôlée par les deux variables du fichier de configuration DEVSCRIPTS_CHECK_DIRNAME_LEVEL et DEVSCRIPTS_CHECK_DIRNAME_REGEX, et les options en ligne de commande associées --check-dirname-level et --check-dirname-regex.

DEVSCRIPTS_CHECK_DIRNAME_LEVEL peut prendre les valeurs suivantes :

0
Ne vérifie jamais le nom du répertoire.
1
Ne vérifie le nom du répertoire que s'il a fallu changer de répertoire pour trouver le fichier debian/changelog, c'est-à-dire que le répertoire qui contient debian/changelog n'est pas le répertoire dans lequel uscan a été invoqué. C'est le comportement par défaut.
2
Vérifie toujours le nom du répertoire.

Le nom du répertoire est vérifié en testant si le nom du répertoire courant (donné par pwd(1)) correspond à l'expression rationnelle donnée par la variable DEVSCRIPTS_CHECK_DIRNAME_REGEX du fichier de configuration ou par l'option --check-dirname-regex regex. Il s'agit d'une expression rationnelle Perl (voir perlre(1)), qui sera ancrée à son début et à sa fin. Si elle contient un « / », alors elle doit correspondre au chemin complet. Si elle contient la chaîne « PACKAGE », cette chaîne sera remplacée par le nom du paquet source déterminé par le fichier changelog. La valeur par défaut de cette expression rationnelle est « PACKAGE(-.+)? », ce qui correspond aux répertoires nommés PACKAGE ou PACKAGE-version.

EXEMPLE

Ce script va réaliser une mise à jour complètement automatique avec l'amont.
 #!/bin/sh -e
 # appelé avec '--upstream-version' <version> <fichier>
 uupdate "$@"
 package=`dpkg-parsechangelog | sed -n 's/^Source: //p'`
 cd ../$package-$2
 debuild
 

Remarquez que dupload et dput ne sont pas appelés automatiquement, puisque le responsable doit réaliser des vérifications sur le logiciel avant de l'envoyer à l'archive Debian.

OPTIONS

--report, --no-download
Ne fournit qu'un rapport indiquant les nouvelles versions, mais ne télécharge rien.
--report-status
Rapporte l'état de tous les paquets, même ceux qui sont à jour, mais ne télécharge rien du tout.
--download
Fournit un rapport puis télécharge. (C'est le comportement par défaut.)
--destdir
Chemin du répertoire dans lequel placer les fichiers téléchargés.
--force-download
Télécharger le fichier amont même si le paquet est à jour (cependant, les fichiers locaux ne sont pas écrasés).
--pasv
Force le mode passif (« PASV ») pour les connexions FTP.
--no-pasv
N'utilise pas le mode passif pour les connexions FTP.
--timeout N
Défini le temps d'attente à N secondes (20 secondes par défaut).
--symlink
Utilise un lien symbolique pour orig.tar.gz (respectivement orig.tar.bz2) lorsque les fichiers téléchargés ont des extensions .tar.gz ou .tgz (respectivement .tar.bz2, .tbz et .tbz2). (C'est le comportement par défaut.)
--rename
Au lieu de créer des liens symboliques, renomme les fichiers téléchargés avec leur nom Debian orig.tar.gz si leurs extensions sont .tar.gz ou .tgz et de manière semblable pour les fichiers d'extension tar.bz2.
--repack
Après avoir téléchargé une archive tar compressée avec lzma ou xz ou bzip ou une archive zip, la rempaqueter dans une archive tar compressée avec gzip, ce qui est toujours nécessaire pour les paquets source Debian. Ne rien faire si l'archive téléchargée n'est ni une archive tar compressée avec lzma ou xz ou bzip ni une archive zip (c'est-à-dire si elle ne finie pas par l'extension .tlz, tar.lzma, .txz, .tar.xz .tbz, .tbz2, .tar.bz2 ou .zip). Le paquet unzip doit être installé pour rempaqueter les archives .zip, le paquet lzma doit être installé pour rempaqueter les archives tar compressées avec lzma et le paquet xz-utils doit être installé pour rempaqueter les archives tar compressées avec xz.
--no-symlink
Ne crée pas ces liens symboliques et ne renomme pas les fichiers.
--dehs
Utilise le format XML pour la sortie, requis par le système DEHS.
--no-dehs
Utilise le format de sortie traditionnel de uscan. (C'est le comportement par défaut.)
--package paquet
Spécifie le nom du paquet à contrôler plutôt que d'examiner debian/changelog ; ceci requiert les options --upstream-version (à moins qu'une option ne soit précisée dans le fichier watch) et --watchfile. De plus, aucun répertoire ne sera scanné et rien ne sera téléchargé. Cette option est probablement la plus utile en conjonction avec le système DEHS (et --dehs).
--upstream-version version-amont
Spécifie la version amont courante plutôt que d'examiner le fichier watchfile ou le journal des modifications pour le déterminer. Ceci est ignoré si un balayage de répertoire est fait et que plus d'un fichier watchfile est trouvé.
--watchfile watchfile
Spécifiez le fichier watchfile plutôt que de faire un balayage de répertoire pour le déterminer. Si cette option est utilisée sans --package, uscan devra être appelé depuis l'arborescence du paquet Debian source (de sorte que debian/changelog puisse être trouvé simplement par une recherche dans l'arborescence).
--download-version version
Spécifier la version amont souhaitée, plutôt que d'utiliser celle avec le numéro de version le plus important.
--download-current-version
Télécharger la version du paquet actuel
--verbose
Donne une sortie bavarde.
--no-verbose
Ne donne pas de sortie bavarde. (C'est le comportement par défaut.)
--debug
Affiche les pages web téléchargées sur la sortie standard afin de déboguer votre fichier « watch ».
--check-dirname-level N
Veuillez consulter la section ci-dessus « Vérification du nom du répertoire » pour une explication de cette option.
--check-dirname-regex regex
Veuillez consulter la section ci-dessus « Vérification du nom du répertoire » pour une explication de cette option.
--user-agent, --useragent
Utiliser un champ « user agent » différent de celui par défaut.
--no-conf, --noconf
Ne lit aucun fichier de configuration. L'option ne peut être utilisée qu'en première position de la ligne de commande.
--help
Affiche un bref message d'aide.
--version
Afficher les informations sur la version.

VARIABLES DE CONFIGURATION

Les deux fichiers de configuration /etc/devscripts.conf et ~/.devscripts sont évalués dans cet ordre par un interpréteur de commandes (« shell ») pour placer les variables de configuration. Des options de ligne de commande peuvent être utilisées pour neutraliser les paramètres des fichiers de configuration. Les paramètres des variables d'environnement sont ignorés à cette fin. Si la première option donnée en ligne de commande est --noconf, alors ces fichiers ne sont pas évalués. Les variables actuellement identifiées sont :
USCAN_DOWNLOAD
Si elle est positionnée à no, les nouveaux fichiers amonts ne seront pas téléchargés, ce qui équivaut à utiliser les options --report ou --no-download.
USCAN_PASV
Si elle est positionnée à yes ou no, cela force respectivement à utiliser ou à ne pas utiliser le mode passif pour les connexions FTP. Si elle est positionnée à default, alors Net::FTP(3) fera un choix (basé principalement sur la variable d'environnement FTP_PASSIVE).
USCAN_TIMEOUT
Si cette option est définie à un nombre N, alors définir le temps limite à N secondes. C'est équivalent à l'option --timeout.
USCAN_SYMLINK
Si cette option est mise à no, un lien symbolique vers paquet_version.orig.tar.{gz|bz2} ne sera pas créé (équivalent à l'option --no-symlink). Si elle est à yes ou symlink, les liens symboliques seront créés. Si elle est à rename, les fichiers sont renommés (équivalent à l'option --rename).
USCAN_DEHS_OUTPUT
Si cette option est à yes, alors la sortie sera de type DEHS, comme si l'option --dehs était utilisée.
USCAN_VERBOSE
Si elle est positionnée à yes, alors la sortie sera bavarde, comme si l'option --verbose était utilisée.
USCAN_USER_AGENT
Si elle est définie, elle spécifie la chaîne à utiliser pour annoncer le navigateur (« user agent ») à la place de la valeur par défaut. C'est équivalent à l'option --user-agent.
USCAN_DESTDIR
Si elle est définie, elle désigne le répertoire où les fichiers téléchargés seront placés. C'est équivalent à l'option --destdir.
USCAN_REPACK
Si elle est positionnée à yes, alors après avoir téléchargé une archive tar compressée avec bzip ou lzma ou xz ou une archive zip, uscan recréera une archive tar compressée avec gzip. C'est équivalent à l'option --repack.

VALEURS DE RETOUR

La valeur de retour indique si une nouvelle version a été trouvée ; il est conseillé de lire la sortie pour déterminer exactement ce qu'il s'est passé et pour voir s'il n'y a pas eu d'avertissement.
0
Soit les options --help ou --version ont été utilisées, soit une nouvelle version amont a été trouvée pour un des fichiers « watch » examinés.
1
Aucune nouvelle version amont n'a été trouvée pour les fichiers « watch » examinés.

HISTORIQUE ET MISE À NIVEAU

Cette section décrit brièvement les incompatibilités inverses des fonctionnalités du fichier watchfile qui ont été ajoutées dans chaque version du watchfile et la première version du paquet devscripts qui les comprenait.
Versions antérieures à 2
La syntaxe du fichier watchfile était très différente à l'époque. Ne l'utilisez plus. Si vous mettez votre fichier watchfile à niveau depuis une version antérieure à 2, il est recommandé de lire cette page de manuel et de recommencer à zéro.
Version 2
devscripts version 2.6.90 : la première incarnation du style courant de watchfile.
Version 3
devscripts version 2.8.12 a introduit les choses suivantes : manipulation correcte des expressions rationnelles dans la partie du chemin, recherche de motif d'un répertoire/chemin, numéro de version dans plusieurs parties, numéro de version modifiable. Les versions suivantes ont introduit la modification des liens.

Si vous êtes en train de vous mettre à niveau depuis la version 2, l'incompatibilité principale est s'il existe plusieurs groupes dans la partie des motifs. Alors que seul le premier était utilisé dans la version 2, ils le seront tous dans la version 3. Pour éviter ce comportement, modifiez les groupes non liés au numéro de version en (?:...) au lieu d'un groupe ordinaire (...).

VOIR AUSSI

dpkg(1), perlre(1), uupdate(1) et devscripts.conf(5).

AUTEUR

La version initiale de uscan a été écrite par Christoph Lameter <clameter@debian.org>. Des améliorations significatives, d'autres modifications et des corrections de bogues ont été apportées par Julian Gilbey <jdg@debian.org>. Le support pour HTTP a été ajouté par Piotr Roszatycki <dexter@debian.org>. Le programme a été récrit en Perl par Julian Gilbey.

TRADUCTION

Ce document est une traduction, réalisée par Nicolas François, Guillaume Delacour, Cyril Brulebois et Thomas Huriaux.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité.

La version anglaise la plus à jour de ce document est toujours consultable en ajoutant l'option « -L C » à la commande man.

N'hésitez pas à signaler à l'auteur ou à la liste de traduction <debian-l10-french@lists.debian.org>, selon le cas, toute erreur dans cette page de manuel.