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. Ajude 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. Você também pode informar problemas na página que está visualizando 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 das seguintes maneiras:
- Respondendo a perguntas no Stack Overflow.
- Ajudando outros usuários no Slack.
- Melhorando a documentação ou contribuindo com 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 fazer uma mudança no código-fonte pode ser difícil.
Você pode contribuir para o ecossistema do Bazel das seguintes maneiras:
- Ajudando os responsáveis pelas regras a contribuir com solicitações de envio.
- Criando novas regras e disponibilizando-as como código aberto.
- Contribuindo para ferramentas relacionadas ao Bazel, por exemplo, ferramentas de migração.
- Melhorando a integração do Bazel com outras ferramentas e ambientes de desenvolvimento integrado.
Antes de fazer uma mudança, crie um problema do GitHub ou envie um e-mail para bazel-discuss@.
As contribuições mais úteis corrigem bugs ou adicionam recursos (em vez de mudanças estilísticas, de refatoração ou de "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 um grande codebase com código em vários locais. Consulte o guia do codebase para mais detalhes.
O Bazel é organizado da seguinte forma:
- O código do cliente está em
src/main/cppe 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/javaesrc/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.rulese emcom.google.devtools.build.lib.bazel.rules. Recomendamos que você leia sobre os desafios de escrever regras primeiro.
- As interfaces nativas Java estão em
src/main/native. - Várias ferramentas para suporte a idiomas são descritas na lista na seção 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 conferir o histórico, as diferenças e as informações de atribuição. Para saber mais, consulte o Guia do usuário da Pesquisa de código do Bazel.