dpkg-parsechangelog(1)

NAAM
dpkg-parsechangelog - ontleed Debian changelog-bestanden

OVERZICHT
dpkg-parsechangelog [optie...]

BESCHRIJVING
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.

OPTIES

-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
    Geeft de indeling van het changelog-bestand aan. Standaard wordt die indeling gelezen van een bijzondere regel onderaan het changelog-bestand, anders wordt er teruggevallen op de standaardindeling van debian. Zie ook CHANGELOG-INDELINGEN.

-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.

  Ontleedopties
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).

CHANGELOG-INDELINGEN
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.

OPMERKINGEN
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.

OMGEVING

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).

BESTANDEN

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.

BUGS
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.

ZIE OOK
deb-changelog(5).