Há muitas maneiras de ajudar o projeto e o ecossistema do Bazel.
Enviar feedback
Ao usar o Bazel, talvez você encontre algumas 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 pouco clara. Também é possível informar problemas na página que você está visualizando usando o link "Criar problema" no canto superior direito da página.
- É possível melhorar uma mensagem de erro.
Participe da comunidade
Para interagir com a comunidade do Bazel:
- Responder perguntas no Stack Overflow.
- Ajudar outros usuários no Slack
- Melhorar a documentação ou adicionar exemplos
- Compartilhando sua experiência ou dicas, por exemplo, em um blog ou mídia social.
Contribuir com código
O Bazel é um projeto grande e pode ser difícil alterar o código-fonte dele.
Você pode contribuir com o ecossistema do Bazel:
- Ajudar os mantenedores de regras contribuindo com solicitações de envio.
- Criar novas regras e oferecer código aberto.
- Contribuir para ferramentas relacionadas ao Bazel, por exemplo, ferramentas de migração.
- Melhoria na integração do Bazel com outros ambientes de desenvolvimento integrado e ferramentas.
Antes de fazer uma alteração, crie um problema no GitHub (em inglês) ou envie um e-mail para bazel-dev@.
As contribuições mais úteis corrigem bugs ou adicionam recursos, em vez de mudanças estilísticas, de refatoração ou de "limpeza". A mudança precisa incluir testes e documentação, tendo em mente a compatibilidade com versões anteriores, a portabilidade e o impacto no uso e no desempenho da memória.
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ódigos em vários locais. Consulte o guia da base de código para mais detalhes.
O Bazel é 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
.- Código principal, que é composto principalmente pelo 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 sobre os Desafios das regras de escrita primeiro.
- As interfaces nativas do Java estão em
src/main/native
. - Várias ferramentas com suporte a linguagens estão descritas na lista da seção de compilação do Bazel.
Como pesquisar o código-fonte do Bazel
Para pesquisar rapidamente o código-fonte do Bazel, use a Pesquisa de código do Bazel. Você pode navegar pelos repositórios, ramificações e arquivos do Bazel. Também é possível ver o histórico, as diferenças e as informações de culpados. Para saber mais, consulte o Guia do usuário da Pesquisa de código do Bazel.