Kebijakan Rilis

Laporkan masalah Lihat sumber {/18/}{/1/}

Bazel mempertahankan model rilis Dukungan Jangka Panjang (LTS), dengan versi utama dirilis setiap sembilan bulan dan versi minim dirilis setiap bulan. Halaman ini membahas kebijakan rilis Bazel, termasuk kandidat rilis, linimasa, pengumuman, dan pengujian.

Rilis Bazel dapat ditemukan di GitHub.

Kandidat rilis

Kandidat rilis untuk Bazel versi baru biasanya dibuat di awal setiap bulan. Tugas dilacak oleh bug rilis di GitHub yang menunjukkan target tanggal rilis, dan ditetapkan ke Pengelola rilis saat ini. Kandidat rilis harus lulus semua pengujian unit Bazel dan tidak menunjukkan regresi yang tidak diinginkan dalam project yang diuji pada Buildkite.

Kandidat rilis diumumkan di bazel-discuss. Selama beberapa hari ke depan, tim Bazel memantau laporan bug komunitas untuk menemukan regresi apa pun dalam kandidat.

Merilis

Jika tidak ada regresi yang ditemukan, kandidat tersebut akan dirilis secara resmi setelah satu minggu. Namun, regresi dapat menunda rilis kandidat rilis. Jika regresi ditemukan, tim Bazel akan menerapkan pilihan sakura yang sesuai ke kandidat rilis untuk memperbaiki regresi tersebut. Jika tidak ditemukan regresi lebih lanjut selama dua hari kerja berturut-turut yang dimulai setelah satu minggu sejak kandidat rilis pertama, kandidat tersebut akan dilepaskan.

Fitur baru tidak dipilih menjadi kandidat rilis setelah dipotong. Selain itu, jika fitur baru memiliki bug, fitur tersebut dapat di-roll back dari kandidat rilis. Hanya bug yang berpotensi sangat berdampak atau merusak build rilis yang diperbaiki dalam kandidat rilis setelah dipotong.

Rilis hanya dirilis pada hari yang hari berikutnya adalah hari kerja.

Jika ditemukan masalah kritis dalam rilis terbaru, tim Bazel akan membuat rilis patch dengan menerapkan perbaikan pada rilis tersebut. Karena patch ini mengupdate rilis yang sudah ada, bukan membuat rilis baru, kandidat rilis patch dapat dirilis setelah dua hari kerja.

Pengujian

Build setiap malam untuk semua project yang berjalan di ci.bazel.build dijalankan, menggunakan biner Bazel yang dibangun secara bawaan, dan merilis biner. Project yang akan terpengaruh oleh perubahan yang dapat menyebabkan gangguan akan diberi tahu.

Saat kandidat rilis dikeluarkan, project Google lainnya seperti TensorFlow akan diuji pada suite pengujian lengkapnya menggunakan biner kandidat rilis. Jika Anda memiliki project penting yang menggunakan Bazel, sebaiknya buat proses pengujian otomatis yang melacak kandidat rilis saat ini, dan melaporkan setiap regresi.