Hay muchas formas de ayudar al proyecto y al ecosistema de Bazel.
Envía comentarios
A medida que uses Bazel, es posible que encuentres cosas que se pueden mejorar. Para ayudar, puedes informar problemas en los siguientes casos:
- Bazel falla o encuentras un error que solo se puede resolver con
bazel clean
. - La documentación está incompleta o es poco clara. También puedes informar los problemas desde la página que estás viendo con el vínculo “Crear problema” que aparece en la esquina superior derecha de la página.
- Se podría mejorar un mensaje de error.
Participa en la comunidad
Puedes interactuar con la comunidad de Bazel de las siguientes maneras:
- Cómo responder preguntas en Stack Overflow
- Ayuda a otros usuarios en Slack.
- Mejorar la documentación o contribuir ejemplos
- Compartir tu experiencia o tus sugerencias, por ejemplo, en un blog o en redes sociales
Contribuir con un código
Bazel es un proyecto grande, por lo que hacer un cambio en el código fuente de Bazel puede ser difícil.
Puedes contribuir al ecosistema de Bazel de las siguientes maneras:
- Ayuda a los encargados de mantenimiento de reglas mediante 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
- Mejoramos la integración de Bazel con otros IDE y herramientas.
Antes de realizar un cambio, crea un problema de GitHub o envía un correo electrónico a bazel-dev@.
Las contribuciones más útiles corrigen errores o agregan funciones (a diferencia de los cambios estilísticos, de refactorización o de "limpieza"). 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 quieres obtener información para enviar un cambio, consulta el 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 se organiza de la siguiente manera:
- El código de cliente se encuentra en
src/main/cpp
y proporciona la interfaz de línea de comandos. - Los búferes de protocolo se encuentran en
src/main/protobuf
. - El código del servidor se encuentra en
src/main/java
ysrc/test/java
.- Código principal que está 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
. Te recomendamos que primero leas sobre los Desafíos de las reglas de escritura.
- Las interfaces nativas de Java se encuentran en
src/main/native
. - En la lista de la sección sobre cómo compilar Bazel, se describen varias herramientas compatibles con lenguajes.
Busca el código fuente de Bazel
Para buscar rápidamente en el código fuente de Bazel, usa la Búsqueda de código fuente público de Bazel. Puedes navegar por los repositorios, las ramas y los archivos de Bazel. También puedes ver el historial, las diferencias y la información de culpas. Para obtener más información, consulta la Guía del usuario de la Búsqueda de código fuente público de Bazel.