Man page - uscan(1)

Packages contains this manual

Available languages:

en fr de

Manual

USCAN.FR

NOM
SYNOPSIS
DESCRIPTION
FORMAT DU FICHIER DE VEILLE
OPTIONS DE FICHIER DE VEILLE
EXEMPLE D’EXÉCUTION
EXEMPLES DE FICHIER DE VEILLE
Site HTTP (de base)
Site HTTP (pgpsigurlmangle)
Site HTTP (pgpmode = next/previous)
Site HTTP (flexible)
Site HTTP (MUT de base)
Site HTTP (recherche récursive de répertoire)
Site HTTP (raccourci alternatif)
Site HTTP (version exotique)
Site HTTP (DFSG)
Site HTTP (filenamemangle)
Site HTTP (downloadurlmangle)
Site HTTP (oversionmangle, MUT)
Site HTTP (pagemangle)
Site FTP (de base) :
Site FTP (expressions rationnelles) :
Site FTP (version exotique)
sf.net
github.com
PyPI
code.google.com
npmjs.org (modules Node)
paquet groupé
accÚs direct au dépÎt git (étiquettes)
accÚs direct au dépÎt git (HEAD)
accÚs direct au dépÎt git (avec sous-modules)
accÚs direct au dépÎt Subversion (étiquettes)
accÚs direct au dépÎt Subversion (HEAD)
Fossil
EXEMPLES DE FICHIER DE COPYRIGHT
EXEMPLES DE FICHIER DE TROUSSEAU
OPTIONS DE LIGNE DE COMMANDE
VARIABLES DE CONFIGURATION DE DEVSCRIPT
VALEURS DE RETOUR
FONCTIONNALITÉS AVANCÉES
Script personnalisé
DĂ©tournement d’URL
Vérification du nom du répertoire
HISTORIQUE ET MISE À NIVEAU
VOIR AUSSI
AUTEUR
TRADUCTION

NOM

uscan - Tester ou surveiller la disponibilitĂ© d’une nouvelle version amont

SYNOPSIS

uscan [ options ] [ chemin ]

DESCRIPTION

Pour une utilisation basique, uscan est exĂ©cutĂ© sans aucun paramĂštre Ă  partir de la racine d’une arborescence source debianisĂ©e oĂč on voit le rĂ©pertoire debian/ ou un rĂ©pertoire contenant plusieurs arborescences sources.

Sauf si --watchfile est indiqué, uscan recherche récursivement les arborescences source valides en partant du répertoire courant (voir la section "Vérification du nom du répertoire" ci-dessous pour plus de détails).

Pour chaque arborescence valide trouvée, typiquement la séquence est la suivante :

‱

uscan lit la premiÚre entrée dans debian/changelog pour déterminer le nom du paquet source <spkg> et la derniÚre version amont.

‱

uscan traite les lignes de veille debian/watch de haut en bas en une passe unique.

‱

uscan tĂ©lĂ©charge une page web Ă  partir de l’ URL spĂ©cifiĂ©e dans debian/watch .

‱

uscan extrait les rĂ©fĂ©rences href pointant vers l’archive amont (ou les archives) Ă  partir de la page web en utilisant le motif_correspondant dans debian/watch .

‱

uscan tĂ©lĂ©charge l’archive amont avec la version la plus haute plus rĂ©cente que la derniĂšre version amont.

‱

uscan sauvegarde l’archive tĂ©lĂ©chargĂ©e dans le rĂ©pertoire parent ../ : ../<upkg>-<uversion>.tar.gz

‱

uscan invoque mk-origtargz pour crĂ©er l’archive source : ../<spkg>_<oversion>.orig.tar.gz

‱

Pour un paquet MUT ("multiple upstream tarball" - archive amont multiple), l’archive amont secondaire sera plutĂŽt nommĂ©e ../<spkg>_<oversion>.orig-<composante>.tar.gz .

‱

L’action est rĂ©pĂ©tĂ©e jusqu’à ce que toutes les lignes de debian/watch soient traitĂ©es.

‱

