Alerta! Esta tradução está muito desatualizada, por favor leia o original.

Como relatar um bug no Debian usando o reportbug

Nós recomendamos fortemente que você reporte bugs no Debian usando o programa reportbug. Para realizar a instalação e iniciá-lo, simplesmente execute:

# aptitude install reportbug
$ reportbug

Ele guiará você, passo-a-passo, no processo de reportar um bug.

Se você tiver questões que as entradas interativas do reportbug não resolvam, você pode consultar o restante da documentação abaixo ou perguntar na lista de discussão dos usuários Debian (em português) ou, para a versão em inglês da lista de discussão dos usuários Debian.

Como relatar um bug no Debian usando o e-mail (e uso avançado do reportbug)

Pontos importantes a serem considerados antes de enviar ser relatório de bug

A qual pacote o seu relatório de bug pertence?

Você precisa saber a qual pacote o seu relatório de bug deveria ser vinculado. Veja este exemplo para informações sobre como encontrar esta informação. (Você usará esta informação para verificar se seu relatório de bug já foi relatado).

Se você não é capaz de determinar a qual pacote o ser relatório de bug deveria ser vinculado, favor envie uma mensagem para a lista de discussão dos usuários Debian (em português) ou, para a versão em inglês da lista de discussão de usuários Debian pedindo aconselhamento.

Se o seu problema não está relacionado somente a um pacote mas a algum serviço geral do Debian, existem diversos pseudo-pacotes ou mesmo listas de discussão que você pode usar para transmitir sua mensagem para nós.

Seu relatório de bug já foi relatado?

Você deveria verificar se seu relatório de bug já foi relatado antes de enviá-lo. Você pode ver quais bugs foram relatados em um pacote específico usando a opção de pacote no formulário de busca de bugs. Se há um relatório de bug existente #<número>, você deveria mandar seus comentários enviando um e-mail para <número>@bugs.debian.org ao invés de relatar um novo bug.

Enviando múltiplos relatórios para múltiplos bugs

Por favor, não relate múltiplos bugs não relacionados — especialmente os que são de pacotes diferentes — em um único relatório de bug.

Não relate bugs para o autor (upstream)

Se você relatar um bug no Debian, não envie uma cópia para os mantenedores originais do software por conta própria, pois é possível que o bug exista apenas no Debian. Se necessário, o mantenedor do pacote irá encaminhar o bug para os mantenedores principais.

Enviando o relatório de bug via e-mail

Você pode relatar bugs no Debian enviando um e-mail para submit@bugs.debian.org com um formato especial descrito abaixo. reportbug (veja acima) formatará os e-mails apropriadamente para você; por favor, use-o!

Cabeçalhos

Como qualquer e-mail você deveria incluir uma linha de Assunto clara e descritiva no cabeçalho principal. O assunto que você definir será usado como o título inicial do bug no sistema de acompanhamento, portanto tente utilizar algo informativo!

Se você quiser enviar uma cópia de seu relatório de bug para destinatários adicionais (como listas de discussão), você não deverá usar os cabeçalhos de e-mail tradicionais, mas um método diferente, descrito abaixo.

Pseudo-cabeçalhos

A primeira parte do relatório de bug são os pseudo-cabeçalhos que contêm informação sobre qual pacotes e versão o seu relatório de bug se aplica. A primeira linha do corpo da mensagem tem que incluir um pseudo-cabeçalho. Ela deveria ser:

Package: <nome-do-pacote>

Substitua <nome-do-pacote> pelo nome do pacote que possui o bug.

A segunda linha da mensagem deve conter:

Version: <versão-do-pacote>

Substitua <versão-do-pacote> pela versão do pacote. Por favor, não inclua aqui qualquer texto que não seja a própria versão, já que o sistema de acompanhamento de bugs se baseia neste campo para determinar quais releases são afetadas pelo bug.

Você precisa informar uma linha Package correta no pseudo-cabeçalho para que o sistema de acompanhamento de bugs entregue a mensagem para o mantenedor do pacote. Consulte este exemplo para informações sobre como encontrar essa informação.

Para outros pseudo-cabeçalhos válidos, veja Pseudo-cabeçalhos adicionais.

O corpo do relatório

Por favor inclua em seu relatório:

Inclua qualquer detalhe que pareça relevante — você está correndo muito pouco risco de fazer o seu relatório muito longo por incluir muita informação. Se forem pequenos, por favor, inclua em seu relatório quaisquer arquivos que você esteja usando para reproduzir o problema. (Se eles forem grandes, considere torná-los disponível em algum site web publicamente acessível, se possível).

Para maiores informações sobre como ajudar os desenvolvedores a solucionar seu problema, por favor, leia o documento Como Relatar Bugs Efetivamente (em inglês).

Um Exemplo de Relatório de Bug

