Onde eu descubro os detalhes e os motivos dos patches aplicados a um pacote?

4

Estou tentando criar um pacote e estou tendo problemas para criá-lo. Um (ou mais) dos patches para o doxygen instalado com 12.04.1 (Precise), 1.7.4-3 faz com que o doxygen NÃO execute o meu script de script por arquivos Tcl, se o arquivo for nomeado com uma extensão de .tcl (o extensão normal para arquivos Tcl). Se a extensão for outra coisa, como .src, o filtro será executado conforme o esperado. Eu uso .tcl para arquivos de biblioteca ou auxiliar que são explicitamente fontes e .src para programas 'principais' que não são. (Sim, eu tenho os padrões de nome de arquivo apropriados, etc. no Doxyfiles - todo o meu pacote é muito bem sob o CentOS 5 e o CentOS 6, e no CentOS 5, estou usando um RPM do doxgen 1.7.4 ( Basicamente, uma versão não corrigida.Quando eu construo o doxygen manualmente sem os patches Ubuntu / Debian no Ubuntu 12.04.1, ele também funciona corretamente.A versão instalada não funciona corretamente. Eu acho que um (ou mais?) Dos patches quebram alguma coisa no doxygen. O changelog não é muito esclarecedor.

Eu estarei criando um pacote trivial que ilustra o problema amanhã.

    
por Robert Heller 03.04.2013 / 03:37

2 respostas

2

Primeiramente, a versão padrão precisa de doxygen é 1.7.6.1-2ubuntu1 , conforme observado em Pacotes do Ubuntu , então não sei por que você mencionou o 1.7.4-3, já que este é o 11.10 versão padrão Oneiric . Devo verificar se você está realmente no Precise ou se fez o upgrade corretamente.

A versão que você está usando ainda tem o patch doxygen_direct_dot_run.diff aplicado, enquanto a versão atual do Precise, (1.7.6.1-2ubuntu1) não é aplicada. Portanto, usar a versão real do Precise pode resolver alguns dos problemas, pois também tem outros patches. Não há bugs atuais descrevendo seu problema no Launchpad , por isso pode ser um novo.

Mais geralmente, patches e changelogs

Quando você faz o download da fonte ( apt-get source doxygen ), é possível ver quais correções são aplicadas (para doxygen no Precise):

dpkg-source: info: applying manpages.diff
dpkg-source: info: applying dot-config.diff
dpkg-source: info: applying gcc-g.diff
dpkg-source: info: applying doxygen-jquery.patch

No entanto, , você também pode baixar a fonte do programa sem as correções aplicadas ou os pacotes descompactados:

apt-get source doxygen --download-only

(Você poderia criar o pacote e omitir alguns dos patches se quisesse.)

Se você usou a opção --download-only para apt-get source , você terá dois pacotes e um arquivo de assinatura. Você pode descompactar doxygen_1.7.6.1-2ubuntu1.debian.tar.gz para visualizar os patches, changelog e regras (nem todos os patches na pasta de patches serão realmente usados).

O changelog conterá referências aos patches e sempre incluirá o Debian (#number) ou o Launchpad (LP: #number) do bug, e isso pode ser procurado nos respectivos rastreadores de bugs. Essa é a melhor maneira de encontrar mais informações sobre os patches do que no breve registro de alterações.

Exemplos do changelog da fonte doxygen:

  

Não aplique doxygen_direct_dot_run.diff. Fecha: # 618125.

Agora o # 618125 é o ticket da debian, então você pode pesquisar os bugs pelo número em debian e encontre mais detalhes.

  

Adicione metadados multiarch para satisfazer as dependências cruzadas (LP: # 971739)

Da mesma forma, para encontrar mais informações, você procuraria por esse bug no Launchpad digitando o número.

Mais geralmente, você também pode acessar patches.ubuntu.com :

  

Estas correções são geradas diariamente e contêm as diferenças entre um pacote fonte do Ubuntu e a versão equivalente da mesma fonte no Debian.

Além da discussão sobre o próprio segmento de bug, nos fóruns ou nos canais do irc, essas vias de investigação são o máximo que você pode usar para descobrir as razões para os patches.

    
por user76204 03.04.2013 / 23:12
1

OK, o problema não é o Ubuntu, mas o próprio doxygen. Parece que o doxygen 1.7.6.1 está quebrado por não estar honrando as configurações de filtro para arquivos chamados * .tcl, mas indo em frente e usando seu próprio analisador interno, que não está funcionando para meus comentários, já que eles foram escritos com my filtro em mente e foram escritos antes do doxygen ter qualquer noção de lidar com a fonte Tcl. Eu terei que rebaixar a versão do doxygen nas minhas caixas de construção do Ubuntu e incomodar as pessoas do Doxygen sobre este problema.

    
por Robert Heller 05.04.2013 / 00:51