uscan invoque uupdate pour crĂ©er l’arborescence source debianisĂ©e : ../<spkg>-<oversion>/*

Veuillez noter les informations suivantes.

‱

Pour des raisons de simplicitĂ©, la mĂ©thode de compression utilisĂ©e dans les exemples est gzip avec le suffixe .gz . Les autres mĂ©thodes telles que xz , bzip2 et lzma , avec les suffixes xz , bz2 et lzma correspondants peuvent Ă©galement ĂȘtre utilisĂ©es.

‱

La nouvelle version=4 permet la gestion des paquets MUT, mais ce sont des cas rares parmi les paquets Debian. Pour un paquet d’archive simple, il n’y a qu’une ligne de veille et pas de ../<spkg>_<oversion>.orig-<composante>.tar.gz .

‱

uscan avec l’option --verbose produit un rapport lisible de son exĂ©cution.

‱

uscan avec l’option --debug produit un rapport lisible de son exĂ©cution avec l’état des variables internes.

‱

uscan avec l’option --extra-debug produit un rapport lisible de son exĂ©cution avec l’état des variables internes et le contenu distant lors de la phase "recherche".

‱

uscan avec l’option --dehs produit un rapport d’état du paquet amont au format XML pour que d’autres programmes tels que Debian External Health System.

‱

L’objectif premier d’ uscan est d’aider Ă  dĂ©terminer si c’est bien la derniĂšre version de l’archive amont qui est utilisĂ©e et de tĂ©lĂ©charger cette version d’archive. L’ordre des versions est dĂ©terminĂ©e par dpkg --compare-versions .

‱

L’option --safe d’ uscan limite ses fonctionnalitĂ©s Ă  ses objectifs premiers. À la fois le repaquetage des fichiers tĂ©lĂ©chargĂ©s et la mise Ă  jour de l’arborescence source sont sautĂ©s pour Ă©viter l’exĂ©cution de scripts non sĂ©curisĂ©s. Cela change aussi les options par dĂ©faut Ă  --no-download et --skip-signature .

FORMAT DU FICHIER DE VEILLE

Le format de la version 4 actuelle de debian/watch peut ĂȘtre rĂ©sumĂ© comme suit :

‱

Les espaces et les tabulations de début sont supprimées.

‱

Les lignes vides sont supprimées.

‱

Une ligne qui débute par # (diÚse) est une ligne de commentaire et elle est supprimée.

‱

Un \ unique (barre inverse oblique) Ă  la fin d’une ligne est supprimĂ© et la ligne suivante est concatĂ©nĂ©e aprĂšs la suppression des espaces et des tabulations de dĂ©but. La ligne concatĂ©nĂ©e est analysĂ©e comme une seule ligne. (L’existence ou l’inexistence d’une espace avant le \ unique final est signifiant.)

‱

La premiÚre ligne non commentée est la suivante :

version=4

Il s’agit d’une ligne obligatoire et c’est le numĂ©ro de la version recommandĂ©e.

Si vous utilisez ici " version=3 " Ă  la place, certaines fonctionnalitĂ©s peuvent ne pas fonctionner comme cela est documentĂ© ici. Voir "HISTORIQUE ET MISE À NIVEAU".

‱

Les lignes suivantes non commentĂ©es (lignes de veille) prĂ©cisent les rĂšgles de sĂ©lection des URL d’archive amont candidates et sont dans un des trois formats suivants :

‱

opts=" ... " http:// URL motif_correspondant [ version [ script ]]

‱

http:// URL motif_correspondant [ version [ script ]]

‱

opts=" ... "

Ici,

‱

opts=" ... " prĂ©cise le comportement d’ uscan . Voir "OPTIONS DE FICHIER DE VEILLE".

‱

http:// URL prĂ©cise la page web oĂč l’amont publie le lien vers la derniĂšre archive source.

‱

https:// URL peut ĂȘtre aussi utilisĂ©, comme peut l’ĂȘtre

‱

ftp:// URL

‱

Certaines parties d’ URL peuvent ĂȘtre dans le motif de correspondance d’expression rationnelle entourĂ©es par ( et ) comme /toto/titi-([\.\d]+)/ . Si plusieurs rĂ©pertoires correspondent, la version la plus Ă©levĂ©e est choisie.) Autrement, l’ URL est prise textuellement.

‱

motif_correspondant précise le motif de chaßne complet correspondant aux références hrefs dans la page web. Voir "EXEMPLES DE FICHIER DE VEILLE".

‱

Toutes les parties correspondantes entre ( et ) sont concaténées avec un . (point) pour former la version amont.

‱

Si les rĂ©fĂ©rences href ne contiennent pas de rĂ©pertoires, il est possible de les combiner avec l’entrĂ©e prĂ©cĂ©dente. C’est-Ă -dire, http:// URL / motif_correspondant .

‱

version restreint le choix d’archive amont pouvant ĂȘtre tĂ©lĂ©chargĂ©e. La version la plus rĂ©cente disponible est choisie dans tous les cas.

‱

debian rĂ©clame que l’archive amont Ă  tĂ©lĂ©charger soit plus rĂ©cente que la version obtenue Ă  partir de debian/changelog .

‱

Un numĂ©ro_de_version tel que 12.5 requiert que l’archive amont soit plus rĂ©cente que le numĂ©ro_de_version .

‱

same requiert que la version tĂ©lĂ©chargĂ©e des archives secondaires soit exactement la mĂȘme que celle de la premiĂšre archive amont tĂ©lĂ©chargĂ©e. (Utile uniquement pour les paquets MUT)

‱

previous limite la version du fichier de signature. (Utilisé avec pgpmode=previous)

‱

ignore ne limite pas la version des archives secondaires. (Peut-ĂȘtre utile pour les paquets MUT)

‱

group rĂ©clame que l’archive amont Ă  tĂ©lĂ©charger soit plus rĂ©cente que la version obtenue Ă  partir de debian/changelog . La version du paquet est la concatĂ©nation de toutes les versions amont.

‱

checksum exige que l’archive amont Ă  tĂ©lĂ©charger soit plus rĂ©cente que la version obtenue Ă  partir de debian/changelog . La version du paquet est la concatĂ©nation de la version de la prinicpale source, suivie de la somme de contrĂŽle de toutes les versions amont utilisant le systĂšme de version "checksum". À minima, la source principale doit ĂȘtre dĂ©clarĂ©e comme "group".

‱

script est exĂ©cutĂ© Ă  la fin de l’exĂ©cution d’ uscan avec les paramĂštres appropriĂ©s fournis par uscan (dĂ©faut: pas d’action) .

‱

Le paquet Debian typique est un paquet non natif fait Ă  partir d’une archive amont. Seulement une ligne unique du fichier de veille dans un des deux premiers formats est habituellement utilisĂ©e avec sa version rĂ©glĂ©e Ă  debian et script rĂ©glĂ© Ă  uupdate .

‱

Un paquet natif ne devrait pas spécifier de script .

‱

Un paquet MUT ("multiple upstream tarball" – archive amont multiple) devrait indiquer uupdate comme script dans la derniùre ligne de veille et ne devrait pas indiquer de script dans le reste des lignes de veille.

‱

Le dernier format des lignes de veille est utile pour configurer des paramĂštres permanents : user-agent , compression . Si ce format est utilisĂ©, ces paramĂštres doivent ĂȘtre suivis de la (ou des) lignes(s) de veille dĂ©finissant l’ URL .

‱

[and] dans le format ci-dessus sont ici pour marquer les parties optionnelles et ne devraient pas ĂȘtre tapĂ©es.

Il y a quelques chaĂźnes spĂ©ciales qui sont remplacĂ©es par uscan pour faciliter l’écriture du fichier de veille.
@PACKAGE@

Cette chaßne est remplacée par le nom de paquet source trouvé dans la premiÚre ligne du fichier debian/changelog .

@ANY_VERSION@

Cette chaĂźne est remplacĂ©e par l’expression rationnelle de la version amont lĂ©gale (capture).

[-_]?[Vv]?(\d[\-+\.:\˜\da-zA-Z]*)

@ARCHIVE_EXT@

Cette chaĂźne est remplacĂ©e par l’expression rationnelle de l’extension habituelle de fichier d’archive (sans capture).

(?i)(?:\.(?:tar\.xz|tar\.bz2|tar\.gz|tar\.zstd?|zip|tgz|tbz|txz))

@SIGNATURE_EXT@

Cette chaĂźne est remplacĂ©e par l’expression rationnelle de l’extension habituelle de fichier de signature (sans capture).

(?i)(?:\.(?:tar\.xz|tar\.bz2|tar\.gz|tar\.zstd?|zip|tgz|tbz|txz))'(?:\.(?:asc|pgp|gpg|sig|sign))'

@DEB_EXT@

Cette chaĂźne est remplacĂ©e par l’expression rationnelle de habituelle de Debian (sans capture).

[\+˜](debian|dfsg|ds|deb)(\.)?(\d+)?$

Certaines extensions de fichiers ne sont volontairement pas incluses dans la liste prĂ©cĂ©dente pour Ă©viter des faux positifs. Il vous est encore possible de rajouter ces motifs d’extension de fichier manuellement.

OPTIONS DE FICHIER DE VEILLE

uscan lit les options de veille spĂ©cifiĂ©es dans opts=" ... " pour personnaliser son comportement. De multiples options option1 , option2 , option3 , ..., peuvent ĂȘtre configurĂ©es de cette maniĂšre : opts=" option1 , option2 , option3 , ... " . Les guillemets doubles sont nĂ©cessaires si les options contiennent des espaces.

À moins qu’elles ne soient notĂ©es par ailleurs comme persistantes, la plupart des options ne sont valables que dans la ligne de veille qui les contient.

Les options de veille disponibles sont :
component=
composante

Configurer le nom de l’archive source secondaire comme <spkg>_<oversion>.orig-<composante>.tar.gz pour un paquet MUT.

ctype= component-type

Indique le type du composant (seuls "nodejs" et "perl" sont disponible actuellement) . Ceci aide uscan à trouver la version courante si la version du composant est ignorée.

Lorsque ctype=nodejs est utilisé, uscan recherche une version dans "package.json", lorsque ctype=perl est utilisé, uscan recherche une version dans "META.json". Si une version est trouvée, elle est utilisée comme version courante du composant, en ignorant la version trouvée dans la chaßne de version de Debian. Ceci permet une meilleure détection des changements lorsque ignore ou checksum sont utilisés dans la version Debian.

compression= méthode

Configurer la mĂ©thode de compression quand l’archive est rempaquetĂ©e (persistant).

Les valeurs de mĂ©thode disponibles sont xz , gzip (alias gz ), bzip2 (alias bz2 ) lzma et default . La valeur par dĂ©faut est xz . Lorsque uscan est lancĂ© dans un rĂ©pertoire source Debian et que le format est "1.0" ou n’est pas dĂ©fini, la mĂ©thode par dĂ©faut devient gzip .

Veuillez noter que le rempaquetage des archives amont par mk-origtargz ne se produit que si une des conditions suivantes est satisfaite :

‱

USCAN_REPACK est configuré dans la configuration de devscript. Voir "VARIABLES DE CONFIGURATION DE DEVSCRIPT".

‱

--repack est configuré en ligne de commande. Voir <OPTIONS DE LIGNE DE COMMANDE>.

‱

repack est configuré sur la ligne de veille de cette maniÚre : opts="repack, ... " .

‱

L’archive amont est de type zip , y compris jar , xpi , ...

‱

L’archive amont est de type zstdi (Zstandard).

‱

Les alinĂ©as Files-Excluded ou Files-Excluded- composante sont configurĂ©s dans debian/copyright pour que mk-origtargz invoquĂ© Ă  partir d’ uscan supprime les fichiers de l’archive amont et la rempaquette. Voir "EXEMPLES DE FICHIER DE COPYRIGHT" et mk-origtargz (1).

repack

Forcer le rempaquetage de l’archive amont avec la mĂ©thode de compression.

repacksuffix= suffixe

Ajouter un suffixe Ă  la version du paquet Debian amont seulement lorsque l’archive source est rempaquetĂ©e. Cette rĂšgle peut ĂȘtre utilisĂ©e seulement pour un unique paquet d’archive amont.

mode= mode

Configurer le mode de tĂ©lĂ©chargement de l’archive.

LWP

Il s’agit du mode par dĂ©faut qui tĂ©lĂ©charge l’archive spĂ©cifiĂ©e Ă  partir de l’URL sur le web. La valeur interne mode est automatiquement mise Ă  jour soit vers http soit vers ftp d’aprĂšs l’URL.

git

Ce mode accĂšde directement Ă  l’archive git amont avec la commande git et empaquette l’arborescence source avec l’étiquette spĂ©cifiĂ©e par motif_correspondant dans spkg-version .tar.xz .

Si l’amont fournit l’archive publiĂ©e au travers de son interface web, veuillez utiliser celle-ci plutĂŽt que ce mode. Ce mode est le dernier recours.

Dans le mode git, motif_correspondant spécifie le motif correspondant complet de la chaßne pour les étiquettes au lieu des références href. Si motif_correspondant est réglé à refs/tags/ étiquette-motif_correspondant , uscan télécharge le fichier source à partir de refs/tags/ étiquette-correspondante du dépÎt git. La version amont est extraite en concaténant les parties correspondantes de ( ... ) avec . . Voir "EXEMPLES DE FICHIER DE VEILLE".

Si motif_correspondant est rĂ©glĂ© Ă  HEAD , uscan tĂ©lĂ©charge le fichier source Ă  partir du HEAD du dĂ©pĂŽt git et la version pertinente est automatiquement gĂ©nĂ©rĂ©e avec la date et l’empreinte du HEAD du dĂ©pĂŽt git.

Si motif_correspondant est réglé à heads/ branche , uscan télécharge le fichier source à partir de la branche spécifiée du dépÎt git.

Le dĂ©pĂŽt local est créé temporairement soit comme un dĂ©pĂŽt git brut soit comme un dĂ©pĂŽt git clonĂ© si gitmodules est spĂ©cifiĂ©. L’archive est ensuite gĂ©nĂ©rĂ©e depuis le dĂ©pĂŽt temporaire et enregistrĂ©e dans le rĂ©pertoire de destination.

Le dĂ©pĂŽt temporaire est normalement effacĂ© aprĂšs l’exĂ©cution de uscan mais est conservĂ© si l’option --debug est spĂ©cifiĂ©e.

Si le rĂ©pertoire courant est un dĂ©pĂŽt git et si le dĂ©pĂŽt recherchĂ© est listĂ© dans les sources amont ("remote") , alors uscan l’utilisera au lieu de dupliquer le dĂ©pĂŽt dans un rĂ©pertoire temporaire. Le seul changement dans le rĂ©pertoire local est une mise Ă  jour ("fetch") .

svn

Ce mode accùde directement à l’archive Subversion amont avec la commande svn et empaquette l’arborescence source.

Dans le mode svn, motif_correspondant spécifie le motif correspondant complet de la chaßne pour les répertoires su dépÎt Subversion. La version amont est extraite en concaténant les parties correspondantes de ( ... ) avec . .

Si motif_correspondant est rĂ©glĂ© Ă  HEAD , uscan tĂ©lĂ©charge la derniĂšre arborescence source de l’URL. La version amont est ensuite construite en ajoutant la derniĂšre rĂ©vision de l’URL Ă  0.0˜svn .

Comme la signature des commits n’est pas possible avec Subversion, pgpmode est mis d’office à none lorsque mode=svn . Les valeurs de pgpmode autres que default et none affichent des erreurs.

pretty= rĂšgle

Configurer la chaĂźne de version amont Ă  un format arbitraire comme un argument optionnel de opts quand le motif_correspondant est HEAD ou heads/ branch pour le mode git . Pour connaĂźtre la syntaxe exacte, voir la page de manuel de git-log avec tformat . Le format par dĂ©faut est pretty=0.0˜git%cd.%h . Aucune rĂšgle uversionmangle n’est applicable dans ce cas.

Lorsque pretty=describe est utilisĂ©, la chaĂźne de version amont est la sortie de la commande " git describe --tags | sed s/-/./g ". Par exemple, si l’envoi (commit) est le cinq uiĂšme aprĂšs la derniĂšre Ă©tiquette v2.17.12 et son empreinte courte est ged992511 , alors, la chaĂźne est v2.17.12.5.ged992511 . Dans ce cas, c’est une bonne idĂ©e d’ajouter uversionmangle=s/ˆ/0.0˜/ ou uversionmangle=s/ˆv// pour rendre la chaĂźne de la version amont compatible avec Debian. Veuillez noter qu’afin que pretty=describe fonctionne bien, l’amont doit Ă©viter d’étiqueter avec des Ă©tiquettes alphabĂ©tiques alĂ©atoires.

L’option pretty=describe contraint Ă  configurer gitmode=full pour crĂ©er automatiquement un clone local complet du dĂ©pĂŽt.

date= rĂšgle

Configurer la chaĂźne de date utilisĂ©e par l’option pretty Ă  un format arbitraire comme un paramĂštre optionnel de opts quand le motif_correspondant est HEAD ou heads/ branch pour le mode git . Pour connaĂźtre la syntaxe exacte, voir la page de manuel strftime . Le format par dĂ©faut est date=%Y%m%d .

gitexport= mode

Indiquer le mode d’opĂ©ration d’un export d’archive git. La valeur par dĂ©faut est gitexport=default . Positionner Ă  gitexport=all pour inclure tous les fichiers dans l’archive .orig.tar, en ignorant tous les attributs git export-ignore dĂ©finis par le projet amont. Cette option s’applique Ă©galement aux sous-modules si gitmodules est spĂ©cifiĂ©.

Cette option n’est valable qu’en mode "git".

gitmode= mode

Configurer le mode de l’opĂ©ration git clone. La valeur par dĂ©faut est gitmode=shallow . Pour certains serveurs git simples ("dumb"), il peut ĂȘtre nĂ©cessaire de configurer soi-mĂȘme la valeur gitmode=full pour imposer une opĂ©ration de clonage complĂšte.

Si le rĂ©pertoire courant est un dĂ©pĂŽt git et si le dĂ©pĂŽt recherchĂ© est listĂ© dans les sources amont ("remote") , alors uscan l’utilisera au lieu de dupliquer le dĂ©pĂŽt dans un rĂ©pertoire temporaire.

gitmodules [= modules ]

Cloner un ou plusieurs sous-modules aprÚs avoir cloné le dépÎt principal. Par défaut, uscan clone tous les sous-modules liés au dépÎt git.

Pour cloner une sélection de sous-modules, utiliser une liste dont les éléments sont séparés par des points-virgules. Par exemple : gitmodules=m4;doc/common.

pgpmode= mode

Configurer le mode de vérification de signature OpenPGP.
auto

uscan vĂ©rifie les URL possibles pour le fichier de signature et gĂ©nĂšre automatiquement une rĂšgle pgpsigurlmangle pour l’utiliser.

default

Utiliser pgpsigurlmangle= rĂšgles pour crĂ©er la chaĂźne d’URL du fichier de signature amont candidat Ă  partir de l’URL de l’archive amont. (Par dĂ©faut)

Si le pgpsigurlmangle spĂ©cifiĂ© est manquant, uscan vĂ©rifie les URL possible pour le fichier de signature et suggĂšre l’ajout d’une rĂšgle pgpsigurlmangle .

mangle

Utiliser pgpsigurlmangle= rĂšgles pour crĂ©er la chaĂźne d’URL du fichier de signature amont candidat Ă  partir de l’URL de l’archive amont.

next

VĂ©rifier ce fichier d’archive tĂ©lĂ©chargĂ© avec le fichier de signature spĂ©cifiĂ© dans la ligne de veille suivante. La ligne de veille suivante doit ĂȘtre pgpmode=previous . Autrement, aucune vĂ©rification n’est effectuĂ©e.

previous

VĂ©rifier le fichier d’archive tĂ©lĂ©chargĂ© spĂ©cifiĂ© dans la ligne de veille prĂ©cĂ©dente avec ce fichier de signature. La ligne de veille prĂ©cĂ©dente doit ĂȘtre pgpmode=next .

self

Vérifier le fichier toto.ext téléchargé avec sa propre signature et extraire son fichier archive de contenu en toto .

gittag

Vérifie la signature du tag si mode=git .

none

Pas de signature disponible. (Pas d’alerte.)

searchmode= mode

Configurer le mode de recherche.
html
(dĂ©faut)) : recherche l’expression dans les paramĂštres "href"
des tags HTML <a>
plain
: recherche l’expression dans la page entiùre

C’est utile si le contenu de la page n’est pas au format HTML mais au format JSON. Exemple avec npmjs.com :

version=4
opts="searchmode=plain" \
https://registry.npmjs.org/aes-js \
https://registry.npmjs.org/aes-js/-/aes-js-(\d[\d\.]*)@ARCHIVE_EXT@

decompress

DĂ©compresser l’archive compressĂ©e avant la vĂ©rification de la signature OpenPGP.

bare

DĂ©sactiver tout le code spĂ©cifique au site de cas particuliers tels que les utilisations de redirecteur d’URL et les altĂ©rations de contenu de page. (Persistant)

user-agent= chaĂźne_user-agent

Configurer la chaßne user-agent utilisée pour contacter le serveur HTTP(S) comme chaßne_user-agent . (Persistant)

L’option user-agent devrait ĂȘtre prĂ©cisĂ©e par elle-mĂȘme dans la ligne de veille sans URL , pour permettre l’utilisation de point-virgules et de virgules.

pasv , passive

Utiliser le mode passif ("PASV") pour les connexions FTP.

Si le mode PASV (passif) est requis Ă  cause de l’environnement rĂ©seau cĂŽtĂ© client, configurer uscan pour qu’il utilise le mode PASV avec les "OPTIONS DE LIGNE DE COMMANDE" ou plutĂŽt avec les "VARIABLES DE CONFIGURATION DE DEVSCRIPT".

active , nopasv

Ne pas utiliser le mode PASV (passif) pour les connexions FTP.

unzipopt [ options ]

Ajouter les options supplĂ©mentaires Ă  utiliser avec la commande unzip telles que -a , -aa et -b lors de l’exĂ©cution par mk-origtargz .

dversionmangle= rĂšgles

Normaliser la derniĂšre chaĂźne de version amont trouvĂ©e dans debian/changelog pour la comparer avec la version de l’archive amont disponible. Le retrait de suffixes spĂ©cifiques Ă  Debian tels que s/\+dfsg\d*$// est habituellement rĂ©alisĂ© Ă  ce moment lĂ .

Il est Ă©galement possible d’utiliser dversionmangle=auto , ce qui est exactement la mĂȘme chose que dversionmangle=s/@DEB_EXT@//

dirversionmangle= rĂšgles

Normaliser la chaĂźne du chemin du rĂ©pertoire correspondant Ă  l’expression rationnelle dans un jeu de parenthĂšses de l’adresse http:// URL comme chaĂźne d’index pour trier par version. Ce n’est utilisĂ© que pour trier les chemins de rĂ©pertoire.

Une substitution telle que s/PRE/˜pre/; s/RC/˜rc/ peut aider.

pagemangle= rĂšgles

Normaliser la chaĂźne de page web tĂ©lĂ©chargĂ©e. (À n’utiliser qu’en cas de nĂ©cessitĂ© absolue. En gĂ©nĂ©ral, l’étiquette g est requise pour ces rĂšgles .)

Cela est pratique si vous souhaitez accĂ©der Ă  Amazon AWS ou Ă  des dĂ©pĂŽts Subversion dans lesquels <a href="..."> n’est pas utilisĂ©.

uversionmangle= rĂšgles

Normaliser les chaĂźnes de version amont candidate extraites des rĂ©fĂ©rences href dans le code source de la page web. Cela est utilisĂ© comme l’index de tri de version lors de la sĂ©lection de la derniĂšre version amont.

Une substitution telle que s/PRE/˜pre/; s/RC/˜rc/ peut aider.

versionmangle= rĂšgles

Il s’agit d’un raccourci syntaxique pour uversionmangle= rùgles , dversionmangle = rùgles

hrefdecode=percent-encoding

Convertir la chaĂźne des rĂ©fĂ©rences href de l’archive amont sĂ©lectionnĂ©e de la chaĂźne hexadĂ©cimale encodĂ©e en pourcent vers la chaĂźne dĂ©codĂ©e de l’URL normale pour les sites web embrouillĂ©s. Seul percent-encoding est disponible et est dĂ©codĂ© avec l’instruction s/%([A-Fa-f\d]{2})/chr hex $1/eg .

downloadurlmangle= rĂšgles

Convertir la chaĂźne des rĂ©fĂ©rences href de l’archive amont sĂ©lectionnĂ©e dans l’URL accessible des sites web embrouillĂ©s. L’exĂ©cution intervient aprĂšs hrefdecode .

filenamemangle= rĂšgles

GĂ©nĂ©rer le nom de fichier de l’archive amont Ă  partir de la chaĂźne des rĂ©fĂ©rences href sĂ©lectionnĂ©e si motif_correspondant peut extraire l’ <uversion> de la derniĂšre version amont Ă  partir de la chaĂźne des rĂ©fĂ©rences href sĂ©lectionnĂ©e. Autrement, gĂ©nĂ©rer le nom de fichier de l’archive amont Ă  partir de la chaĂźne de l’URL complĂšte et configurer l’ <uversion> manquant Ă  partir du nom de fichier de l’archive amont gĂ©nĂ©rĂ©.

Sans cette option, le nom de fichier de l’archive amont par dĂ©faut est gĂ©nĂ©rĂ© en prenant la derniĂšre composante de l’URL et en retirant tout ce qui est aprĂšs un "?" ou un "#".

pgpsigurlmangle= rĂšgles

GĂ©nĂ©rer la chaĂźne d’URL du fichier de signature amont candidat Ă  partir de l’URL de l’archive amont.

oversionmangle= rĂšgles

GĂ©nĂ©rer la chaĂźne de version <oversion> de l’archive source <spkg><spkg>_<oversion>.orig.tar.gz Ă  partir de <uversion> . Cela devrait ĂȘtre utilisĂ© pour ajouter un suffixe tel que +dfsg Ă  un paquet MUT.

Ici, les rĂšgles de manipulation appliquent les rĂšgles Ă  la chaĂźne pertinente. De multiples rĂšgles peuvent ĂȘtre prĂ©cisĂ©es dans une chaĂźne de rĂšgle de manipulation en crĂ©ant une chaĂźne concatĂ©nĂ©e de chaque rĂšgle de manipulation sĂ©parĂ©e par des ; (point-virgule).

Les rĂšgles de manipulation ne peuvent pas comporter de ; (point-virgule), , (virgule) ni de " (guillemet double).

Chaque rĂšgle de manipulation se comporte comme si une commande Perl " $string =˜ rĂšgle " Ă©tait exĂ©cutĂ©e. Il y a quelques particularitĂ©s notables.

‱

Une rÚgle peut seulement utiliser les opérations s , tr et y .

s/ expression_rationnelle / remplacement / options

Rechercher la correspondance du motif d’expression rationnelle et remplacer la chaĂźne cible. Les Ă©tiquettes g , i et x sont les seules disponibles. Utiliser la syntaxe $1 pour des rĂ©fĂ©rences arriĂšres (pas de syntaxe \1 ). L’exĂ©cution de code n’est pas permise (c’est-Ă -dire pas de constructions (?{}) ou (??{}) ).

y/ source / dest / ou tr/ source / dest /

Translittérer les caractÚres de la chaßne cible.

EXEMPLE D’EXÉCUTION

uscan lit la premiÚre entrée dans debian/changelog pour déterminer le nom du paquet source et la derniÚre version amont.

Par exemple, si la premiÚre entrée de debian/changelog est :

‱

titi ( 3:2.03+dfsg-4 ) unstable; urgency=low

alors, le nom du paquet source est titi et la version la plus récente du paquet Debian est 3:2.03+dfsg-4 .

La derniĂšre version amont est normalisĂ©e Ă  2.03+dfsg en retirant l’epoch et la rĂ©vision Debian.

Si la rĂšgle dversionmangle existe, la derniĂšre version amont est normalisĂ©e plus profondĂ©ment en lui appliquant cette rĂšgle. Par exemple, si la derniĂšre version amont est 2.03+dfsg indiquant que l’archive source a Ă©tĂ© rempaquetĂ©e, le suffixe +dfsg est retirĂ© par la substitution de chaĂźne s/\+dfsg\d*$// pour produire la derniĂšre version amont 2.03 (traitĂ©e avec dversionmangle) et est comparĂ©e aux versions d’archive amont candidates comme 2.03 , 2.04 , ..., qui se trouvent sur le site distant. Donc, configurer la rĂšgle ainsi :

‱

opts="dversionmangle=s/\+dfsg\d*$//"

uscan tĂ©lĂ©charge une page web Ă  partir de l’adresse http:// URL spĂ©cifiĂ©e dans debian/watch .

‱

Si la partie nom du rĂ©pertoire de l’ URL n’a pas de parenthĂšse, ( et ) , il est pris tel quel.

‱

Si la partie nom du rĂ©pertoire de l’ URL a des parenthĂšses ( et ) , alors uscan cherche de façon rĂ©cursive tous les rĂ©pertoires possibles pour trouver une page avec la nouvelle version. Si la rĂšgle dirversionmangle existe, l’index de tri gĂ©nĂ©rĂ© est utilisĂ© pour trouver la version la plus rĂ©cente. Si une version particuliĂšre est spĂ©cifiĂ©e pour le tĂ©lĂ©chargement, la chaĂźne de version correspondante a la prioritĂ© sur la version la plus rĂ©cente.

Par exemple, cette adresse http:// URL peut ĂȘtre spĂ©cifiĂ©e ainsi :

‱

http://www.example.org/@ANY_VERSION@/

Veuillez noter le / final dans l’adresse ci-dessus pour faire de @ANY_VERSION@ le rĂ©pertoire.

Si la rĂšgle pagemangle existe, la totalitĂ© de la page web tĂ©lĂ©chargĂ©e, considĂ©rĂ©e comme une chaĂźne, est normalisĂ©e en y appliquant la rĂšgle. C’est un outil trĂšs puissant qui doit ĂȘtre utilisĂ© avec prudence. Si d’autres rĂšgles de manipulation peuvent ĂȘtre utilisĂ©es pour rĂ©pondre Ă  vos objectifs, n’utilisez pas cette rĂšgle.

Des rĂ©fĂ©rences href, dĂ©finies dans l’étiquette <a href=" ... "> , sont recherchĂ©es dans la page web tĂ©lĂ©chargĂ©e pour localiser les rĂ©fĂ©rences de l’archive amont candidate. Ces rĂ©fĂ©rences de l’archive amont candidate sont sĂ©lectionnĂ©es par le motif d’expression rationnelle Perl motif-correspondant , tel que DL-(?:[\d\.]+?)/toto-(.+)\.tar\.gz pour rĂ©duire le nombre de candidates. Ce motif de sĂ©lection doit ĂȘtre bornĂ© au dĂ©but et Ă  la fin. Par exemple, les rĂ©fĂ©rences candidates peuvent ĂȘtre :

‱

DL-2.02/toto-2.02.tar.gz

‱

DL-2.03/toto-2.03.tar.gz

‱

DL-2.04/toto-2.04.tar.gz

Ici, la chaĂźne de sĂ©lection (.+) dans motif-correspondant est considĂ©rĂ©e comme la version amont candidate. S’il y a plusieurs chaĂźnes correspondantes de motifs de capture dans motif-correspondant , elles sont toutes concatĂ©nĂ©es avec un point ( . ) pour former la version amont candidate. Il convient de s’assurer d’utiliser des expressions rationnelles non capturantes telles que (?:[\d\.]+?) Ă  la place pour la partie correspondant Ă  du texte variable sans rapport avec la version.

Les versions amont candidates sont alors :

‱

2.02

‱

2.03

‱

2.04

Le nom de fichier de l’archive tĂ©lĂ©chargĂ©e est simplement fixĂ© comme le nom de fichier dans l’URL distante de la rĂ©fĂ©rence href sĂ©lectionnĂ©e.

Si la rĂšgle <uversionmangle> existe, les versions amont candidates sont normalisĂ©es en leur appliquant cette rĂšgle. (Cette rĂšgle peut ĂȘtre utilisĂ©e si le schĂ©ma de la version amont ne permet pas un tri qui identifie correctement la version la plus rĂ©cente.)

La rĂ©fĂ©rence href de l’archive amont correspondant Ă  la version amont candidate la plus rĂ©cente (traitĂ©e par uversionmangle), plus rĂ©cente que la derniĂšre version amont (traitĂ©e par dversionmangle) est sĂ©lectionnĂ©e.

Si plusieurs rĂ©fĂ©rences href d’archive amont correspondant Ă  une version unique existent avec diffĂ©rentes extensions, c’est la plus forte compression qui est choisie. (Ordre de priorité : tar.xz > tar.lzma > tar.bz2 > tar.gz .)

Si la rĂ©fĂ©rence href de l’archive amont sĂ©lectionnĂ©e est une URL relative, elle est convertie en URL absolue avec l’URL de base de la page web. Si l’étiquette <base href=" ... "> existe sur la page web, la rĂ©fĂ©rence href de l’archive amont est convertie en URL absolue en utilisant plutĂŽt l’URL de base spĂ©cifiĂ©e dans l’étiquette de base.

Si la rĂšgle downloadurlmangle existe, la rĂ©fĂ©rence href de l’archive amont sĂ©lectionnĂ©e est normalisĂ©e en lui appliquant cette rĂšgle. (Cela est utile sur certains sites avec des URL de tĂ©lĂ©chargement embrouillĂ©es.)

Si la rĂšgle filenamemangle existe, le nom de fichier d’archive tĂ©lĂ©chargĂ© est gĂ©nĂ©rĂ© en appliquant cette rĂšgle Ă  la rĂ©fĂ©rence href sĂ©lectionnĂ©e si le motif-correspondant peut extraire la derniĂšre version amont <uversion> Ă  partir de la chaĂźne de la rĂ©fĂ©rence href sĂ©lectionnĂ©e. Autrement, le nom de fichier d’archive amont est gĂ©nĂ©rĂ© Ă  partir de sa chaĂźne d’URL complĂšte et rĂšgle le <uversion> manquant Ă  partir du nom de fichier d’archive amont gĂ©nĂ©rĂ©.

En absence de rĂšgle filenamemangle , le nom de fichier d’archive amont par dĂ©faut est gĂ©nĂ©rĂ© en prenant la derniĂšre composante de l’URL et en retirant tout ce qu’il y a aprĂšs un "?" ou un "#".

uscan tĂ©lĂ©charge l’archive amont sĂ©lectionnĂ©e dans le rĂ©pertoire parent ../ . Par exemple, le fichier tĂ©lĂ©chargĂ© peut ĂȘtre :

‱

../toto-2.04.tar.gz

De façon gĂ©nĂ©rique, nous appellerons par la suite cette version 2.04 tĂ©lĂ©chargĂ©e dans l’exemple ci-dessus sous le nom de <uversion> .

Si la rĂšgle pgpsigurlmangle existe, l’URL du fichier de signature amont est gĂ©nĂ©rĂ©e en appliquant cette rĂšgle Ă  la rĂ©fĂ©rence href de l’archive amont sĂ©lectionnĂ©e (traitĂ©e par downloadurlmangle) et on tente de tĂ©lĂ©charger le fichier de signature Ă  partir de cette URL.

Si la rĂšgle pgpsigurlmangle n’existe pas, uscan prĂ©vient l’utilisateur si le fichier de signature amont correspondant est disponible Ă  partir de la mĂȘme URL, en ajoutant Ă  son nom de fichier les cinq suffixes courants asc , sig , sign , pgp et gpg . (On peut Ă©viter cet avertissement avec le rĂ©glage pgpmode=none .)

Si le fichier de signature est tĂ©lĂ©chargĂ©, l’authenticitĂ© de l’archive amont tĂ©lĂ©chargĂ©e est vĂ©rifiĂ©e par rapport au fichier de signature tĂ©lĂ©chargĂ© en utilisant le trousseau blindĂ© debian/upstream/signing-key.asc . (Voir "EXEMPLES DE FICHIER DE TROUSSEAU"). Si la signature n’est pas valable, ou si la clef ne fait pas partie du trousseau, uscan signalera une erreur.

Si la rĂšgle oversionmangle existe, la version d’archive source oversion est gĂ©nĂ©rĂ©e Ă  partir de la version amont tĂ©lĂ©chargĂ©e uversion en appliquant cette rĂšgle. Elle est utile pour ajouter un suffixe tel que +dfsg Ă  la version de tous les paquets source du paquet MUT pour lequel le mĂ©canisme de suffixe de rempaquetage ne fonctionne pas.

uscan invoque mk-origtargz pour crĂ©er l’archive source nommĂ©e correctement pour le paquet source avec .orig. (ou .orig-<component>. pour les archives secondaires) dans son nom de fichier.
cas A : empaquetage de l’archive amont telle quelle

mk-origtargz crĂ©e un lien symbolique ../titi_<oversion>.orig.tar.gz avec l’archive locale amont tĂ©lĂ©chargĂ©e. Ici, << titi >> est le nom du paquet source trouvĂ© dans debian/changelog . Le lien symbolique gĂ©nĂ©rĂ© peut ĂȘtre :

‱

../titi_2.04.orig.tar.gz -> toto-2.04.tar.gz (tel quel)

Habituellement, il n’y a pas besoin de paramĂ©trer opts="dversionmangle= ... " dans ce cas.

cas B : empaquetage de l’archive amont aprùs le retrait des fichiers
non-DFSG

mk-origtargz vĂ©rifie le motif gĂ©nĂ©rique ("glob") des noms de fichiers du paragraphe Files-Excluded dans la premiĂšre section de debian/copyright , retire les fichiers correspondants pour crĂ©er une archive amont rempaquetĂ©e. Normalement, l’archive amont rempaquetĂ©e est renommĂ©e en ../bar_<oversion><suffixe>.orig.tar.gz avec suffixe , utilisant l’option repacksuffix pour le seul paquet amont. Ici, <oversion> est mis Ă  jour en <oversion><suffixe> .

Le retrait des fichiers est requis si les fichiers ne sont pas compatibles avec DFSG. Dans ce cas, +dfsg est utilisé comme suffixe .

Alors, les options sont plutÎt ainsi combinées opts="dversionmangle=s/\+dfsg\d*$// , repacksuffix=+dfsg" .

Par exemple, l’archive amont rempaquetĂ©e peut ĂȘtre :

‱

../titi_2.04+dfsg.orig.tar.gz (rempaqueté)

uscan invoque normalement " uupdate --find --upstream-version oversion " pour le fichier de veille version=4.

Veuillez noter que l’option --find est ici utilisĂ©e dans la mesure oĂč mk-origtargz a dĂ©jĂ  Ă©tĂ© invoquĂ©e pour construire le fichier *.orig.tar.gz . uscan choisit bar Ă  partir de debian/changelog .

Il crĂ©e la nouvelle arborescence source amont sous le rĂ©pertoire ../bar-<oversion> et l’adapte Ă  Debian en exploitant le contenu du dernier paquet.

EXEMPLES DE FICHIER DE VEILLE

Lors de l’écriture du fichier de veille, vous devriez vous servir de la derniĂšre page d’annonce web de la source amont. Vous ne devriez pas, si possible, essayer de deviner la structure de l’archive amont. Voici des fichiers debian/watch typiques.

Veuillez noter que l’exĂ©cution de uscan avec -v ou -vv rĂ©vĂšle ce qui se passe prĂ©cisĂ©ment en interne.

L’existence ou l’absence d’une espace avant le \ ("back slash") final est significatif.

Certaines chaßnes de configuration plus courtes non documentées sont utilisées dans les EXEMPLES ci-dessous pour faciliter votre saisie. Elles sont intentionnelles. uscan est écrit pour accepter de telles abréviations de bon sens, mais il ne faut pas exagérer.

Site HTTP (de base)

Voici un exemple d’archive amont simple basique.

version=4
http://example.com/˜user/release/@PACKAGE@.html \
files/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@

Ou sans utiliser les chaßnes de substitution (non recommandé):
http://example.com/˜user/release/foo.html \
files/foo-([\d\.]+)\.tar\.gz

version=4

Pour le paquet source amont toto-2.0.tar.gz , ce fichier de veille télécharge et crée le fichier orig.tar Debian toto_2.0.orig.tar.gz .

Site HTTP (pgpsigurlmangle)

Voici un exemple d’archive amont simple de base avec le fichier de signature correspondant dans le mĂȘme chemin de fichier.

version=4
opts="pgpsigurlmangle=s%$%.asc%" http://example.com/release/@PACKAGE@.html \
files/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@

Pour le paquet source amont toto-2.0.tar.gz et le fichier de signature amont toto-2.0.tar.gz.asc , ce fichier de veille tĂ©lĂ©charge ces fichiers, vĂ©rifie l’authenticitĂ© avec le trousseau debian/upstream/signing-key.asc et crĂ©e le fichier orig.tar Debian toto_2.0.orig.tar.gz .

Voici un autre exemple d’archive amont simple de base avec le fichier de signature correspondant sur l’archive dĂ©compressĂ©e dans le mĂȘme chemin de fichier.

version=4
opts="pgpsigurlmangle=s%@ARCHIVE_EXT@$%.asc%,decompress" \
http://example.com/release/@PACKAGE@.html \
files/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@

Pour le paquet source amont toto-2.0.tar.gz et le fichier de signature amont toto-2.0.tar.asc , ce fichier de veille tĂ©lĂ©charge ces fichiers, vĂ©rifie l’authenticitĂ© avec le trousseau debian/upstream/signing-key.asc et crĂ©e le fichier orig.tar Debian toto_2.0.orig.tar.gz .

Site HTTP (pgpmode = next/previous)

Voici un exemple d’archive amont simple basique avec le fichier de signature correspondant dans un chemin de fichier indĂ©pendant.

version=4
opts="pgpmode=next" http://example.com/release/@PACKAGE@.html \
files/(?:\d+)/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@ debian
opts="pgpmode=previous" http://example.com/release/@PACKAGE@.html \
files/(?:\d+)/@PACKAGE@@ANY_VERSION@@SIGNATURE_EXT@ previous

La partie (?:\d+) peut ĂȘtre une valeur alĂ©atoire. Le fichier d’archive peut avoir la valeur 53 , alors que le fichier de signature peut avoir la valeur 33 .

La partie ([\d\.]+) pour le fichier de signature est soumise Ă  l’exigence stricte de correspondre Ă  cela pour l’archive amont spĂ©cifiĂ©e dans la ligne prĂ©cĂ©dente en ayant previous comme version dans la ligne de veille.

Site HTTP (flexible)

Voici un exemple pour une extrĂȘme flexibilitĂ© des extensions de l’archive amont et du fichier de signature.

version=4
opts="pgpmode=next" http://example.com/DL/ \
files/(?:\d+)/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@ debian
opts="pgpmode=previous" http://example.com/DL/ \
files/(?:\d+)/@PACKAGE@@ANY_VERSION@@SIGNATURE_EXT@ \
previous

Site HTTP (MUT de base)

Voici un exemple pour les archives amont multiples de base.

version=4
opts="pgpsigurlmangle=s%$%.sig%" \
http://example.com/release/foo.html \
files/foo-@ANY_VERSION@@ARCHIVE_EXT@ debian
opts="pgpsigurlmangle=s%$%.sig%, component=bar" \
http://example.com/release/foo.html \
files/foobar-@ANY_VERSION@@ARCHIVE_EXT@ same
opts="pgpsigurlmangle=s%$%.sig%, component=baz" \
http://example.com/release/foo.html \
files/foobaz-@ANY_VERSION@@ARCHIVE_EXT@ same

Pour le paquet source amont principal toto-2.0.tar.gz et les paquets source amont secondaires tototiti-2.0.tar.gz et tototitiz-2.0.tar.gz qui installent dans les répertoires titi/ and titiz/ , ce fichier de veille télécharge et crée le fichier Debian orig.tar , toto_2.0.orig.tar.gz , toto_2.0.orig-titi.tar.gz et toto_2.0.orig-titiz.tar.gz . Les fichiers de signature de ces archives amont sont aussi vérifiées.

Site HTTP (recherche récursive de répertoire)

Voici un exemple avec recherche rĂ©cursive de rĂ©pertoire de l’archive amont et de ses fichiers de signature publiĂ©s dans un rĂ©pertoire nommĂ© d’aprĂšs leur version.

version=4
opts="pgpsigurlmangle=s%$%.sig%, dirversionmangle=s/-PRE/˜pre/;s/-RC/˜rc/" \
http://tmrc.mit.edu/mirror/twisted/Twisted/@ANY_VERSION@/ \
Twisted-@ANY_VERSION@@ARCHIVE_EXT@

Ici, le site web devrait ĂȘtre accessible Ă  l’URL suivante :

http://tmrc.mit.edu/mirror/twisted/Twisted/

Ici, l’option dirversionmangle est utilisĂ©e pour normaliser l’ordre de tri des noms de rĂ©pertoire.

Site HTTP (raccourci alternatif)

Pour le site HTTP simple oĂč il est possible de voir directement les noms de fichiers de l’archive, le fichier de veille normal :

version=4
opts="pgpsigurlmangle=s%$%.sig%" \
http://www.cpan.org/modules/by-module/Text/ \
Text-CSV_XS-@ANY_VERSION@@ARCHIVE_EXT@

peut ĂȘtre réécrit dans une forme raccourcie alternative avec une seule chaĂźne englobant l’URL et le nom de fichier :

version=4
opts="pgpsigurlmangle=s%$%.sig%" \
http://www.cpan.org/modules/by-module/Text/Text-CSV_XS-@ANY_VERSION@@ARCHIVE_EXT@

Dans version=4, les espaces blancs initiaux sont retirĂ©s. Donc, cette forme raccourcie alternative peut aussi ĂȘtre Ă©crite ainsi :

version=4
opts="pgpsigurlmangle=s%$%.sig%" \
http://www.cpan.org/modules/by-module/Text/\
Text-CSV_XS-@ANY_VERSION@@ARCHIVE_EXT@

Veuillez noter la lĂ©gĂšre diffĂ©rence d’une espace avant le \ final entre le premier et le dernier exemple.

Site HTTP (version exotique)

Pour un site qui possĂšde des numĂ©ros de version exotiques, les groupes entre parenthĂšses devront ĂȘtre joints par des points ( . ) pour crĂ©er un numĂ©ro de version sain.

version=4
http://www.site.com/pub/foobar/foobar_v(\d+)_(\d+)@ARCHIVE_EXT@

Site HTTP (DFSG)

La partie amont du numĂ©ro de version Debian peut ĂȘtre modifiĂ©e pour indiquer que le paquet source a Ă©tĂ© rempaquetĂ© pour retirer les fichiers non-DFSG :

version=4
opts="dversionmangle=s/\+dfsg\d*$//,repacksuffix=+dfsg" \
http://some.site.org/some/path/foobar-@ANY_VERSION@@ARCHIVE_EXT@

Voir "EXEMPLES DE FICHIER DE COPYRIGHT".

Site HTTP (filenamemangle)

Le nom de fichier de l’archive amont est dĂ©couvert en prenant le dernier composant de l’URL et en retirant tout ce qui se trouve aprĂšs un "?" ou un "#".

Si cela ne vous convient pas, utiliser filenamemangle . Par exemple, <A href="http://toto.titi.org/dl/?path=&dl=foo-0.1.1.tar.gz"> peut ĂȘtre traitĂ© ainsi :

version=4
opts=filenamemangle=s/.*=(.*)/$1/ \
http://foo.bar.org/dl/\?path=&dl=foo-@ANY_VERSION@@ARCHIVE_EXT@

<A href="http://toto.titi.org/dl/?path=&dl_version=0.1.1"> peut ĂȘtre gĂ©rĂ© comme ceci :

version=4
opts=filenamemangle=s/.*=(.*)/foo-$1\.tar\.gz/ \
http://foo.bar.org/dl/\?path=&dl_version=@ANY_VERSION@

Si la chaĂźne de rĂ©fĂ©rence href n’a pas de version utilisant <I>motif-correspondant>, la version peut ĂȘtre obtenue Ă  partir de l’URL complĂšte avec filenamemangle .

version=4
opts=filenamemangle=s&.*/dl/(.*)/foo\.tar\.gz&foo-$1\.tar\.gz& \
http://foo.bar.org/dl/@ANY_VERSION@/ foo.tar.gz

