4. Tipos de relatórios de problemas

Ao lidar com relatórios de problemas, seja como um desenvolvedor que tenha acesso direto ao banco de dados de relatórios de problemas ou como colaborador que navega no banco de dados e envia followups com patches, comentários, sugestões ou solicitações de alteração, você vai encontrar vários tipos diferentes de PRs.

As seções a seguir descrevem para que cada tipo diferente de PRs é usado, quando um PR pertence a um desses tipos e qual tratamento cada tipo diferente recebe.

4.1. PRs não atribuídos

Quando os PRs chegam, eles são inicialmente atribuídos a um responsável genérico (placeholder). Estes são sempre prefixados com freebsd-. O valor exato para esse padrão depende da categoria; na maioria dos casos, corresponde a uma lista de discussão específica do FreeBSD. Aqui está a lista atual, com os mais comuns listados primeiro:

Tabela 1. Responsáveis ​​Padrões - mais comuns
TipoCategoriasResponsável Padrão
sistema basebin, conf, gnu, kern, miscfreebsd-bugs
arquitetura específicaalpha, amd64, arm, i386, ia64, powerpc, sparc64freebsd-arch
Coleção de Portsportsfreebsd-ports-bugs
documentação enviada com o sistemadocsfreebsd-doc
Páginas web do FreeBSD (não incluindo docs)Websitefreebsd-www

Tabela 2. Responsável Padrão - outros
TipoCategoriasResponsável Padrão
esforços de advocaciaadvocaciafreebsd-advocacy
Problemas com Java Virtual MachineJavafreebsd-java
conformidade com padrõespadrõesfreebsd-standards
bibliotecas de threadingthreadsfreebsd-threads
Subsistema usb(4)USBfreebsd-usb

Não se surpreenda ao descobrir que o usuário responsável pelo PR atribuiu a categoria errada. Se você corrigir a categoria, não se esqueça de corrigir a atribuição também. (Em particular, nossos usuários parecem ter dificuldade em entender que apenas porque seu problema se manifesta em um sistema i386, que ele pode ser genérico para todo o FreeBSD, e assim ser mais apropriado para o kern. O oposto também é verdade, claro.)

Certos PRs podem ser reatribuídos para longe destes responsáveis genéricos por qualquer pessoa. Existem vários tipos de responsáveis: listas de discussão especializadas; aliases de correio (usados ​​para determinados itens de interesse limitado); e indivíduos.

Para os responsáveis ​​que são listas de discussão, use o formulário longo ao fazer a atribuição (por exemplo, freebsd-foo em vez de foo); isso evitará emails duplicados enviados para a lista de discussão.

Nota:

Como a lista de indivíduos que se voluntariaram para ser o responsável padrão para certos tipos de PRs muda com bastante frequência, ela é muito mais adequada para o the FreeBSD wiki.

Aqui está uma lista de exemplo de tais entidades; provavelmente não está completa.

Tabela 3. Responsáveis ​​Comuns - sistema base
TipoCategoria SugeridaResponsável SugeridoTipo de Responsável
problema específico da arquitetura ARM®armfreebsd-armlista de discussão
problema específico da arquitetura MIPS®kernfreebsd-mipslista de discussão
problema específico da arquitetura PowerPC®kernfreebsd-ppclista de discussão
problema com Configuração Avançada e Gerenciamento de Energia (acpi(4))kernfreebsd-acpilista de discussão
problema com os drivers de modo de transferência assíncrona (ATM)kernfreebsd-atmlista de discussão
problema com sistemas FreeBSD embarcados ou de small-footprint (por exemplo, NanoBSD/PicoBSD/FreeBSD-arm)kernfreebsd-embeddedlista de discussão
problema com os drivers FireWire®kernfreebsd-firewirelista de discussão
problema com o código do sistema de arquivoskernfreebsd-fslista de discussão
problema com o subsistema geom(4)kernfreebsd-geomlista de discussão
problema com o subsistema ipfw(4)kernfreebsd-ipfwlista de discussão
problema com os drivers de rede digital de serviços integrados (ISDN)kernfreebsd-isdnlista de discussão
subsistema jail(8)kernfreebsd-jaillista de discussão
problema com a emulação Linux® ou SVR4kernfreebsd-emulationlista de discussão
problema com a pilha de redekernfreebsd-netlista de discussão
problema com o subsistema pf(4)kernfreebsd-pflista de discussão
problema com o subsistema scsi( 4 )kernfreebsd-scsilista de discussão
problema com o subsistema sound( 4 )kernfreebsd-multimedialista de discussão
problemas com o subsistema wlan( 4 ) e drivers sem fiokernfreebsd-wirelesslista de discussão
problema com o sysinstall(8) ou bsdinstall(8)binfreebsd-sysinstalllista de discussão
problema com os scripts de inicialização do sistema (rc(8))kernfreebsd-rclista de discussão
problema com funcionalidade VIMAGE ou VNET e código relacionadokernfreebsd-virtualizationlista de discussão
problema com a emulação de Xenkernfreebsd-xenlista de discussão

