Contribuir com o Bazel

Reportar um problema Ver a fonte Nightly · 8.0 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Há muitas maneiras de ajudar o projeto e o ecossistema do Bazel.

Enviar feedback

Ao usar o Bazel, você pode encontrar coisas que podem ser melhoradas. Você pode ajudar informando problemas quando:

  • O Bazel falha ou você encontra um bug que só pode ser resolvido usando bazel clean.
  • A documentação está incompleta ou não é clara. Também é possível informar problemas na página em que você está usando o link "Criar problema" no canto superior direito da página.
  • Uma mensagem de erro pode ser melhorada.

Participar da comunidade

Você pode interagir com a comunidade do Bazel:

Contribuir com código

O Bazel é um projeto grande, e fazer uma alteração no código-fonte dele pode ser difícil.

Você pode contribuir com o ecossistema do Bazel:

  • Ajudar os mantenedores de regras enviando solicitações de envio.
  • Criar novas regras e disponibilizar o código-fonte delas.
  • Contribuir com ferramentas relacionadas ao Bazel, por exemplo, ferramentas de migração.
  • Melhorar a integração do Bazel com outros ambientes de desenvolvimento integrados e ferramentas.

Antes de fazer uma mudança, crie um problema no GitHub ou envie um e-mail para bazel-discuss@.

As contribuições mais úteis corrigem bugs ou adicionam recursos, em vez de mudanças de estilo, refatoração ou "limpeza". Sua mudança precisa incluir testes e documentação, considerando a compatibilidade com versões anteriores, a portabilidade e o impacto no uso de memória e no desempenho.

Para saber como enviar uma mudança, consulte o processo de aceitação de patches.

Descrição do código do Bazel

O Bazel tem uma grande base de código com código em vários locais. Consulte o guia da base de código para mais detalhes.

O Bazel está organizado da seguinte maneira:

  • O código do cliente está em src/main/cpp e fornece a interface de linha de comando.
  • Os buffers de protocolo estão em src/main/protobuf.
  • O código do servidor está em src/main/java e src/test/java.
    • O código principal é composto principalmente de SkyFrame e alguns utilitários.
    • As regras integradas estão em com.google.devtools.build.lib.rules e em com.google.devtools.build.lib.bazel.rules. Leia primeiro sobre os desafios de escrever regras.
  • As interfaces nativas Java estão em src/main/native.
  • Várias ferramentas de suporte a idiomas são descritas na lista da seção Compilação do Bazel.

Como pesquisar o código-fonte do Bazel

Para pesquisar rapidamente no código-fonte do Bazel, use a Bazel Code Search. Você pode navegar pelos repositórios, filiais e arquivos do Bazel. Também é possível conferir o histórico, as diferenças e as informações de culpa. Para saber mais, consulte o Guia do usuário da Pesquisa de código do Bazel.