Site HTTP (downloadurlmangle)

L’option downloadurlmangle peut ĂȘtre utilisĂ©e pour modifier l’URL du fichier Ă  tĂ©lĂ©charger. Cela ne peut ĂȘtre utilisĂ© qu’avec des URL http:// et 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 :

version=4
opts=downloadurlmangle=s/prdownload/download/ \
http://developer.berlios.de/project/showfiles.php?group_id=2051 \
http://prdownload.berlios.de/softdevice/vdr-softdevice-@ANY_VERSION@@ARCHIVE_EXT@

Site HTTP (oversionmangle, MUT)

L’option oversionmangle peut ĂȘtre utilisĂ©e pour manipuler la version de l’archive source ( .orig.tar.gz et .orig-bar.tar.gz ). Par exemple, +dfsg peut ĂȘtre ajoutĂ© Ă  la version amont comme ceci :

version=4
opts=oversionmangle=s/(.*)/$1+dfsg/ \
http://example.com/˜user/release/foo.html \
files/foo-@ANY_VERSION@@ARCHIVE_EXT@ debian
opts="component=bar" \
http://example.com/˜user/release/foo.html \
files/bar-@ANY_VERSION@@ARCHIVE_EXT@ same

Voir "EXEMPLES DE FICHIER DE COPYRIGHT".