Tabela 4. Responsáveis Comuns - Ports Collection
TipoCategoria SugeridaResponsável SugeridoTipo de Responsável
problema com o framework da coleção de ports (não com um port individual!)portsportmgralias
port que é mantido por apache@FreeBSD.orgportsapachelista de discussão
port que é mantido por autotools@FreeBSD.orgportsautotoolsalias
port que é mantido por doceng@FreeBSD.orgportsdocengalias
port que é mantido por eclipse@FreeBSD.orgportsfreebsd-eclipselista de discussão
port que é mantido por gecko@FreeBSD.orgportsgeckolista de discussão
port que é mantido por gnome@FreeBSD.orgportsgnomelista de discussão
port que é mantido por hamradio@FreeBSD.orgportshamradioalias
port que é mantido por haskell@FreeBSD.orgportshaskellalias
port que é mantido por java@FreeBSD.orgportsfreebsd-javalista de discussão
port que é mantido por kde@FreeBSD.orgportskdelista de discussão
port que é mantido por mono@FreeBSD.orgportsmonolista de discussão
port que é mantido por office@FreeBSD.orgportsfreebsd-officelista de discussão
port que é mantido por perl@FreeBSD.orgportsperllista de discussão
port que é mantido por python@FreeBSD.orgportsfreebsd-pythonlista de discussão
port que é mantido por ruby@FreeBSD.orgportsfreebsd-rubylista de discussão
port que é mantido por secteam@FreeBSD.orgportssecteamalias
port que é mantido por vbox@FreeBSD.orgportsvboxalias
port que é mantido por x11@FreeBSD.orgportsfreebsd-x11lista de discussão

Os PRs relacionados aos ports que têm um mantenedor que é um committer de ports podem ser reatribuídas por qualquer um (mas note que nem todo committer do FreeBSD é necessariamente um committer de ports, então você não pode simplesmente ir sozinho pelo endereço de email).

Para outros PRs, por favor, não os reatribua para outros indivíduos (outros que não sejam você), a menos que tenha certeza de que o responsável realmente deseja acompanhar o PR. Isso ajudará a evitar situações em que ninguém se dedica para consertar um problema em particular, porque todos assumem que o responsável já está trabalhando nele.

Tabela 5. Responsáveis ​​Comuns - Outros
TipoCategoria SugeridaResponsável SugeridoTipo de Responsável
problema com o banco de dados de PRbinbugmeisteralias
problema com o formulário web do Bugzilla.docbugmeisteralias

4.2. PRs Atribuídos

Se um PR tiver o campo responsible configurado para o nome de usuário de um desenvolvedor do FreeBSD, isso significa que o PR foi entregue a essa pessoa em particular para trabalho adicional.

PRs designados não devem ser tocados por ninguém além do responsável ou do bugmeister. Se você tiver comentários, envie um followup. Se, por algum motivo, você achar que o PR deve mudar de estado ou ser reatribuído, envie uma mensagem ao responsável. Se o responsável não responder dentro de duas semanas, cancele a atribuição do PR e faça o que quiser.

4.3. PRs Duplicados

Se você encontrar mais de um PR que descreva o mesmo problema, escolha aquele que contém a maior quantidade de informações úteis e feche os outros, indicando claramente o número do PR substituto. Se vários PRs contiverem informações úteis que não se sobrepõem, envie todas as informações ausentes para um para um deles por meio de um followup, incluindo referências aos outros; em seguida, feche os outros PRs (que agora estão completamente substituídos).

4.4. PRs Obsoletos

Um PR é considerado obsoleto se não tiver sido modificado em mais de seis meses. Aplique o seguinte procedimento para lidar com PRs obsoletos:

  • Se o PR contiver detalhes suficientes, tente reproduzir o problema no -CURRENT e no -STABLE. Se você tiver sucesso, envie um followup detalhando suas descobertas e tente encontrar alguém para atribuí-lo. Defina o estado para analyzed, se apropriado.

  • Se o PR descrever um problema que você sabe ser o resultado de um erro de uso (configuração incorreta ou outra coisa do tipo), envie um followup explicando o que o originador fez de errado e feche o PR com o motivo User error ou Configuration error.

  • Se o PR descreve um erro que você sabe ter sido corrigido no -CURRENT e -STABLE, feche-o com uma mensagem informando quando ele foi corrigido em cada branch.

  • Se o PR descreve um erro que você sabe ter sido corrigido no -CURRENT, mas não no -STABLE, tente descobrir quando a pessoa que o corrigiu está planejando o MFC ou tente encontrar alguém (talvez você?) para fazê-lo. Defina o estado para patched e atribua-o a quem quer que tenha ficado responsável por fazer o MFC.

  • Em outros casos, peça ao originador para confirmar se o problema ainda existe em versões mais recentes. Se o originador não responder dentro de um mês, feche o PR com a notação Feedback timeout.

4.5. PRs Sem Erros

Desenvolvedores que se deparem com PRs que na verdade deveriam ter sido postados na freebsd-bugs ou em alguma outra lista deve fechar o PR, e informar o originador em um comentário do porque o problema reportado não é realmente um PR e orientá-lo sobre onde a mensagem deve ser postada.

Os endereços de e-mail que o Bugzilla utiliza para receber os PRs foram publicados como parte da documentação do FreeBSD, e também foram anunciados e listados no website. Isso significa que os spammers os encontraram.

Sempre que você fechar um desses PRs, faça o seguinte:

  • Defina o componente como junk (em Supporting Services).

  • Defina o responsável para nobody@FreeBSD.org.

  • Defina o estado como Issue Resolved.

Definir a categoria como junk torna óbvio que não há conteúdo útil dentro do PR e ajuda a reduzir a desordem nas categorias principais.

All FreeBSD documents are available for download at https://download.freebsd.org/ftp/doc/

Questions that are not answered by the documentation may be sent to <freebsd-questions@FreeBSD.org>.
Send questions about this document to <freebsd-doc@FreeBSD.org>.