Política de lançamento

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

As versões do Bazel podem ser encontradas no GitHub (em inglês).

Versões candidatas

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

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

Como desatar

Se nenhuma regressão for descoberta, a versão candidata será lançada oficialmente após uma semana. No entanto, as regressões podem atrasar o lançamento de uma versão candidata a lançamento. Se regressões forem encontradas, a equipe do Bazel aplicará cherry-picks correspondentes à versão candidata a lançamento para corrigir essas regressões. Se nenhuma outra regressão for encontrada por dois dias úteis consecutivos, começando após uma semana desde a primeira versão candidata a lançamento, a versão será lançada.

Novos recursos não são escolhidos em uma versão candidata a lançamento depois que ela é cortada. Além disso, se um novo recurso for com bugs, ele poderá ser revertido de uma versão candidata a lançamento. Somente os bugs que têm o potencial de impactar ou interromper o build de lançamento são corrigidos em uma versão candidata a lançamento depois que ela é cortada.

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

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

Teste

Uma versão noturna de todos os projetos em execução no ci.bazel.build é executada 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 interruptiva são notificados.

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