Site HTTP (pagemangle)

L’option pagemangle peut ĂȘtre utilisĂ©e pour modifier la page web tĂ©lĂ©chargĂ©e avant d’appliquer d’autres rĂšgles. Une page web non standard sans entrĂ©es <a href=" << ... >> "> correctes peut ĂȘtre convertie. Par exemple, si toto.html utilise <un faux site=" ... "> , la conversion vers un format de page standard peut ĂȘtre rĂ©alisĂ©e avec :

version=4
opts=pagemangle="s/<a\s+bogus=/<a href=/g" \
http://example.com/release/foo.html \
files/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@

Veuillez notez ici l’utilisation de g pour remplacer toutes les occurrences.

Si toto.html utilise <Key> ... </Key> , la conversion vers un format de page standard peut ĂȘtre rĂ©alisĂ©e avec :

version=4
opts="pagemangle=s%<Key>([ˆ<]*)</Key>%<Key><a href="$1">$1</a></Key>%g" \
http://example.com/release/foo.html \
(?:.*)/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@

Site FTP (de base) :

version=4
ftp://ftp.tex.ac.uk/tex-archive/web/c_cpp/cweb/cweb-@ANY_VERSION@@ARCHIVE_EXT@

Site FTP (expressions rationnelles) :

version=4
ftp://ftp.worldforge.org/pub/worldforge/libs/\
Atlas-C++/transitional/Atlas-C\+\+-@ANY_VERSION@@ARCHIVE_EXT@

