NAZWA¶
dpkg-parsechangelog - przetwarza pliki dzienników zmian Debiana
SKŁADNIA¶
dpkg-parsechangelog [
opcja...]
OPIS¶
dpkg-parsechangelog czyta i przetwarza dziennik zmian rozpakowanego
drzewa źródeł pakietu Debiana i wypisuje te informacje na
standardowym wyjściu w postaci czytelnej dla maszyny.
OPCJE¶
- -lplik-dziennika-zmian
- Określa dziennik zmian, z którego będą
czytane informacje. Domyślnym plikiem jest
debian/changelog.
- -Fformat-dziennika-zmian
- Określa format dziennika zmian. Domyślnie format
jest czytany ze specjalnej linii znajdującej się przy końcu
pliku lub - jeśli taka linia nie istnieje - używany jest
standardowy format Debiana. Patrz też FORMATY DZIENNIKA
ZMIAN.
- -Lkatalog-lib
- Określa dodatkowy katalog, w którym
będą wyszukiwane skrypty parsera. Katalog ten jest przeszukiwany
przed domyślnymi katalogami, którymi obecnie są
/usr/local/lib/dpkg/parsechangelog oraz
/usr/lib/dpkg/parsechangelog.
- -?, --help
- Wyświetla informację o użytkowaniu i
kończy działanie.
- --version
- Wyświetla informację o wersji i pomyślnie
kończy działanie.
Opcje parsera¶
Poniższe opcje mogą być użyte do wpływania na parser
dziennika zmian, np. na zakres wpisów lub format wyjścia. Powinny
być obsługiwane przez skrypty parsera. Patrz także
OSTRZEŻENIA.
- --format format-wyjściowy
- Ustawia format wyjścia. Obecnie wspieranymi
wartościami są dpkg oraz rfc822. dpkg jest
klasycznym formatem wyjścia (z czasów sprzed powstania tej
opcji) i jest domyślnym formatem. Składa się z jednego
akapitu w formacie pliku kontrolnego Debiana (patrz
dpkg-control(5)). Jeśli zażądano więcej
niż jednego wpisu, to o ile nie podano inaczej -
większość pól jest brana z najnowszego wpisu:
- Source: nazwa-pakietu
- Version: wersja
- Distribution: dystrybucja-docelowa
- Urgency: ważność
- Używana jest najwyższa ważność ze
wszystkich dołączonych wpisów, po których
występują połączone (oddzielone spacjami) komentarze
ze wszystkich żądanych wersji.
- Maintainer: autor
- Date: data
- Closes: numer-błędu
- Pola Closes wszystkich włączonych wpisów
są łączone.
- Changes: wpisy-dziennika-zmian
- Tekst wszystkich wpisów dziennika zmian jest
łączony. Aby uczynić to pole poprawnym wieloliniowym polem
w formacie pliku kontrolnego Debiana, wszystkie puste linie są
zastępowane pojedynczymi kropkami oraz jest dodawana spacja na
początku każdej linii. Dokładana zawartość
zależy od formatu dziennika zmian.
- Pola Version, Distribution, Urgency,
Maintainer i Changes są obowiązkowe.
- Mogą także występować dodatkowe pola
zdefiniowane przez użytkownika.
- Format rfc822 używa tych samych pól, ale
wypisuje osobny akapit dla każdego użytego wpisu z dziennika
zmian tak, że zachowane są wszystkie metadane z każdego
wpisu.
- --since wersja, -swersja,
-v wersja
- dołącza wszystkie zmiany późniejsze
niż wersja.
- --until wersja, -uwersja
- dołącza wszystkie zmiany wcześniejsze
niż versja.
- --from wersja, -fwersja
- dołącza wszystkie zmiany równe wersji
lub późniejsze od niej.
- --to wersja, -twersja
- dołącza wszystkie zmiany większe do
wersji lub równe jej.
- --count liczba, -cliczba,
-n liczba
- dołącza liczba wpisów z początku
pliku (lub z jego końca, gdy liczba jest mniejsza od
zera).
- --offset liczba, -oliczba
- zmienia punkt początkowy dla opcji --count,
licząc od początku pliku (lub od jego końca, jeśli
liczba jest mniejsza od zera).
- --all
- uwzględnia wszystkie zmiany. Uwaga: inne opcje nie
odnoszą skutku, gdy ta jest używana.
Można używać innego formatu niż standardowy, pod warunkiem
że dostarczy się do niego parser.
Aby uruchomić
dpkg-parsechangelog na nowym parserze, konieczne jest
dołączenia wiersza w obrębie ostatnich 40 wierszu pliku
dziennika zmian, które pasuje do wyrażenia regularnego Perla: "
\schangelog-format:\s+([0-9a-z]+)\W". Część w
nawiasie powinna być nazwą formatu np.
@@@ changelog-format:
inny-format @@@
Nazwy formatu dziennika zmian są niepustymi łańcuchami
składającymi się z liter i cyfr.
Jeśli taki wiersz istnieje, to
dpkg-parsechangelog poszuka parsera w
/usr/lib/dpkg/parsechangelog/inny-format lub
/usr/local/lib/dpkg/parsechangelog/ inny-format;
błędem jest, jeśli nie będzie on istniał lub nie
będzie programem wykonywalnym. Domyślnym formatem dziennika zmian
jest
debian i jego parser jest domyślnie dostarczany.
Parser będzie wywołany z dziennikiem zmian otwartym na standardowym
wejściu, na początku pliku. Powinien on odczytać plik
(może wyszukiwać, jeśli chce), aby określić wymagane
informacje i zwrócić przetworzoną informację na
standardowe wyjście w formacie określonym przez opcję
--format. Powinien akceptować wszystkie
Opcje parsera.
Jeśli format dziennika zmian, który jest przetwarzany zawsze lub
prawie zawsze pozostawia puste wiersze pomiędzy poszczególnymi
notkami zmian, to powinny one zostać usunięte, aby utworzyć
zwięźlejszy wynik.
Jeśli format dziennika zmian nie zawiera daty lub nazwy pakietu, to
informacja ta powinna zostać pominięta na wyjściu. Parser nie
powinien próbować tworzyć jej lub znajdować z innych
źródeł.
Jeśli dziennika zmian nie posiada oczekiwanego formatu, to parser powinien
wyjść z niezerowym kodem zakończenia, zamiast brnąć
na oślep i tworzyć prawdopodobnie niepoprawne wyniki.
Parser dziennika zmian może nie prowadzić z użytkownikiem
żadnej interakcji.
OSTRZEŻENIA¶
Wszystkie
opcje parsera, z wyjątkiem -v, są obsługiwane
przez
dpkg od wersji 1.14.16. Zewnętrzne parsery dzienników
zmian w formatach innych niż
debian mogą nie
obsługiwać wszystkich opcji.
PLIKI¶
- debian/changelog
- Dziennik zmian jest używany do pozyskania informacji o
pakiecie źródłowym zależnych od jego wersji, takich
jak ważność i dystrybucja wydania, zmiany dokonane po
określonym wydaniu, oraz numer wersji pakietu.
TŁUMACZE¶
Piotr Roszatycki <dexter@debian.org>, 1999
Bartosz Feński <fenio@debian.org>, 2004-2005
Robert Luberda <robert@debian.org>, 2006-2008
Wiktor Wandachowicz <siryes@gmail.com>, 2008
Michał Kułach <michal.kulach@gmail.com>, 2012