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:
- Responda a perguntas no Stack Overflow.
- Ajudar outros usuários no Slack.
- Melhorar a documentação ou contribuir com exemplos.
- Compartilhar suas experiências ou dicas, por exemplo, em um blog ou nas mídias sociais.
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
esrc/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 emcom.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.