Veuillez noter que cette URL est connectĂ©e pour ĂȘtre ... libs/Atlas-C++/ ... . Pour les ++ , le premier dans le chemin du rĂ©pertoire est verbatim, tandis que celui qui est dans le nom de fichier est protĂ©gĂ© par \ .

Site FTP (version exotique)

Voici une autre maniĂšre pour des sites ayant des numĂ©ros de version bizarres, en effectuant une modification cette fois. (Remarquez 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 numĂ©ros de versions contenus dans les chemins.)

version=4
opts="uversionmangle=s/ˆ/0.0./" \
ftp://ftp.ibiblio.org/pub/Linux/ALPHA/wine/\
development/Wine-@ANY_VERSION@@ARCHIVE_EXT@

sf.net

Pour les projets hĂ©bergĂ©s sur SourceForge, qa.debian.org fournit un redirecteur qui permet une forme plus simple d’URL. Le format ci-dessous sera automatiquement réécrit pour utiliser le redirecteur avec le fichier de veille :

version=4
https://sf.net/<project>/ <tar-name>-@ANY_VERSION@@ARCHIVE_EXT@

Pour audacity , configurer le fichier de veille ainsi :

version=4
https://sf.net/audacity/ audacity-minsrc-@ANY_VERSION@@ARCHIVE_EXT@

Veuillez noter, qu’il est encore possible d’utiliser les fonctionnalitĂ©s normales de uscan pour configurer un fichier de veille pour ce site sans utiliser le redirecteur.

version=4
opts="uversionmangle=s/-pre/˜pre/, \
filenamemangle=s%(?:.*)audacity-minsrc-(.+)\.tar\.xz/download%\
audacity-$1.tar.xz%" \
http://sourceforge.net/projects/audacity/files/audacity/@ANY_VERSION@/ \
(?:.*)audacity-minsrc-@ANY_VERSION@@ARCHIVE_EXT@/download

Ici, % est utilisé comme séparateur à la place du / standard.

github.com

Pour les projets hĂ©bergĂ©s par GitHub, il est possible d’utiliser l’API des tags ou des publications. Si le projet amont a correctement nommĂ© ses paquets sur sa page de publications, il est possible de chercher l’URL de tĂ©lĂ©chargement (clef API browser_download_url ) :

version=4
opts=\
filenamemangle=s%.*/@ANY_VERSION@%@PACKAGE@-$1.tar.gz%,\
downloadurlmangle=s%(api.github.com/repos/[ˆ/]+/[ˆ/]+)/git/refs/%$1/tarball/refs/%g,\
searchmode=plain \
https://api.github.com/repos/<utilisateur>/<projet>/git/matching-refs/tags/ \
https://api.github.com/repos/[ˆ/]+/[ˆ/]+/git/refs/tags/@ANY_VERSION@

Il est aussi possible de filtrer les tags par préfixe. Par exemple pour obtenir seulement les tags commençant par "v1" :

version=4
opts=\
filenamemangle=s%.*/@ANY_VERSION@%@PACKAGE@-$1.tar.gz%,\
downloadurlmangle=s%(api.github.com/repos/[ˆ/]+/[ˆ/]+)/git/refs/%$1/tarball/refs/%g,\
searchmode=plain \
https://api.github.com/repos/<utilisateur>/<projet>/git/matching-refs/tags/v1 \
https://api.github.com/repos/[ˆ/]+/[ˆ/]+/git/refs/tags/@ANY_VERSION@

Alternatives pour publications uniquement (si le projet amont ne supprime pas les tags aprÚs la publication) :

