Contribuye a Bazel

Denunciar un problema Ver código fuente Nightly · 8.0 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Existen muchas formas de ayudar al proyecto y al ecosistema de Bazel.

Proporcionar comentarios

A medida que uses Bazel, es posible que encuentres aspectos que se pueden mejorar. Puedes ayudar informando 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 no es clara. También puedes informar problemas desde la página que estás viendo mediante el vínculo “Crear problema” que se encuentra 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:

  • Responder preguntas en Stack Overflow
  • Ayudar a otros usuarios en Slack
  • Mejorar la documentación o aportar ejemplos
  • Compartir tu experiencia o tus sugerencias, por ejemplo, en un blog o en redes sociales

Cómo contribuir con código

Bazel es un proyecto grande, y realizar 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 las reglas con solicitudes de extracción
  • Crear reglas nuevas y hacerlas de código abierto
  • Contribuir con herramientas relacionadas con Bazel, por ejemplo, herramientas de migración
  • Mejora la integración de Bazel con otros IDE y herramientas.

Antes de hacer un cambio, crea un problema de GitHub o envía un correo electrónico a bazel-discuss@.

Las contribuciones más útiles corrigen errores o agregan funciones (en lugar de 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.

Para obtener información sobre cómo 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 información.

Bazel se organiza de la siguiente manera:

  • El código del cliente está 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 y src/test/java.
    • Código principal que se compone principalmente de SkyFrame y algunas utilidades.
    • Las reglas integradas se encuentran en com.google.devtools.build.lib.rules y en com.google.devtools.build.lib.bazel.rules. Te recomendamos que primero leas sobre los desafíos de escribir reglas.
  • Las interfaces nativas de Java están en src/main/native.
  • En la lista de la sección Cómo compilar Bazel, se describen varias herramientas para la compatibilidad con idiomas.

Cómo buscar en el código fuente de Bazel

Para buscar rápidamente en el código fuente de Bazel, usa Bazel Code Search. 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 atribución. Para obtener más información, consulta la Guía del usuario de Bazel Code Search.