Um relatório de bug, com o cabeçalho e o pseudo-cabeçalho, se assemelha a este:

  To: submit@bugs.debian.org
  From: diligent@testing.linux.org
  Subject: Hello diz `goodbye'

  Package: hello
  Version: 1.3-16

  Quando eu invoco `hello' sem argumentos a partir de um shell comum
  o mesmo imprime `goodbye' ao invés do esperado `hello, world'.
  Aqui está uma transcrição:

  $ hello
  goodbye
  $ /usr/bin/hello
  goodbye
  $

  Eu sugiro que a string de saída, em hello.c, seja corrigida.

  Estou usando GNU/Linux 2.2, kernel 2.2.17-pre-patch-13
  e libc6 2.1.3-10.

Lembre-se de escrever o seu relatório de bug em inglês. Se precisar de ajuda você pode enviar uma mensagem para debian-devel-portuguese@lists.debian.org ou para debian-l10n-portuguese@lists.debian.org.

Enviando cópias de relatórios de bugs para outros endereços

Algumas vezes é necessário enviar uma cópia do relatório de bug para algum outro endereço além de debian-bugs-dist e do mantenedor do pacote, que são os endereços para os quais o mesmo é normalmente enviado.

Você poderia fazer isso enviando uma cópia de seu relatório de bug (usando o campo CC) para o(s) outro(s) endereço(s), mas assim as outras cópias não teriam o número do relatório de bug no campo Reply-To e na linha Assunto. Quando os destinatários responderem, eles provavelmente preservarão a entrada submit@bugs.debian.org no cabeçalho e terão suas mensagens enviadas como um novo relatório de bug. Isto leva a muitos relatórios duplicados.

A maneira correta de fazer isso é usar o cabeçalho X-Debbugs-CC. Adicione uma linha como essa ao cabeçalho de sua mensagem:

 X-Debbugs-CC: outra-lista@cosmic.edu

Isto fará com que o sistema de acompanhamento de bugs envie uma cópia de seu relatório para o(s) endereço(s) na linha X-Debbugs-CC e também para debian-bugs-dist.

Evite enviar estas cópias para o endereço de outros relatórios de bugs, já que elas serão pegas pela checagem que evita loops de mensagens. De qualquer forma, não há um bom motivo em usar X-Debbugs-CC para isto, já que o número do bug adicionado por este mecanismo será substituído por um outro; ao invés disso, use o campo CC.

Este recurso pode geralmente ser combinado de maneira útil com quiet — veja abaixo.

Pseudo-cabeçalhos adicionais

Níveis de Severidade

Se um relatório é de um bug particularmente sério (serious), ou é meramente uma requisição de novo recurso, você pode definir o nível de severidade no momento em que o relata. No entanto, isto não é requerido e os mantenedores do pacote atribuirão um nível de severidade apropriado para seu relatório caso você não o faça (ou escolha a severidade errada).

Para atribuir um nível de severidade, coloque uma linha como essa no pseudo-cabeçalho:

Severity: <severidade>

Substitua <severidade> por um dos níveis de severidade disponíveis, como descrito na documentação avançada.

Atribuindo tags

Você pode definir tags em um bug quando relata o mesmo. Por exemplo, caso você esteja incluindo um patch junto ao seu relatório de bug você pode desejar definir a tag patch. Porém, isso não é requerido e os desenvolvedores irão definir tags em seu relatório quando apropriado.

Para definir tags, inclua uma linha como essa no pseudo-cabeçalho:

Tags: <tags>

Substitua <tags> por uma ou mais tags disponíveis, conforme descrito na documentação avançada. Separe múltiplas tags por vírgulas, espaços ou ambos.

User: <nome-de-usuário>
Usertags: <tags-do-usuário>

Substitua <tags-do-usuário> com uma ou mais usertags. Separe várias tags com vírgulas, espaços ou ambos. Se você especificar um <nome-de-usuário>, as tags deste usuário serão definidas. Caso contrário, o endereço de e-mail do remetente será usado como nome de usuário.

Forwarded: foo@example.com

marcará o novo relatório de bug submetido como encaminhado para foo@example.com. Veja Registrando que você encaminhou um relatório de bug na documentação dos desenvolvedores para detalhes.

Owner: foo@example.com

indicará que foo@example.com é agora o responsável por resolver este bug. Veja Alterando o responsável pelo bug na documentação dos desenvolvedores para detalhes.

Source: foopacote

o equivalente a Package: para bugs presentes no pacote fonte de foopacote; para a maioria dos bugs na maioria dos pacotes você não precisa usar esta opção.

Finalmente, se seu MUA não permite que você edite os cabeçalhos das mensagens, você pode definir os diversos cabeçalhos X-Debbugs- nos pseudo-cabeçalhos.

Informação adicional

Endereços de envio diferentes (relatórios de bugs menores ou em massa)