version=4
opts=\
filenamemangle=s%.*/@ANY_VERSION@%@PACKAGE@-$1.tar.gz%,\
downloadurlmangle=s%api.github.com/repos/([ˆ/]+/[ˆ/]+)/git/refs/tags/@ANY_VERSION@%github.com/$1/archive/refs/tags/$2.tar.gz%g,\
searchmode=plain \
https://api.github.com/repos/<utilisateur>/<projet>/git/matching-refs/tags/ \
https://api.github.com/repos/[ˆ/]+/[ˆ/]+/git/refs/tags/@ANY_VERSION@

Dans le cas d’une version qui n’utilise pas de tag ou un tag supprimé :

version=4
opts="filenamemangle=s%.*/@ANY_VERSION@%@PACKAGE@-$1.tar.gz%,searchmode=plain" \
https://api.github.com/repos/<user>/<project>/releases?per_page=100 \
https://api.github.com/repos/<user>/<project>/tarball/@ANY_VERSION@

S’il y a des archives alpha/beta, il est conseillĂ© utiliser l’option uversionmangle : uversionmangle=s/(a|alpha|b|beta|c|dev|pre|rc)/˜$1/

Si le projet amont oublie d’étiqueter une version publiĂ©e, par exemple ici la version 1.2.3 correspondant Ă  la commission "0123456789abcdf01234567890abcef012345678", vous pouvez la tĂ©lĂ©charger en utilisant la combinaison suivante d’options oversionmangle , filenamemangle et downloadurlmangle :

version=4
opts=\
downloadurlmangle=s%(api.github.com/repos/[ˆ/]+/[ˆ/]+)/git/refs/.*%$1/tarball/0123456789abcdf01234567890abcef012345678%g,\
oversionmangle=s/.*/1.2.3˜git/g,\
filenamemangle=s%.*%1.2.3˜git.tar.gz%,\
searchmode=plain \
https://api.github.com/repos/ImageMagick/ImageMagick/git/matching-refs/tags/ \
https://api.github.com/repos/[ˆ/]+/[ˆ/]+/git/refs/tags/@ANY_VERSION@

Dans ce cas ne pas oublier, aprÚs avoir exécuté gbp import-orig --uscan , de retirer ces changements du fichier debian/watch .

PyPI

Pour les projets hĂ©bergĂ©s sur PyPI, pypi.debian.net fournit un redirecteur qui permet une forme plus simple d’URL. Le format ci-dessous sera automatiquement réécrit pour utiliser le redirecteur avec le fichier de veille :

version=4
https://pypi.python.org/packages/source/<initial>/<project>/ \
<tar-name>-@ANY_VERSION@@ARCHIVE_EXT@

Pour cfn-sphere , configurer le fichier ainsi :

version=4
https://pypi.python.org/packages/source/c/cfn-sphere/ \
cfn-sphere-@ANY_VERSION@@ARCHIVE_EXT@

Veuillez noter, qu’il est encore possible d’utiliser les fonctionnalitĂ©s normales de uscan pour configurer un fichier de veille pour ce site sans utiliser le redirecteur.

version=4
opts="pgpmode=none" \
https://pypi.python.org/pypi/cfn-sphere/ \
https://pypi.python.org/packages/.*/.*/.*/\
cfn-sphere-@ANY_VERSION@@ARCHIVE_EXT@#.*

code.google.com

Les sites habituellement hĂ©bergĂ©s sur le service Google Code devraient avoir migrĂ© ailleurs (github ?). Veuillez rechercher les sites amont les plus rĂ©cents s’ils sont disponibles.

npmjs.org (modules Node)

Les modules npmjs.org sont publiés au format JSON. Voici un moyen de les lire :

version=4
opts="searchmode=plain" \
https://registry.npmjs.org/aes-js \
https://registry.npmjs.org/aes-js/-/aes-js-@ANY_VERSION@@ARCHIVE_EXT@

paquet groupé

Certains modules Node sont découpés en de multiples petits paquets. Voici un moyen de les grouper :

version=4
opts="searchmode=plain,pgpmode=none" \
https://registry.npmjs.org/mongodb \
https://registry.npmjs.org/mongodb/-/mongodb-@ANY_VERSION@@ARCHIVE_EXT@ group
opts="searchmode=plain,pgpmode=none,component=bson" \
https://registry.npmjs.org/bson \
https://registry.npmjs.org/bson/-/bson-@ANY_VERSION@@ARCHIVE_EXT@ group
opts="searchmode=plain,pgpmode=none,component=mongodb-core" \
https://registry.npmjs.org/mongodb-core \
https://registry.npmjs.org/mongodb-core/-/mongodb-core-@ANY_VERSION@@ARCHIVE_EXT@ group
opts="searchmode=plain,pgpmode=none,component=requireoptional" \
https://registry.npmjs.org/require_optional \
https://registry.npmjs.org/require_optional/-/require_optional-@ANY_VERSION@@ARCHIVE_EXT@ group

La version du paquet est alors la concatĂ©nation des versions amont sĂ©parĂ©es par "+˜".

Pour Ă©viter d’avoir un trop long numĂ©ro de version, la mĂ©thode "checksum" (somme de contrĂŽle) peut ĂȘtre utilisĂ©e. Dans ce cas la principale source doit ĂȘtre dĂ©clarĂ©e comme "group" :

version=4
opts="searchmode=plain,pgpmode=none" \
https://registry.npmjs.org/mongodb \
https://registry.npmjs.org/mongodb/-/mongodb-@ANY_VERSION@@ARCHIVE_EXT@ group
opts="searchmode=plain,pgpmode=none,component=bson" \
https://registry.npmjs.org/bson \
https://registry.npmjs.org/bson/-/bson-@ANY_VERSION@@ARCHIVE_EXT@ checksum
opts="searchmode=plain,pgpmode=none,component=mongodb-core" \
https://registry.npmjs.org/mongodb-core \
https://registry.npmjs.org/mongodb-core/-/mongodb-core-@ANY_VERSION@@ARCHIVE_EXT@ checksum
opts="searchmode=plain,pgpmode=none,component=requireoptional" \
https://registry.npmjs.org/require_optional \
https://registry.npmjs.org/require_optional/-/require_optional-@ANY_VERSION@@ARCHIVE_EXT@ checksum

La somme de contrĂŽle est composĂ©e des sommes sĂ©parĂ©es de chaque nombre composant la version des composants et prĂ©fixĂ©e par ˜cs (abrĂ©viation de "checksum"). Voici un exemple avec 3 composants dont les versions respectives sont : "1.2.4", "2.0.1" et "10.0", et la version de l’archive principale est "2.0.6" :

Principale : 2.0.6
Comp1 : 1 . 2 . 4
Comp2 : 2 . 0 . 1
Comp3 : 10 . 0
=================================
Addition : 1+2+10 . 2+0+0 . 4+1
Résultat : 13 . 2 . 5
=================================
Version finale : 2.0.6+˜cs13.2.5

uscan affichera Ă©galement la chaĂźne de version originale avant encodage en somme de contrĂŽle, ce qui peut ĂȘtre utilisĂ© par exemple dans une entrĂ©e de debian/changelog pour suivre facilement les changements :

2.0.6+˜1.2.4+˜2.0.1+˜10.0

Note : cette fonctionnalitĂ© n’accepte actuellement que les versions composĂ©es exclusivement de chiffres et de points (".").

accÚs direct au dépÎt git (étiquettes)

Si l’équipe amont ne publie son code que dans un dĂ©pĂŽt git et que son code n’a pas d’interface web pour obtenir l’archive publiĂ©e, il est possible d’utiliser uscan avec les Ă©tiquettes du dĂ©pĂŽt git pour suivre et empaqueter la nouvelle publication amont.

version=4
opts="mode=git, gitmode=full, pgpmode=none" \
http://git.ao2.it/tweeper.git \
refs/tags/v@ANY_VERSION@

Veuillez noter que " git ls-remote " est utilisé pour obtenir les références des étiquettes.

Si l’étiquette v20.5 est l’étiquette la plus rĂ©cente, l’exemple ci-dessus tĂ©lĂ©charge spkg -20.5.tar.xz aprĂšs avoir fait un clone complet du dĂ©pĂŽt git nĂ©cessaire au serveur git simple.

Si les tags sont signés, utiliser pgpmode=gittag pour les vérifier.

accÚs direct au dépÎt git (HEAD)

Si l’équipe amont ne publie son code que dans un dĂ©pĂŽt git et que son code n’a pas d’interface web ni les Ă©tiquettes pour obtenir l’archive publiĂ©e, il est possible d’utiliser uscan avec le HEAD du dĂ©pĂŽt git pour suivre et empaqueter la nouvelle publication amont avec une chaĂźne de version gĂ©nĂ©rĂ©e automatiquement.

version=4
opts="mode=git, pgpmode=none" \
https://github.com/Debian/dh-make-golang \
HEAD

Veuillez noter qu’une copie superficielle locale du dĂ©pĂŽt git est rĂ©alisĂ©e avec la commande " git clone --bare --depth=1 ..." normalement dans le rĂ©pertoire cible. uscan gĂ©nĂšre la nouvelle version amont avec " git log --date=%Y%m%d --pretty=0.0˜git%cd.%h " sur cette copie locale du dĂ©pĂŽt, comme comportement par dĂ©faut.

La crĂ©ation de la chaĂźne de version amont peut ĂȘtre ajustĂ©e Ă  votre goĂ»t en ajoutant les options pretty et date aux arguments de opts .

accÚs direct au dépÎt git (avec sous-modules)

Si l’équipe amont ne publie son code que dans un dĂ©pĂŽt git incluant des sous-modules, vous pouvez utiliser uscan avec les Ă©tiquettes ou la tĂȘte (HEAD) du dĂ©pĂŽt git pour suivre et empaqueter la nouvelle publication amont.

Utiliser gitmodules pour cloner tous les sous-modules :

version=4
opts="mode=git, gitmode=shallow, gitmodules" \
https://github.com/namespace/project [refs/tags/v@ANY_VERSION@|HEAD]

Pour cloner des sous-modules sĂ©lectionnĂ©s (et en exclure d’autres), utiliser gitmodules avec une liste en sĂ©parant les Ă©lĂ©ments par des points-virgules :

version=4
opts="mode=git, gitmode=shallow, gitmodules=m4;doc/common" \
https://github.com/namespace/project [refs/tags/v@ANY_VERSION@|HEAD]

accÚs direct au dépÎt Subversion (étiquettes)

Si l’équipe amont ne publie son code que dans un dĂ©pĂŽt Subversion et que son code n’a pas d’interface web pour obtenir l’archive publiĂ©e, il est possible d’utiliser uscan avec les Ă©tiquettes du dĂ©pĂŽt Subversion pour suivre et empaqueter la nouvelle publication amont.

version=4
opts="mode=svn, pgpmode=none" \
svn://svn.code.sf.net/p/jmol/code/tags/ \
@ANY_VERSION@\/

accÚs direct au dépÎt Subversion (HEAD)

Si l’équipe amont ne publie son code que dans un dĂ©pĂŽt Subversion et que son code n’a pas d’interface web ni les Ă©tiquettes pour obtenir l’archive publiĂ©e, il est possible d’utiliser uscan pour obtenir les derniĂšres sources d’une sous-arborescence avec une chaĂźne de version gĂ©nĂ©rĂ©e automatiquement.

version=4
opts="mode=svn, pgpmode=none" \
svn://svn.code.sf.net/p/jmol/code/trunk/ \
HEAD

Par dĂ©faut, uscan gĂ©nĂšre la nouvelle version en ajoutant "0.0˜svn" au numĂ©ro de rĂ©vision. Ce peut ĂȘtre changĂ© en utilisant uversionmangle .

Fossil

Pour les projets basĂ©s sur Fossil, l’URL de l’archive peut ĂȘtre dĂ©duite de la page listant les Ă©tiquettes.

