deb-changelog(5)

NAAM
deb-changelog - indeling van het dpkg changelog-bestand van broncodepakketten

OVERZICHT
debian/changelog

BESCHRIJVING
Wijzigingen aan de ingepakte versie van een project worden in het changelog-bestand debian/changelog toegelicht. Daar vallen in de broncode aangebrachte veranderingen ten opzichte van die van de toeleveraar onder, evenals andere wijzigingen en updates aan het pakket.

De indeling van het bestand debian/changelog laat het gereedschap voor het bouwen van pakketten toe om uit te zoeken welke versie van het pakket gebouwd wordt en om andere release-specifieke informatie te weten te komen.

Deze indeling bestaat uit een reeks vermeldingen zoals deze:

 pakket (versie) distributies; metadata
          [optioneel (een) blanco regel(s), die gestript worden]
  * informatie-over-de-veranderingen
    nog-informatie-over-de-aanpassingen
          [blanco regel(s), zichtbaar in de uitvoer van dpkg-parsechangelog(1)]
  * en-eventueel-nog-meer-wijzigingsinformatie
          [optioneel (een) blanco regel(s), die gestript worden]
 -- naam-van-de-onderhouder <e-mailadres> datum

pakket en versie zijn de naam van het broncodepakket en zijn versienummer. versie wordt begrensd door de haakjes U+00028 ‘(’ en U+0029 ‘)’.

distributies somt één of meer door een spatie van elkaar gescheiden distributies op waarin deze versie ondergebracht moet worden als ze geüpload wordt; dit wordt gekopieerd naar het veld Distribution in het bestand .changes. distributies moet afgesloten worden door een puntkomma (U+003B ‘;’).

metadata is een lijst items van het type trefwoord=waarde die onderling door een komma gescheiden worden. Elk trefwoord mag alleen mintekens en hoofdletterongevoelige alfanumerieke tekens bevatten, omdat ze moeten worden toegewezen aan B <deb822>(5)-veldnamen. De enige trefwoorden die momenteel ondersteund worden door dpkg zijn urgency en binary-only. De waarde van urgency wordt gebruikt voor het Urgency-veld in het .changes-bestand voor de upload. binary-only met als waarde yes wordt gebruikt om aan te geven dat dit changelog-item betrekking heeft op een niet door de onderhouder gedane upload van uitsluitend het(de) binaire pakket(ten) (een automatisch opnieuw bouwen van het(de) binaire pakket(ten) met het changelog-item als enige aangebrachte wijziging).

De informatie over de wijzigingen kan in feite om het even welk aantal regels beslaan die beginnen met minstens twee spaties (U+0020 SPACE). Gewoonlijk begint men bij het beschrijven van een wijziging steeds met een asterisk, gevolgd door een spatie. Eventuele vervolgregels springen zo in dat ze uitgelijnd zijn met de tekst van de regel erboven. Als men dat wenst kunnen blanco regels gebruikt worden om groepen van veranderingen onderling te scheiden.

Indien deze upload bugs oplost die vermeld staan in het bugvolgsysteem van de distributie, kunnen die automatisch gesloten worden op het ogenblik dat het pakket opgenomen wordt in het archief van de distributie, indien de tekenreeks:

    Closes: #nnnnn

in de informatie over de wijziging, waarbij #nnnnn het bugnummer is. De exacte Perl reguliere expressie is:

    /closes:\s*(?:bug)?\#?\s?\d+(?:,\s*(?:bug)?\#?\s?\d+)*/i

Dat wil zeggen dat de tekenreks moet bestaan uit het woord closes: gevolgd door een door komma's gescheiden lijst met bugnummers. Bugnummers kunnen worden voorafgegaan door het woord bug en/of een #-teken, zoals in "Closes: 42, bug#43, #44, bug 45". De woorden closes: en bug zijn niet hoofdlettergevoelig. De lijst met bugnummers kan meerdere regels beslaan.

Deze informatie wordt overgebracht via het veld Closes in het bestand .changes, waarbij, afhankelijk van de software voor archiefonderhoud, alle vermelde bugnummers automatisch gesloten kunnen worden.

De naam van de onderhouder en het e-mailadres die in het changelog-bestand vermeld worden moeten betrekking hebben op de persoon die deze release van het pakket voorbereidde. Deze gegevens betreffen niet noodzakelijk de persoon die het pakket uploadt of de persoon die het pakket gewoonlijk onderhoudt. De hier vermelde informatie wordt gekopieerd naar het veld Changed-By in het bestand .changes en zal later, wanneer de upload in het distributiearchief ondergebracht wordt, gebruikt worden voor het zenden van een kennisgeving.

De datum heeft de volgende indeling (compatibel met en met dezelfde betekenis als in RFC2822 en RFC5322, of hetgeen het commando «date -R» genereert):

    dag-van-de-week, dd maand jjjj uu:mm:ss +zzzz

waarbij:

dag-van-de-week
    Een van volgende mogelijkheden is: Mon, Tue, Wed, Thu, Fri, Sat, Sun.

dd  Een uit een of twee cijfers bestaande dag van de maand (01-31 is, waarbij de voorop staande nul facultatief is, maar gewoonlijk niet wordt weggelaten.

maand
    Een van volgende mogelijkheden is: Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec.

jjjj
    Een uit vier cijfers bestaande aanduiding van het jaar (bijv. 2010) is.

uu  Een uit twee cijfers bestaande aanduiding van het uur (00-23) is.

mm  Een uit twee cijfers bestaande aanduiding van de minuten (00-59) is.

ss  Een uit twee cijfers bestaande aanduiding van de seconden (00-60) is.

[+-]zzzz
    De afwijking is van de tijdzone ten opzichte van de gecoördineerde wereldtijd (UTC). ‘+’ geeft aan dat de tijd voorloopt op UTC (d.w.z. dat de tijdzone zich ten oosten van de nulmeridiaan bevindt) en ‘-’ geeft aan dat de tijd achterloopt op UTC (d.w.z. dat de tijdzone zich ten oosten van de nulmeridiaan bevindt). De eerste twee cijfers geven aan hoeveel uur het verschil bedraagt ten opzichte van UTC en de laatste twee hoeveel extra minuten het verschil is ten opzichte van UTC. De laatste twee cijfers moeten vallen binnen het bereik 00-59.

De eerste “titel”-regel met de naam van het pakket moet beginnen aan de linkermarge. De “volgende” regel met de gegevens over de onderhouder en de datum moet door exact één spatie voorafgegaan worden (U+0020 SPACE). Tussen de informatie over de onderhouder en de datum moeten exact twee spaties staan (U+0020 SPACE). Elk onderdeel van de datum kan gescheiden worden door één of meer spaties (U+0020 SPACE), behalve na de komma waar het gescheiden kan worden door nul of meer spaties (U+0020 SPACE).

Elke regel die volledig (d.w.z. zonder voorafgaande witruimte) bestaat uit commentaar in de vorm van #- of /* */ of RCS-trefwoorden.

Modusregels van Vim of lokale variabelen van Emacs en oudere changelog-elementen met een andere indeling aan het einde van het bestand, moeten aanvaard worden en in de uitvoer behouden blijven, maar de inhoud ervan kan verder genegeerd worden en het ontleden kan op dat punt gestopt worden.

Het volledige changelog-bestand moet in UTF-8 opgemaakt zijn.

BESTANDEN

debian/changelog

VOORBEELDEN
 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

ZIE OOK
deb822(5), deb-version(7), deb-changes(5), dpkg-parsechangelog(1).