Hay muchas formas de contribuir al proyecto y al ecosistema de Bazel.
Proporcionar comentarios
A medida que uses Bazel, es posible que encuentres aspectos que se pueden mejorar. Puedes informar problemas cuando:
- Bazel falla o encuentras un error que solo se puede resolver usando
bazel clean
. - La documentación está incompleta o no es clara. También puedes informar problemas de la página que estás viendo con la opción "Crear problema" en la esquina superior derecha de la página.
- Un mensaje de error se puede mejorar.
Participar en la comunidad
Puedes interactuar con la comunidad de Bazel de las siguientes maneras:
- Responde preguntas en Stack Overflow.
- Ayuda a otros usuarios de Slack.
- Mejorar la documentación o contribuir ejemplos.
- Compartir tu experiencia o sugerencias, por ejemplo, en un blog o en las redes sociales
Contribuir con código
Bazel es un proyecto grande y realiza un cambio en el código fuente de Bazel. puede ser difícil.
Puedes contribuir al ecosistema de Bazel de las siguientes maneras:
- Ayudar a los encargados de mantener las reglas con la contribución de solicitudes de extracción.
- Creación de reglas nuevas y código abierto
- Contribuir a herramientas relacionadas con Bazel, por ejemplo, herramientas de migración
- Mejora de la integración de Bazel con otros IDE y herramientas.
Antes de realizar un cambio, crea una instancia de problema o envía un correo electrónico a bazel-discuss@.
Las contribuciones más útiles corrigen errores o agregan funciones (en lugar de hasta el estilístico, la refactorización o la "limpieza" cambios). El cambio debe incluir pruebas y documentación, teniendo en cuenta la retrocompatibilidad la portabilidad y el impacto en el uso y el rendimiento de la memoria.
Si deseas obtener información para enviar un cambio, consulta la proceso de aceptación de parches.
Descripción del código de Bazel
Bazel tiene una base de código grande con código en varias ubicaciones. Consulta la guía de base de código para obtener más detalles.
Bazel está organizado de la siguiente manera:
- El código del cliente se encuentra en
src/main/cpp
y proporciona la interfaz de línea de comandos. - Los búferes de protocolo están en
src/main/protobuf
. - El código del servidor está en
src/main/java
ysrc/test/java
.- Código principal compuesto principalmente por SkyFrame y algunas utilidades.
- Las reglas integradas están en
com.google.devtools.build.lib.rules
y encom.google.devtools.build.lib.bazel.rules
Es posible que quieras leer sobre primero en los Desafíos de escritura de reglas.
- Las interfaces nativas de Java se encuentran en
src/main/native
. - En la lista de la compilar Bazel.
Busca el código fuente de Bazel
Para buscar rápidamente en el código fuente de Bazel, usa Búsqueda de código fuente público de Bazel. Puedes navegar por las aplicaciones repositorios, ramas y archivos. También puedes ver el historial, las diferencias y la culpa. información. Para obtener más información, consulta la Guía del usuario de la búsqueda de código fuente público de Bazel.