version=4
opts=" \
searchmode=plain, \
filenamemangle=s/timeline\?t=(@ANY_VERSION@)/@PACKAGE@-$1.tar.gz/, \
downloadurlmangle=s#/timeline\?t=(@ANY_VERSION@)#/tarball/Grammalecte.tar.gz?r=$1#" \
http://grammalecte.net:8080/taglist \
/timeline\?t=@ANY_VERSION@

EXEMPLES DE FICHIER DE COPYRIGHT

Voici un exemple de fichier debian/copyright qui dĂ©clenche le rempaquetage automatique de l’archive amont en <spkg>_<oversion>.orig.tar.gz (dans debian/copyright , les alinĂ©as Files-Excluded et Files-Excluded- component font partie du premier paragraphe et il existe un ligne vide avant les paragraphes suivants qui contiennent Files et d’autres alinĂ©as.) :

Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Files-Excluded: exclude-this
exclude-dir
*/exclude-dir
.*
*/js/jquery.js
Files: *
Copyright: ...
...

Voici un autre exemple de fichier debian/copyright qui dĂ©clenche le rempaquetage automatique d’archives amont multiples en <spkg>_<oversion>.orig.tar.gz et <spkg>_<oversion>.orig-bar.tar.gz :

Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Files-Excluded: exclude-this
exclude-dir
*/exclude-dir
.*
*/js/jquery.js
Files-Excluded-bar: exclude-this
exclude-dir
*/exclude-dir
.*
*/js/jquery.js
Files: *
Copyright: ...
...

Voir mk-origtargz (1).

EXEMPLES DE FICHIER DE TROUSSEAU

Supposons que la " clef de test d’uscan (non secrĂšte) <none@debian.org> " amont signe son paquet avec une clef secrĂšte OpenPGP et publie la clef publique OpenPGP correspondante. Cette clef publique OpenPGP peut ĂȘtre identifiĂ©e de trois façons diffĂ©rentes avec sa forme hexadĂ©cimale.

‱

L’empreinte sous la forme des 20 octets de donnĂ©es calculĂ©s Ă  partir de la clef publique OpenPGP. Par exemple " CF21 8F0E 7EAB F584 B7E2 0402 C77E 2D68 7254 3FAF

‱

L’identificateur long " long keyid") sous la forme des 8 derniers octets de donnĂ©es de l’empreinte. Par exemple, " C77E2D6872543FAF "

‱

L’identificateur court ("short keyid") sous la forme des 4 derniers octets de donnĂ©es de l’empreinte. Par exemple, " 72543FAF "

Compte tenu de l’existence des attaques par collisions sur les identificateurs courts, il est recommandĂ© d’utiliser l’identificateur long pour recevoir des clefs Ă  partir des serveurs de clefs publiques. Vous devez vĂ©rifier la clef OpenPGP tĂ©lĂ©chargĂ©e en utilisant la valeur de son empreinte complĂšte dont vous savez qu’elle est sĂ»re.

Le fichier de trousseau blindĂ© debian/upstream/signing-key.asc peut ĂȘtre créé en utilisant la commande gpg comme suit.

$ gpg --recv-keys "C77E2D6872543FAF"
...
$ gpg --finger "C77E2D6872543FAF"
pub 4096R/72543FAF 2015-09-02
Key fingerprint = CF21 8F0E 7EAB F584 B7E2 0402 C77E 2D68 7254 3FAF
uid uscan test key (no secret) <none@debian.org>
sub 4096R/52C6ED39 2015-09-02
$ cd chemin/vers/<upkg>-<uversion>
$ mkdir -p debian/upstream
$ gpg --export --export-options export-minimal --armor \
'CF21 8F0E 7EAB F584 B7E2 0402 C77E 2D68 7254 3FAF' \
>debian/upstream/signing-key.asc

Les fichiers de trousseau binaires, debian/upstream/signing-key.pgp et debian/upstream-signing-key.pgp , sont encore gérés, mais ils sont obsolÚtes.

Si un groupe de dĂ©veloppeurs signe le paquet, il faut la liste des empreintes de chacun d’entre eux dans le paramĂštre pour gpg --export ... afin que le trousseau contienne toutes leurs clefs OpenPGP.

Parfois, on se demande qui a créé le fichier de signature. Il est possible d’obtenir l’identificateur de la clef publique utilisĂ© pour crĂ©er le fichier de signature sĂ©parĂ© toto-2.0.tar.gz.asc en exĂ©cutant gpg ainsi :

