Kebijakan Rilis

Bazel maintains a model rilis Dukungan Jangka Panjang (LTS), dengan versi utama dirilis setiap sembilan bulan dan versi minor 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 versi baru Bazel biasanya dibuat pada awal setiap bulan. Pekerjaan ini dilacak oleh a bug rilis di GitHub yang menunjukkan tanggal rilis target, 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 di Buildkite.

Kandidat rilis diumumkan di bazel-discuss. Selama beberapa hari berikutnya, tim Bazel memantau laporan bug komunitas untuk mengetahui regresi dalam kandidat.

Merilis

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

Fitur baru tidak di-cherry-pick ke kandidat rilis setelah dipotong. Selain itu, jika fitur baru mengalami bug, fitur tersebut dapat di-roll back dari kandidat rilis. Hanya bug yang berpotensi berdampak besar atau merusak build rilis yang diperbaiki dalam kandidat rilis setelah dipotong.

Rilis hanya dirilis pada hari di mana hari berikutnya adalah hari kerja.

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

Pengujian

Build harian semua project yang berjalan di ci.bazel.build dijalankan, menggunakan biner Bazel yang dibuat di head, dan biner rilis. Project yang akan terpengaruh oleh perubahan yang melanggar akan diberi tahu.

Saat kandidat rilis dikeluarkan, project Google lainnya seperti TensorFlow akan diuji pada rangkaian 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 laporkan regresi apa pun.