En esta página, se describe cómo los colaboradores pueden proponer y realizar cambios en la base de código de Bazel.
- Lee la política de contribuciones de Bazel.
- Crea un problema de GitHub para hablar sobre tu plan y diseño. Las solicitudes de extracción que cambian o agregan comportamiento necesitan un problema correspondiente para el seguimiento.
- Si propones cambios significativos, escribe un documento de diseño.
- Asegúrate de haber firmado un Contrato de Licencia para Colaboradores.
- Prepara una confirmación de git que implemente la función. No olvides agregar pruebas y actualizar la documentación. Si el cambio tiene efectos visibles para el usuario, agrega notas de la versión. Si se trata de un cambio incompatible, consulta la guía para lanzar cambios rotundos.
- Crea una solicitud de extracción en GitHub. Si es la primera vez que usas GitHub, lee acerca de las solicitudes de extracción. Ten en cuenta que restringimos los permisos para crear ramas en el repositorio principal de Bazel, por lo que necesitarás enviar tu confirmación a tu propia bifurcación del repositorio.
- Un encargado de Bazel debería asignarte un revisor en un plazo de dos días hábiles (sin contar los feriados en EE.UU. y Alemania). Si no se te asigna un revisor en ese período, puedes solicitar uno. Para ello, envía un correo electrónico a bazel-dev@googlegroups.com.
- Trabaja con el revisor para completar una revisión de código. Para cada cambio, crea una confirmación nueva y envíala para realizar cambios en tu solicitud de extracción. Si la revisión toma demasiado tiempo (por ejemplo, si el revisor no responde), envía un correo electrónico a bazel-dev@googlegroups.com.
Una vez que se complete la revisión, un encargado de mantenimiento de Bazel aplicará el parche al sistema de control de versiones interno de Google.
Esto activa verificaciones internas previas al envío que pueden sugerir más cambios. Si no expresaste una preferencia, el encargado que envía tu cambio agrega cambios "triviales" (como linting) que no afectan el diseño. Si se requieren cambios más profundos o prefieres aplicarlos directamente, tú y el revisor deben comunicar las preferencias con claridad en los comentarios de la revisión.
Después del envío interno, el parche se exporta como una confirmación de Git, y, en ese momento, se cierra la solicitud de extracción de GitHub. Todos los cambios finales se te atribuyen.