Caso um relatório de bug seja menor, por exemplo, um erro ortográfico na documentação ou um problema de compilação trivial, por favor ajuste a severidade apropriadamente e envie o mesmo para maintonly@bugs.debian.org ao invés de submit@bugs.debian.org. maintonly irá encaminhar o relatório somente para o mantenedor do pacote e não irá encaminhá-lo para as listas de discussão do BTS.

Caso você esteja enviando muitos relatórios de uma vez, você deverá, definitivamente, usar maintonly@bugs.debian.org para que você não cause muito tráfego redundante nas listas de discussão do BTS. Antes de enviar muitos bugs similares, você pode também postar um sumário em debian-bugs-dist.

Caso deseje relatar um bug para o sistema de acompanhamento de bugs que já tenha sido enviado para o mantenedor, você pode usar quiet@bugs.debian.org. Bugs enviados para quiet@bugs.debian.org não serão encaminhados para lugar algum, somente registrados.

Quando você utiliza endereços de envio diferentes, o sistema de acompanhamento de bugs irá definir o Reply-To de quaisquer mensagens encaminhadas para que as respostas sejam por padrão processadas da mesma maneira que o relatório original. Isto significa que, por exemplo, respostas para maintonly irão para nnn-maintonly@bugs.debian.org ao invés de nnn@bugs.debian.org, a menos é claro que alguém sobrescreva isso manualmente.

Confirmações

Normalmente, o sistema de acompanhamento de bugs retornará uma confirmação para você por e-mail, após você relatar um novo bug ou enviar uma informação adicional para um bug existente. Se você quiser suprimir esta confirmação, inclua um cabeçalho X-Debbugs-No-Ack no seu e-mail (o conteúdo deste cabeçalho não importa; entretanto, ele precisa estar no cabeçalho da mensagem e não no pseudo-cabeçalho com o campo Package). Se você relatar um novo bug com este cabeçalho, você precisará checar a interface web para descobrir o número do bug.

Note que este cabeçalho não irá suprimir confirmações do servidor de e-mails control@bugs.debian.org, já que estas confirmações podem conter mensagens de erro que devem ser lidas e trabalhadas imediatamente.

Relatórios de bugs para pacotes desconhecidos

Caso o sistema de acompanhamento de bugs não saiba quem é o mantenedor do pacote em questão, o mesmo encaminhará o relatório para debian-bugs-dist mesmo se maintonly for usado.

Ao enviar para maintonly@bugs.debian.org ou nnn-maintonly@bugs.debian.org, você deve certificar-se de atribuir o relatório de bug ao pacote correto, colocando um Package correto no topo de um envio original de um relatório ou usando o serviço control@bugs para (re)atribuir o relatório apropriadamente.

Usando o dpkg para encontrar o pacote e versão para o relatório

Quando estiver usando o reportbug para relatar um bug em um comando, digamos o grep, o seguinte automaticamente selecionará o pacote correto e permitirá que você escreva o relatório na seqüência: reportbug --file $(which grep)

Você também pode encontrar qual pacote instalou-lo usando dpkg --search. Você pode encontrar qual versão de um pacote você possui instalada usando dpkg --list ou dpkg --status.

Por exemplo:

$ which apt-get
/usr/bin/apt-get
$ type apt-get
apt-get is /usr/bin/apt-get
$ dpkg --search /usr/bin/apt-get
apt: /usr/bin/apt-get
$ dpkg --list apt
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name           Version        Description
+++-==============-==============-============================================
ii  apt            0.3.19         Advanced front-end for dpkg
$ dpkg --status apt
Package: apt
Status: install ok installed
Priority: standard
Section: base
Installed-Size: 1391
Maintainer: APT Development Team <deity@lists.debian.org>
Version: 0.3.19
Replaces: deity, libapt-pkg-doc (<< 0.3.7), libapt-pkg-dev (<< 0.3.7)
Provides: libapt-pkg2.7
Depends: libapt-pkg2.7, libc6 (>= 2.1.2), libstdc++2.10
Suggests: dpkg-dev
Conflicts: deity
Description: Advanced front-end for dpkg
 This is Debian's next generation front-end for the dpkg package manager.
 It provides the apt-get utility and APT dselect method that provides a
 simpler, safer way to install and upgrade packages.
 .
 APT features complete installation ordering, multiple source capability
 and several other unique features, see the Users Guide in
 /usr/doc/apt/guide.text.gz

Outros comandos e pacotes úteis

A ferramenta querybts, disponível a partir do mesmo pacote que o reportbug, fornece uma interface conveniente em modo texto para o sistema de acompanhamento de bugs.

Usuários Emacs também podem usar o comando debian-bug fornecido pelo pacote debian-el. Quando chamado com M-x debian-bug, ele perguntará por todas as informações necessárias de forma similar ao reportbug.


Other BTS pages:


Debian BTS administrators <owner@bugs.debian.org>

Debian bug tracking system
Copyright © 1999 Darren O. Benham, 1997, 2003 nCipher Corporation Ltd, 1994-1997 Ian Jackson.