$ gpg -vv toto-2.0.tar.gz.asc
gpg: armor: BEGIN PGP SIGNATURE
gpg: armor header: Version: GnuPG v1
:signature packet: algo 1, keyid C77E2D6872543FAF
version 4, created 1445177469, md5len 0, sigclass 0x00
digest algo 2, begin of digest 7a c7
hashed subpkt 2 len 4 (sig created 2015-10-18)
subpkt 16 len 8 (issuer key ID C77E2D6872543FAF)
data: [4091 bits]
gpg: assuming signed data in `toto-2.0.tar.gz'
gpg: Signature made Sun 18 Oct 2015 11:11:09 PM JST using RSA key ID 72543FAF
...

OPTIONS DE LIGNE DE COMMANDE

Pour un usage basique d’ uscan , la configuration de ces options n’est pas nĂ©cessaire.
--conffile
, --conf-file

Ajoute ou remplace les fichiers de configuration par dĂ©faut ("/etc/devscripts.conf" and "˜/.devscripts"). L’option ne peut ĂȘtre utilisĂ©e qu’en premiĂšre position de la ligne de commande.
remplacer :

uscan --conf-file test.conf --verbose

ajouter :

uscan --conf-file +test.conf --verbose

Si l’un des --conf-file ne contient pas de "+", les fichiers de configuration par dĂ©faut sont ignorĂ©s.

--no-conf , --noconf

Ne lire aucun fichier de configuration. L’option ne peut ĂȘtre utilisĂ©e qu’en premiĂšre position de la ligne de commande.

--no-verbose

Ne pas rapporter d’informations verbeuses. (Par dĂ©faut).

--verbose , -v

Rapporter des informations verbeuses.

--debug , -vv

Rapporter des informations verbeuses et les valeurs de certains états internes.

--extra-debug , -vvv

Rapporter des informations verbeuses y compris les pages web tĂ©lĂ©chargĂ©es traitĂ©es sur la sortie d’erreur standard pour dĂ©bogage.

--dehs

Envoyer la sortie de style DEHS (type XML) sur la sortie standard, tout en envoyant toutes les autres sorties de uscan sur la sortie d’erreur standard.

--no-dehs

Utiliser seulement le format de sortie traditionnel de uscan. (Par défaut)

--download , -d

Télécharger la nouvelle version amont. (Par défaut)

--force-download , -dd

TĂ©lĂ©charger la nouvelle version amont mĂȘme si elle est Ă  jour (peut ne pas Ă©craser les fichiers locaux).

--overwrite-download , -ddd

TĂ©lĂ©charger le fichier amont mĂȘme si le paquet est Ă  jour (peut Ă©craser les fichiers locaux).

--no-download , --nodownload

Ne pas tĂ©lĂ©charger ni rapporter d’information.

Des archives prĂ©cĂ©demment tĂ©lĂ©chargĂ©es peuvent ĂȘtre utilisĂ©es.

Passage du comportement par défaut à --skip-signature .

--signature

Télécharger la signature. (Par défaut)

--no-signature

Ne pas télécharger la signature, mais vérifier si elle a déjà été téléchargée.

-skip-signature

Ne pas s’occuper de tĂ©lĂ©charger ni de vĂ©rifier la signature.

--safe , --report

Éviter l’exĂ©cution de scripts non sĂ©curisĂ©s en sautant Ă  la fois le rempaquetage du paquet tĂ©lĂ©chargĂ© et la mise Ă  jour de l’arborescence de la nouvelle source.

Passage du comportement par défaut à --no-download et --skip-signature .

Quand l’objectif de l’exĂ©cution de uscan est de recueillir l’état du paquet amont sous un environnement conscient de la sĂ©curitĂ©, veuillez vous assurer d’utiliser cette option.

--report-status

Équivaut à utiliser l’option --verbose --safe .

--download-version version

Indiquer la version Ă  laquelle la version amont doit correspondre pour ĂȘtre prise en compte, plutĂŽt qu’utiliser celle avec le numĂ©ro de version le plus important (fonctionnalitĂ© optimale).

--download-debversion version

Préciser la version du paquet Debian dont il faut télécharger la version amont correspondante. Les rÚgles dversionmangle et uversionmangle sont prises en compte (fonctionnalité au meilleur effort).

--download-current-version

Télécharger la version actuelle du paquet. (fonctionnalité optimale)

--check-dirname-level N

Veuillez consulter la section "Vérification du nom du répertoire" ci-dessus pour une explication de cette option.

--check-dirname-regex regex

Veuillez consulter la section "Vérification du nom du répertoire" ci-dessus pour une explication de cette option.

--destdir chemin Normalement, uscan change son répertoire courant
interne pour le rĂ©pertoire source du paquet oĂč le rĂ©pertoire debian/
est situĂ©. Ensuite, le rĂ©pertoire de destination de l’archive
téléchargée et des autres fichiers est défini sur le répertoire parent
../
à partir de ce répertoire courant interne.

Le rĂ©pertoire de destination par dĂ©faut peut ĂȘtre remplacĂ© en dĂ©finissant l’option --destdir vers un chemin particulier. Si ce chemin est un chemin relatif, le rĂ©pertoire de destination est dĂ©terminĂ© relativement au rĂ©pertoire courant interne d’exĂ©cution d’ uscan . Si ce chemin est un chemin absolu, le rĂ©pertoire de destination est fixĂ© Ă  chemin indĂ©pendamment du rĂ©pertoire courant interne d’exĂ©cution d’ uscan .

Ce qui prĂ©cĂšde est vrai non seulement pour l’exĂ©cution unique d’ uscan dans une arborescence de sources unique, mais aussi pour l’exĂ©cution par uscan d’une recherche avancĂ©e dans des sous-rĂ©pertoires contenant plusieurs arborescences de sources.

Une exception existe quand les options --watchfile et --package sont utilisĂ©es ensemble. Dans ce cas, le rĂ©pertoire courant interne d’exĂ©cution d’ uscan et le rĂ©pertoire de destination par dĂ©faut sont dĂ©finis au rĂ©pertoire courant . oĂč uscan est lancĂ©. Le rĂ©pertoire de destination par dĂ©faut peut ĂȘtre remplacĂ© en dĂ©finissant aussi l’option --destdir .

--package paquet

Indiquer le nom du paquet Ă  contrĂŽler plutĂŽt qu’examiner debian/changelog ; cela nĂ©cessite 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 configure automatiquement --no-download et --skip-signature ; elle est probablement la plus utile en conjonction avec le systĂšme DEHS (et --dehs ).

--upstream-version version-amont

Indiquer la version amont actuelle plutĂŽt qu’examiner le fichier debian/watch ou le journal des modifications de Debian pour le dĂ©terminer. C’est ignorĂ© si un balayage de rĂ©pertoire est fait et que plus d’un fichier debian/watch est trouvĂ©.

--vcs-export-uncompressed

Supprimer la compression d’archives exportĂ©es depuis un systĂšme de contrĂŽle de versions (Git ou Subversion). Cela occupe plus d’espace, mais permet de gagner du temps si mk-origtargz doit rĂ©empaqueter l’archive pour exclure des fichiers. Force le rĂ©empaquetage de toutes les archives exportĂ©es.

--watchfile watchfile

Indiquer le fichier watch plutĂŽt que 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).

Une exception existe quand les options --watchfile et --package sont utilisĂ©es ensemble. uscan peut ĂȘtre appelĂ© Ă  partir de n’importe quel rĂ©pertoire et le rĂ©pertoire courant interne d’exĂ©cution d’ uscan et le rĂ©pertoire de destination par dĂ©faut sont dĂ©finis au rĂ©pertoire courant . oĂč uscan est lancĂ©.

Vous trouverez plus d’informations dans l’explication de --destdir .

--bare

DĂ©sactiver tout le code "special code" spĂ©cifique au site pour rĂ©aliser les redirections d’URL et les altĂ©rations de contenu de page.

--http-header

Ajoute l’en-tĂȘte spĂ©cifiĂ© dans les requĂȘtes HTTP correspondant Ă  l’url. Cette option peut ĂȘtre multivaluĂ©e, les valeurs doivent ĂȘtre de la forme "baseUrl@NomEnTĂȘte=valeur". Exemple :

uscan --http-header https://example.org@My-Token=azertyuiop

Sécurité :
L’URL baseUrl doit exactement correspondre à l’URL de base avant
"/". Exemples :

| valeur --http-header | Bonne pour | Inutilisée |
+------------------------------------+-----------------------------+------------+
| https://example.org.com@Hdr=Value | https://example.org.com/... | |
| https://example.org.com/@Hdr=Value | | X |
| https://e.com:1879@Hdr=Value | https://e.com:1879/... | |
| https://e.com:1879/dir@Hdr=Value | https://e.com:1879/dir/... | |
| https://e.com:1879/dir/@Hdr=Value | | X |

Il est vivement recommandé de ne pas utiliser cette fonctionnalité
pour passer un jeton secret via une connexion non chiffrée
(http://)

On peut utiliser la variable "USCAN_HTTP_HEADER" (dans
"˜/.devscripts") pour masquer les jetons secrets des scripts

--no-exclusion

Ne pas exclure automatiquement les fichiers mentionnés dans le champ Files-Excluded de debian/copyright .

--pasv

Forcer le mode passif ("PASV") pour les connexions FTP.

--no-pasv

Ne pas utiliser le mode passif (PASV) pour les connexions FTP.

--no-symlink

Ne pas renommer ni rempaqueter l’archive amont.

--timeout N

DĂ©finir le temps d’attente Ă  N secondes (20 secondes par dĂ©faut).

--user-agent , --useragent

Utiliser un champ "user agent" différent de celui par défaut.

--help

Afficher un bref message d’aide.

--version

Afficher les informations sur la version.

uscan accepte aussi les options suivantes et les passe Ă  mk-origtargz :
--symlink

Faire des fichiers rĂ©sultants orig.tar.gz (avec l’extension appropriĂ©e) des liens symboliques vers les fichiers tĂ©lĂ©chargĂ©s (c’est le comportement par dĂ©faut).

--copy

Au lieu de créer des liens symboliques comme décrit précédemment, copier les fichiers téléchargés.

--rename

Au lieu de créer des liens symboliques comme décrit précédemment, renommer les fichiers téléchargés.

--repack

AprÚs avoir téléchargé une archive lzma tar, xz tar, bzip tar, gz tar, lz tar, zip, jar, xpi, zstd, la réempaqueter à la compression spécifiée (voir --compression ).

Le paquet unzip doit ĂȘtre installĂ© pour rĂ©empaqueter les archives zip, jar et xpi, le paquet xz-utils pour les archives tar compressĂ©es avec lzma ou xz, le paquet zstd pour les archives zstd et le paquet lzip pour les archives lz tar.

--compression [ gzip | bzip2 | lzma | xz ]

Au cas oĂč les sources amont sont rempaquetĂ©s (soit parce que l’option --repack est donnĂ©e, soit parce que debian/copyright contient le champ Files-Excluded ), la mĂ©thode de compression peut ĂȘtre contrĂŽlĂ©e avec le paramĂštre comp . La mĂ©thode par dĂ©faut est gzip pour les archives normales, et xz pour les archives gĂ©nĂ©rĂ©es directement Ă  partir du dĂ©pĂŽt git.

--copyright-file fichier_de_copyright

Exclure les fichiers mentionnĂ©s dans le champ Files-Excluded du fichier_de_copyright donnĂ©. C’est utile lors de l’utilisation d’ uscan en dehors d’un rĂ©pertoire de paquet source.

VARIABLES DE CONFIGURATION DE DEVSCRIPT

Pour une utilisation de base d’ uscan , la configuration de ces variables n’est pas nĂ©cessaire.

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

TĂ©lĂ©charger ou rapporter l’information seulement:
no
: équivaut à --no-download , les nouveaux fichiers ne seront pas
téléchargés.
yes
: equivaut Ă  --download , les nouveaux fichiers amont seront
tĂ©lĂ©chargĂ©s. C’est le comportement par dĂ©faut.

Voir aussi --force-download and --overwrite-download .

USCAN_SAFE

Si elle est dĂ©finie Ă  yes , alors uscan Ă©vite l’exĂ©cution de scripts non sĂ©curisĂ©s en sautant Ă  la fois le rempaquetage du paquet tĂ©lĂ©chargĂ© et la mise Ă  jour de l’arborescence de la nouvelle source ; c’est l’équivalent des options --safe ; cela dĂ©finit aussi les options par dĂ©faut Ă  --no-download et --skip-signature .

USCAN_PASV

Si elle est dĂ©finie Ă  yes ou no , cela force respectivement Ă  utiliser ou Ă  ne pas utiliser le mode passif pour les connexions FTP. Si elle est dĂ©finie Ă  default , alors Net::FTP (3) fait 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|lzma|xz} 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 dĂ©finie Ă  yes , alors la sortie sera verbeuse, 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 dĂ©finie Ă  yes , alors aprĂšs avoir tĂ©lĂ©chargĂ© une archive tar compressĂ©e avec bzip, lzma, xz ou zstd ou une archive ZIP, uscan recrĂ©era une archive compressĂ©e du type dĂ©fini (voir --compression ). C’est Ă©quivalent Ă  l’option --repack .

USCAN_EXCLUSION

Si elle est dĂ©finie Ă  no , les fichiers mentionnĂ©s dans le champ Files-Excluded de debian/copyright seront ignorĂ©s et aucune exclusion de fichiers ne sera tentĂ©e. C’est Ă©quivalent Ă  l’option --no-exclusion .

USCAN_HTTP_HEADER

Si dĂ©finie, l’en-tĂȘte spĂ©cifiĂ© sera utilisĂ© pour toutes les URLs correspondantes. C’est Ă©quivalent Ă  l’option --http-header .

USCAN_VCS_EXPORT_UNCOMPRESSED

Si elle est dĂ©finie Ă  yes , les archives exportĂ©es depuis un systĂšme de contrĂŽle de versions ne seront pas compressĂ©es. C’est Ă©quivalent Ă  l’option --vcs-export-uncompressed .

VALEURS DE RETOUR

Le code de retour indique si une nouvelle version a Ă©tĂ© trouvĂ©e ; il est conseillĂ© de lire la sortie pour dĂ©terminer exactement ce qui 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.

FONCTIONNALITÉS AVANCÉES

uscan possĂšde beaucoup d’autres fonctionnalitĂ©s qui sont sautĂ©es dans la section ci-dessus, pour ĂȘtre plus simple. Regardons leurs points marquants.

uscan peut ĂȘtre exĂ©cutĂ© avec chemin comme paramĂštre pour passer le rĂ©pertoire de dĂ©part de recherche du rĂ©pertoire courant Ă  chemin .

Si vous ne savez pas exactement ce qui se passe dans les coulisses, veuillez activer l’option --verbose . Si ce n’est pas suffisant, activez l’option --debug pour voir toutes les actions internes.

Voir "OPTIONS DE LIGNE DE COMMANDE" et "VARIABLES DE CONFIGURATION DE DEVSCRIPT" pour d’autres variantes.

Script personnalisé

Le paramÚtre optionnel script dans debian/watch signifie exécuter script avec des options aprÚs avoir traité cette ligne si elle est spécifiée.

Voir "HISTORIQUE ET MISE À NIVEAU" pour voir comment uscan invoque le <script> personnalisĂ©.

Pour des raisons de compatibilitĂ© avec d’autres outils tels que git-buildpackage , il peut ĂȘtre judicieux de ne pas crĂ©er des scripts personnalisĂ©s au comportement alĂ©atoire. En gĂ©nĂ©ral, uupdate est le meilleur choix pour un paquet non natif, et les scripts personnalisĂ©s, s’ils existent, devraient se comporter comme uupdate . Pour des cas d’utilisation potentiels, voir <http://bugs.debian.org/748474> comme exemple.

DĂ©tournement d’URL

Certains sites populaires ont changĂ© leur structure de page web provoquant des problĂšmes de maintenance du fichier de veille. Des services de redirection ont Ă©tĂ© créés pour faciliter sa maintenance. Actuellement, uscan fait un dĂ©tournement automatique des requĂȘtes d’URL pour les URL suivantes afin de gĂ©rer cette situation.

‱

<http://sf.net>

‱

<http://pypi.python.org>

Vérification du nom du répertoire

Comme plusieurs autres scripts du paquet devscripts , uscan parcourt l’arborescence du 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, et pour des raisons d’efficacitĂ©, 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 jamais vérifier 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

Toujours vérifier le nom du répertoire.

Le nom du rĂ©pertoire est vĂ©rifiĂ© en testant si le nom du rĂ©pertoire actuel (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 expression_rationnelle . 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. Sinon, elle doit correspondre au nom de rĂ©pertoire complet. Si elle contient la chaĂźne paquet , cette chaĂźne sera remplacĂ©e par le nom du paquet source dĂ©terminĂ© par le fichier debian/changelog . La valeur par dĂ©faut de cette expression rationnelle est : paquet (-.+)? , ce qui correspond aux rĂ©pertoires nommĂ©s paquet ou paquet-version .

HISTORIQUE ET MISE À NIVEAU

Cette section décrit briÚvement les incompatibilités inverses des fonctionnalités du fichier watch qui ont été ajoutées dans chaque version du fichier watch et la premiÚre version du paquet devscripts qui les comprenait.
Versions antérieures à 2

La syntaxe du fichier watch Ă©tait trĂšs diffĂ©rente Ă  l’époque. Ne l’utilisez plus. Si vous mettez votre fichier watch Ă  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 actuel de fichier watch . Cette version est également dépréciée et sera rejetée dÚs la publication de Debian 11.

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 lorsqu’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 ( ... ) .

‱

uscan invoque le script personnalisé comme ceci : script --upstream-version version ../ spkg _ version .orig.tar.gz .

‱

uscan invoque uupdate standard comme ceci : " uupdate --no-symlink --upstream-version version ../ spkg _ version .orig.tar.gz ".

Version 4

devscripts version 2.15.10 : la premiÚre incarnation des fichiers watch prenant en charge les archives amont multiples.

La syntaxe du fichier de veille est assouplie pour permettre plus d’espaces de lisibilitĂ©.

Si vous avez un script personnalisé à la place de uupdate , vous pouvez aussi rencontrer des problÚmes lors de la mise à jour à partir de la version 3.

‱

uscan invoque le script personnalisé comme ceci : " script --upstream-version version ".

‱

uscan invoque uupdate standard comme ceci : " uupdate --find --upstream-version version ".

Les restrictions pour --dehs sont levĂ©es en redirigeant les autres sorties sur la sortie d’erreur standard lorsque elle est active.

VOIR AUSSI

dpkg (1), mk-origtargz (1), perlre (1), uupdate (1), 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>. La prise en charge de HTTP a Ă©tĂ© ajoutĂ© par Piotr Roszatycki <dexter@debian.org>. Le programme a Ă©tĂ© réécrit en Perl par Julian Gilbey. Xavier Guimard l’a convertit en Perl orientĂ©-objet en utilisant Moo.

TRADUCTION

Cyril Brulebois < cyril.brulebois@enst-bretagne.fr >, 2006

Thomas Huriaux < thomas.huriaux@gmail.com >, 2006

David Prévot < david@tilapin.org >, 2010-2013

Xavier Guimard < yadd@debian.org >, 2018-2024