Política de lançamento

O Bazel mantém um modelo de lançamento de suporte de longo prazo (LTS), em que uma versão principal é lançada a cada nove meses e versões secundárias são lançadas mensalmente. Esta página aborda a política de lançamento do Bazel, incluindo candidatos a lançamento, cronogramas, anúncios e testes.

As versões do Bazel podem ser encontradas no GitHub.

Versões candidatas a lançamento

Uma versão candidata para uma nova versão do Bazel geralmente é criada no início de cada mês. O trabalho é acompanhado por um bug de lançamento no GitHub indicando uma data de lançamento de destino e é atribuído ao gerente de lançamento atual. Os candidatos a lançamento precisam passar em todos os testes de unidade do Bazel e não apresentar regressão indesejada nos projetos testados no Buildkite.

As versões candidatas são anunciadas em bazel-discuss. Nos próximos dias, a equipe do Bazel vai monitorar os relatórios de bugs da comunidade para detectar regressões nos candidatos.

Como desatar

Se nenhuma regressão for descoberta, o candidato será lançado oficialmente após uma semana. No entanto, as regressões podem atrasar o lançamento de uma versão candidata. Se forem encontradas regressões, a equipe do Bazel vai aplicar cherry-picks correspondentes ao candidato a lançamento para corrigir essas regressões. Se não forem encontradas mais regressões por dois dias úteis consecutivos após uma semana desde o primeiro candidato a lançamento, ele será lançado.

Novos recursos não são escolhidos a dedo para uma versão candidata depois que ela é criada. Além disso, se um novo recurso tiver bugs, ele poderá ser revertido de um candidato a lançamento. Somente bugs que podem afetar ou interromper altamente o build de lançamento são corrigidos em um candidato a lançamento depois que ele é cortado.

Uma versão só é lançada em um dia em que o dia seguinte é útil.

Se um problema crítico for encontrado na versão mais recente, a equipe do Bazel vai criar um lançamento de patch aplicando a correção à versão. Como esse patch atualiza uma versão existente em vez de criar uma nova, a versão candidata do patch pode ser lançada após dois dias úteis.

Teste

Um build noturno de todos os projetos em execução em ci.bazel.build é executado usando binários do Bazel criados no cabeçalho e binários de lançamento. Os projetos que serão afetados por uma mudança radical são notificados.

Quando um candidato a lançamento é emitido, outros projetos do Google, como o TensorFlow, são testados no conjunto de testes completo usando os binários do candidato a lançamento. Se você tiver um projeto crítico usando o Bazel, recomendamos estabelecer um processo de teste automatizado que rastreie o candidato a lançamento atual e informe quaisquer regressões.