deb-changelog(5)

NOME
deb-changelog - formato do ficheiro changelog de pacotes fonte dpkg

RESUMO
debian/changelog

DESCRIÇÃO
Alterações na versão empacotada de um projecto estão explicadas no ficheiro de registo de alterações debian/changelog. Isto inclui modificações feitas no pacote fonte comparadas com as do autor assim como outras alterações e actualizações feitas ao pacote.

O formato do debian/changelog permite às ferramentas de compilação do pacote descobrir qual a versão do pacote está a ser compilada e descobrir outras informações específicas do lançamento.

Esse formato é uma série de entradas como esta:

 package (version) distributions; metadata
          [optional blank line(s), stripped]
  * change-details
    more-change-details
          [blank line(s), included in dpkg-parsechangelog(1) output]
  * even-more-change-details
          [optional blank line(s), stripped]
  -- maintainer-name <email-address> date

package e version são o nome do pacote fonte e o número da versão. version é delimitado por parêntesis U+00028 ‘(’ e U+0029 ‘)’.

distributions lista uma ou mais distribuições separadas por espaços onde esta versão deve ser instalada quando é enviada; é copiado para o campo Distribution no ficheiro .changes. distributions tem de ser terminada com um caractere ponto e vírgula (U+003B ‘;’).

metadata lista zero ou mais itens keyword=value separados por espaços. Cada palavra-chave pode conter apenas os caracteres menos e alfanuméricos insensíveis a maiúsculas/minúsculas, pois precisam de ser mapeadas para nomes de campos deb822(5). As únicas keywords presentemente suportadas pelo dpkg são:

urgency
    O seu valor é usado para o campo Urgency no ficheiro .changes para o envio.

binary-only
    Com um valor yes, é usado para denotar que esta entrada no changelog é para um envio binary-only non-maintainer (uma recompilação binária automática com a única alteração a ser a entrada changelog).

Os detalhes da alteração podem de facto serem qualquer série de linhas começando com pelo menos dois espaços (U+0020 SPACE), mas convencionalmente cada alteração começa com um asterisco e um espaço de separação e as linhas de continuação são recuadas para as alinhar com o inicio de texto em cima. Linhas vazias podem ser usadas aqui para separar grupos de alterações, se desejado.

Se este envio resolver bugs guardados no sistema de acompanhamento de bugs da distribuição, estes podem ser fechados automaticamente na inclusão deste pacote no arquivo da distribuição ao incluir a string:

    Closes: #nnnnn

nos detalhes de alteração, onde #nnnnn é o número do bug. A expressão regular Perl exacta é:

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

Isto é, a string deve consistir da palavra closes: seguida por uma lista separada por vírgulas de números de bug. Os números de bug podem ser precedidos pela palavra bug e/ou sinal #, como em "Closes: 42, bug#43, #44, bug 45". As palavras closes: e bug não são sensíveis a maiúsculas/minúsculas. A lista de números de bug pode ocupar várias linhas.

Esta informação é transmitida via campo Closes no ficheiro .changes. Onde, dependendo do software de manutenção do arquivo, todos os números de bug listados podem ser fechados automaticamente.

O nome de maintainer e endereço email usado no changelog deverão ser os detalhes da pessoa que preparou este lançamento do pacote. Não são necessários os da pessoa que faz o envio ou do maintainer habitual do pacote. A informação daqui será copiada para o campo Changed-By no ficheiro .changes, e depois mais tarde pode ser usada para enviar uma confirmação quando o pacote enviado for instalado no arquivo da distribuição.

O date tem o seguinte formato (compatível com as mesmas semânticas de RFC2822 e RFC5322, ou o que «date -R» gerar):

    day-of-week, dd month yyyy hh:mm:ss +zzzz

onde:

day-of-week
    É um de: Mon, Tue, Wed, Thu, Fri, Sat, Sun.

dd  E um dia do mês de um ou dois dígitos (01-31), onde o zero inicial é opcional, mas convencionalmente não é omitido.

month
    É um de of: Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec.

yyyy
    É o ano em quatro dígitos (ex. 2020).

hh  É a hora em dois dígitos (00-23).

mm  É os minutos em dois dígitos (00-59).

ss  É os segundos em dois dígitos (00-60).

[+-]zzzz
    é o deslocamento de fuso horário de Coordinated Universal Time (UTC). ‘+’ indica que a hora é adiantada de (isto é, a este de) UTC e ‘-’ indica que a hora é atrasada de (isto é, a oeste) UTC. Os primeiros dois dígitos indicam a diferença horária de UTC e os dois últimos dígitos indicam o número de minutos adicionais em diferença a UTC. OS últimos dois dígitos têm de estar dentro do alcance 00-59.

A primeira linha "título" com no nome do pacote tem de começar na margem esquerda. margin. A linha final “trailer” com os detalhes do maintainer e data deve ser precedida de exactamente um espaço (U+0020 SPACE). Os detalhes do maintainer e a data devem estar separados por exactamente dois espaços (U+0020 SPACE). Cada parte de date pode ser separada por um ou mais espaços (U+0020 SPACE), excepto após a vírgula onde pode ser separada por zero ou mais espaços (U+0020 SPACE).

Quaisquer linhas que consistam inteiramente (isto é, sem espaço em branco à esquerda) de # ou /* */ são comentários de estilo ou palavras chave RCS devem ser ignoradas.

Linhas modelo do Vim ou variáveis locais do Emacs, e entradas changelog antigas com outros formatos até ao fim do ficheiro devem ser aceites e preservados no resultado, mas os seus conteúdos podem ser por outro lado ignorados e a análise parada nesse ponto.

Todo o changelog tem de estar codificado em UTF-8.

FICHEIROS

debian/changelog

EXEMPLOS
 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

VEJA TAMBÉM
deb822(5), deb-changes(5), deb-version(7), dpkg-parsechangelog(1).

TRADUÇÃO
Américo Monteiro

Se encontrar algum erro na tradução deste documento, por favor comunique para Américo Monteiro <a_monteiro@gmx.com>.