deb-version(7)

NOME
deb-version - formato Debian do número de versão do pacote

RESUMO
[epoch:]upstream-version[-debian-revision]

DESCRIÇÃO
Os números de versões como usados para pacotes binário e fonte Debian consistem de três componentes. Estes são:

epoch
    Este é um único (geralmente pequeno) inteiro não assinado. Pode ser omitido, o que em tal caso é assumido zero. Se for omitido então a versão-do-autor pode não conter nenhuns dois pontos (:).

    É fornecido para permitir enganos nos números de versão de versões antigas de um pacote, e também esquemas de numeração de versões antigas de um pacote, para se deixar para trás.

upstream-version
    Esta é a parte principal no número de versão. É geralmente o número de versão do pacote original (do autor) a partir do qual p ficheiro .deb foi feito, se isto for aplicável. Geralmente isto ficará no mesmo formato que aquele especificado pelo autor original, no entanto, pode precisar de ser reformatado para se ajustar ao formato do sistema de gestão de pacotes e esquema de comparação.

    O comportamento comparativo do sistema de gestão de pacotes com respeito a upstream-version é descrito abaixo. A porção upstream-version do número de versão é obrigatória.

    O upstream-version apenas pode conter alfanuméricos (“A-Za-z0-9”) e os caracteres . + - : ~ (ponto, mais, hífen, dois pontos, til) e deve começar com um digito. Se não existir nenhum debian-revision então os hífens não são permitidos, se não existir nenhum epoch então símbolos dois pontos não são permitidos.

debian-revision
    Esta parte do número de versão especifica a versão do pacote Debian baseada na versão do autor. Só pode conter alfanuméricos e os caracteres + . ~ (mais, ponto, til) e é comparado do mesmo modo que upstream-version é.

    É opcional; se não estiver presente então o upstream-version não pode conter um hífen. Este formato representa o caso onde um pedaço de software foi escrito especificamente para ser tornado num pacote Debian, e assim há apenas uma “debianizaçao” dele e assim sendo não é requerido nenhuma indicação de revisão.

    É convencional reiniciar a revisão-debian a ‘1’ cada vez que a versão-do-autor é incrementada.

    O dpkg irá separar o número de versão pelo último hífen da string (se existir um) para determinar upstream-version e debian-revision. A ausência de debian-revision é comparada antes da presença de uma (mas note que debian-revision é a parte menos significante do número da versão).

  Algoritmo de ordenar
As partes versão-do-autor e revisão-debian são comparadas pelo sistema de gestão de pacotes usando o mesmo algoritmo:

As strings são comparadas da esquerda para a direita.

Primeiro é determinada a parte inicial de cada string consistindo inteiramente de caracteres não-dígitos. Estas duas partes (uma delas pode estar vazia) são comparadas lexicamente. Se uma diferença for encontrada, é retornada. A comparação léxica é uma comparação de valores ASCII modificados para que todas as letras fiquem organizadas antes das não-letras e assim para que um título fique organizado antes de tudo, mesmo do final de uma parte. Por exemplo, as seguintes partes estão organizadas em ordem: ‘~~’, ‘~~a’, ‘~’, a parte vazia, ‘a’.

Então é determinada a parte inicial do restante de cada string que consiste inteiramente de caracteres dígitos. Os valores numéricos destas duas partes são comparados, e qualquer diferença encontrada é retornada como resultado da comparação. Para estes objectivos uma string vazia (a qual pode apenas ocorrer no final de uma ou ambas strings de versão a serem comparadas) conta como zero.

Estes dois passos (comparar e remover strings não-dígito iniciais) são repetidos até que seja encontrada uma diferença ou ambas strings estão esgotadas.

Note que o objectivo de épocas é permitir-nos deixar para trás enganos na numeração das versões, e para lidar com situações onde o esquema de numeração da versão mude. Não se destina a lidar com números de versões que contém strings de letras que o sistema de gestão de pacotes não pode interpretar (tais como ‘ALPHA’ ou ‘pre-’), ou com pedidos tolos.

NOTAS
O caractere til e as suas propriedades de organização especiais foi introduzido no dpkg 1.10 e algumas partes dos scripts de compilação do dpkg apenas ganharam suporte para ele nas séries 1.10.x.

VEJA TAMBÉM
deb-control(5), deb(5), dpkg(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>.