dpkg-parsechangelog - ontleed Debian changelog-bestanden
dpkg-parsechangelog [optie...]
dpkg-parsechangelog leest en ontleedt het bestand changelog
van een uitgepakte Debian broncodeboom en geeft de informatie eruit in een
door een machine te lezen vorm weer op de standaarduitvoer.
- -l, --file
changelog-bestand
- Geeft het changelog-bestand op waaruit gelezen moet worden. Een
‘-’ kan gebruikt worden om aan te geven dat van de
standaardinvoer gelezen moet worden. De standaard is
debian/changelog.
- -F
changelog-indeling
- Specifies the format of the changelog. By default the format is read from
a special line near the bottom of the changelog or failing that defaults
to the debian standard format. See also "CHANGELOG
FORMATS".
- -L
bibliotheekmap
- Een uitgefaseerde optie zonder effect (sinds dpkg 1.18.8). Het instellen
van de perl omgevingsvariabelen PERL5LIB of PERLLIB heeft
een gelijkaardig effect bij het zoeken naar de perl-modules van de
ontleder (parser).
- -S, --show-field
veld
- Geeft de naam op van het te tonen veld (sinds dpkg 1.17.0). De naam van
het veld wordt niet weergegeven, enkel de inhoud ervan.
- -?, --help
- Info tonen over het gebruik en afsluiten.
- --version
- De versie tonen en afsluiten.
De volgende opties kunnen gebruikt worden om de uitvoer van de
changelog-ontleder te beïnvloeden, zoals bijvoorbeeld het assortiment
items of de indeling van de uitvoer.
- --format
uitvoerindeling
- De indeling van de uitvoer instellen. Momenteel ondersteunde waarden zijn
dpkg en rfc822. dpkg is de klassieke indeling van de
uitvoer (van voor het bestaan van deze optie) en ook de standaard. Het
bestaat uit één onderdeel volgens het indelingssysteem van
Debian control (zie deb-control(5)). Indien meer dan
één item opgevraagd wordt, dan worden de meeste velden
genomen uit het eerste item (gewoonlijk het meest recente item), tenzij
anders vermeld:
- Source:
pakketnaam
- De naam van het broncodepakket.
- Version:
versie
- Het versienummer van de broncode. Opmerking: Voor releases die
uitsluitend binair zijn, is er mogelijk geen overeenkomstige
broncoderelease.
- Distribution:
doeldistributie
- Een door spaties gescheiden lijst van een of meer namen van distributies
waarin deze versie ondergebracht moet worden als ze geüpload
wordt.
- Urgency:
urgentie
- Van alle opgenomen items wordt de hoogste urgentie gebruikt, gevolgd door
de samengevoegde (onderling door spaties gescheiden) commentaar van alle
opgevraagde versies.
- Maintainer:
auteur
- De naam en het e-mailadres van de persoon die deze wijzigingen heeft
voorbereid, dit zijn niet noodzakelijkerwijs die van de uploader of
de gebruikelijke pakketbeheerder.
- Date:
datum
- De datum van het item als een tekenreeks, zoals die voorkomt in het
changelog-bestand. Met een strptime(3)-opmaak
"%a,
%d
%b
%Y
%T
%z", maar waarbij het kan
zijn dat de dag van de week niet echt overeenkomt met de werkelijke dag
die bekomen wordt uit de rest van de datumtekenreeks. Indien u een meer
accurate representatie van de datum nodig heeft, moet u gebruik maken van
het Timestamp-veld, maar u moet er rekening mee houden dat het
mogelijk is dat het niet meer exact terug omgezet kan worden naar de
waarde van dat veld.
- Timestamp:
tijdsaanduiding
- De datum van het item, uitgedrukt als een tijdstempel in aantal seconden
sinds de epoch (sinds dpkg 1.18.8).
- Closes:
bug-nummer
- De velden Closes van alle opgenomen items worden samengevoegd.
- Changes:
changelog-items
- De tekst van alle changelog-items wordt samengevoegd. Om van dit veld een
geldig veld te maken volgens de indeling van een Debian control-veld dat
uit meerdere regels bestaat, worden lege regels vervangen door
één enkel punt en springen alle regels in met
één spatie. De exacte inhoud hangt af van de
changelog-indeling.
De velden Version, Distribution, Urgency,
Maintainer en Changes zijn verplicht.
Er kunnen nog bijkomende door de gebruiker aangemaakte velden
gebruikt worden.
De indeling volgens rfc822 maakt gebruik van dezelfde
velden, maar gebruikt in de uitvoer een apart onderdeel voor elk
changelog-item, zodat alle metadata van elk item behouden blijven.
- --reverse
- Alle wijzigingen in omgekeerde volgorde opnemen (sinds dpkg 1.19.1).
Opmerking: voor de indeling dpkg zal het eerste
item het oudste item zijn.
- --all
- Alle wijzigingen opnemen. Opmerking: andere opties hebben geen
effect als deze optie gebruikt wordt.
- -s, --since
versie
- -v versie
- Alle wijzigingen opnemen die recenter zijn dan versie.
- -u, --until
versie
- Alle wijzigingen opnemen die aangebracht zijn voor versie.
- -f, --from
versie
- Alle wijzigingen uit versie of later opnemen.
- -t, --to
versie
- Alle wijzigingen uit versie of vroeger opnemen.
- -c, --count
aantal
- -n aantal
- aantal items opnemen, te beginnen bij het begin (of bij het einde
als aantal kleiner is dan 0).
- -o, --offset
getal
- Het beginpunt voor --count aanpassen, te rekenen vanaf het begin
(of het einde als getal lager is dan 0).
Het is mogelijk om een andere indeling te gebruiken dan de
standaardindeling door te voorzien in een ontleedprogramma voor die
alternatieve indeling.
Om er voor te zorgen dat dpkg-parsechangelog dat nieuw
ontleedprogramma uitvoert, moet binnen de laatste 40 regels van het
changelog-bestand een regel toegevoegd worden die voldoet aan de Perl
reguliere expressie:
“\schangelog-format:\s+([0-9a-z]+)\W”. Het deel tussen
haakjes moet de naam van de indeling zijn. Bijvoorbeeld:
@@@ changelog-format: andere-indeling @@@
Een naam voor een changelog-indelingen moet een niet-lege
alfanumerieke tekenreeks (“a-z0-9”) zijn.
Indien een dergelijke regel bestaat, zal
dpkg-parsechangelog naar het ontleedprogramma zoeken als een
Dpkg::Changelog::andere-indeling perl module. Het is een fout
als die niet voorhanden is. De parsernaam in de perlmodule zal automatisch
in hoofdletters gezet worden. De standaard changelog-indeling is
debian en standaard is er voorzien in een programma om ze te
ontleden.
Het ontleedprogramma moet ontleend worden aan de
Dpkg::Changelog-klasse en moet de vereiste vastgelegde interface
implementeren.
Indien de changelog-indeling die ontleed wordt altijd of bijna
altijd een witregel heeft tussen aparte notities in verband met wijzigingen,
moeten die lege regels weggenomen worden om als resultaat een compacte
uitvoer te bekomen.
Indien de changlog-indeling geen informatie bevat over data of
pakketnaam, dan moet die informatie in de uitvoer weggelaten worden. Het
ontleedprogramma moet niet proberen die informatie samen te stellen of ze in
andere bronnen gaan zoeken.
Indien het changelog-bestand niet de verwachte indeling gebruikt,
moet het ontleedprogramma afsluiten met een foutmelding, eerder dan te
proberen er zich doorheen te slaan en misschien foute uitvoer te
genereren.
Een ontleedprogramma voor een changelog-bestand mag helemaal niet
met de gebruiker interageren.
Alle Parser Options (ontleedopties) met uitzondering van
-v worden slechts sinds dpkg 1.14.16 ondersteund.
Het voor ontleeddoeleinden gebruiken van opties in verkorte
notatie met niet-samengebundelde waarden is slechts sinds dpkg 1.18.0
mogelijk.
- DPKG_COLORS
- Stelt de kleurmodus in (sinds dpkg 1.18.5). Waarden die momenteel gebruikt
mogen worden zijn: auto (standaard), always en
never.
- DPKG_NLS
- Indien dit ingesteld is, zal het gebruikt worden om te beslissen over het
activeren van moedertaalondersteuning, ook gekend als
internationaliseringsondersteuning (of i18n) (sinds dpkg 1.19.0). Geldige
waarden zijn: 0 and 1 (standaard).
- debian/changelog
- Het changelog-bestand dat gebruikt wordt om versieafhankelijke informatie
over het broncodepakket te verkrijgen, zoals de urgentie en de distributie
van een upload, de doorgevoerde aanpassingen sinds een bepaalde release en
het versienummer van de broncode zelf.
Het veld Maintainer heeft een verwarrende naam die
overeenkomt met het veld in het bestand debian/control, maar niet met
zijn exacte semantiek, waarbij de betekenis beter zou worden weergegeven
door de veldnaam Changed-By die wordt gebruikt in het bestand
.changes.