deb-changelog(5) | dpkg suite | deb-changelog(5) |
deb-changelog - Format du fichier de journal des modifications (« changelog ») des paquets source dpkg
debian/changelog
Les modifications de la version empaquetée d'un projet sont expliquées dans le fichier debian/changelog. Cela comprend les modifications réalisées dans les sources par rapport au paquet amont ainsi que les autres modifications et mises à jour du paquet.
Le format de debian/changelog permet aux outils de construction du paquet de découvrir la version du paquet en construction et de découvrir d'autres informations spécifiques à la version.
Ce format est une série d'entrées comme celles-ci :
paquet (version) distributions;
métadonnées
[ligne(s) blanches(s) facultative(s), retirée(s)]
* détails-de-modification
plus-de-détails-de-modification
[ligne(s) blanches(s), y compris dans la sortie de
dpkg-parsechangelog(1)]
* encore-plus-de-détails-de-modification
[ligne(s) blanches(s) facultative(s), retirée(s)]
-- nom-responsable <adresse-électronique>
date paquet et version sont le nom et le numéro
de version du paquet source. version est délimité par
les parenthèses U+00028 « ( » et
U+0029 « ) ».
distributions liste une ou plusieurs distributions, séparées par une espace, dans lesquelles cette version peut être installée après téléchargement ; l'entrée est copiée dans le champ Distribution dans le fichier .changes. distributions doit se terminer par un point-virgule (U+003B « ; »).
metadata est une liste de zéro ou plus de paires mot-clé=valeur, séparée par des virgules. Chaque mot-clé peut seulement consister en un signe moins et des caractères alpha-numériques insensibles à la casse, car il est nécessaire qu'ils correspondent aux noms de champ deb822(5). Les seuls mots-clés gérés actuellement par dpkg sont urgency et binary-only. La valeur d'urgency est utilisée pour le champ Urgency dans le fichier .changes pour l'envoi. binary-only avec une valeur yes est utilisé pour indiquer que cette entrée de changelog est liée à un envoi seulement binaire (binNMU) (une reconstruction automatique du binaire avec uniquement une modification de l'entrée du changelog).
Les détails de modification peuvent être en fait une série de lignes démarrant par au moins deux espaces (U+0020 ESPACE), mais par convention, chaque modification débute par un astérisque et une espace de séparation et les lignes de continuation sont indentées de telle manière qu'elles s'alignent sur le début du texte au-dessus. Des lignes blanches peuvent être utilisées pour séparer des groupes de modifications, si désiré.
Si cet envoi résout des bogues enregistrés dans le système de suivi de bogues de la distribution, ceux-ci peuvent être automatiquement fermés lors de l'inclusion de ce paquet dans l'archive de la distribution en incluant la chaîne :
dans les détails de modification où #nnnnn est le numéro du bogue. L'expression rationnelle précise en Perl est :
C'est-à-dire que la chaîne devrait être composée du mot closes: suivi par une liste de numéros de bogue séparés par des virgules. Le numéro de bogue peut être précédé par le mot bug et/ou d'un caractère # comme dans "Closes: 42, bug#43, #44, bug 45". Les mots closes: et bug ne sont pas sensibles à la casse. La liste de numéros de bogue peut s'étendre sur plusieurs lignes.
Cette information est transmise à travers le champ Closes dans le fichier .changes, où, selon le logiciel d'entretien de l'archive, tous les numéros de bogue listés devraient être fermés automatiquement.
Le nom du responsable et l'adresse électronique utilisés dans le changelog seront les détails sur la personne qui a préparé cette version du paquet. Ce ne sont pas nécessairement ceux de celui ou celle qui fait l'envoi ou du responsable habituel du paquet. Ces informations seront copiées dans le champ Changed-By du fichier .changes, et pourront plus tard être utilisées pour envoyer une confirmation lorsque l'envoi a été installé dans l'archive de la distribution.
La date est au format suivant (compatible et avec la même sémantique que RFC2822 et RFC5322, ou avec ce que crée « date -R ») :
où :
La première ligne de « titre » avec le nom du paquet doit débuter à la marge gauche. La ligne terminale avec les détails sur le responsable et la date doit être précédée par exactement une espace (U+0020 ESPACE). Les détails sur le responsable et la date doivent être séparés par exactement deux espaces (U+0020 ESPACE). Chaque partie de la date doit être séparée par plusieurs espaces (U+0020 ESPACE), sauf après la virgule où elles peuvent êtres séparées par zéro ou plus d'espaces (U+0020 ESPACE).
Toute ligne qui consiste uniquement (c'est-à-dire sans espace au début de la ligne) en commentaires de style # ou /* */ ou en mots-clés RCS.
Les lignes de mode (« modeline ») de Vim ou les variables locales d'Emacs et les anciennes entrées de changelog avec d'autres formats à la fin du fichier devraient être acceptées et conservées à la sortie, mais leur contenu pourrait être autrement ignoré et l'analyse arrêtée à ce moment-là.
La totalité du journal des modifications doit être encodé en UTF-8.
dpkg (1.17.18) unstable; urgency=low [ Guillem Jover ] * Handle empty minimum versions when initializing dependency versions, as the code is mapping the minimum version 0 to '' to avoid outputting useless versions. Regression introduced in dpkg 1.17.17. Closes: #764929 [ Updated programs translations ] * Catalan (Guillem Jover). [ Updated dselect translations ] * Catalan (Guillem Jover). * German (Sven Joachim). -- Guillem Jover <guillem@debian.org> Sun, 12 Oct 2014 15:47:44 +0200
deb822(5), deb-version(7), deb-changes(5), dpkg-parsechangelog(1).
Ariel VARDI <ariel.vardi@freesbee.fr>, 2002. Philippe Batailler, 2006. Nicolas François, 2006. Veuillez signaler toute erreur à <debian-l10n-french@lists.debian.org>.
2023-05-11 | 1.21.22 |