Pembuatan Versi Rilis

Bazel 4.0 dan yang lebih baru menyediakan dukungan untuk dua jalur rilis: rilis dukungan jangka panjang (LTS) dan rilis berkelanjutan. Halaman ini membahas pembuatan versi di Bazel, jenis rilis, dan manfaat rilis tersebut bagi pengguna dan kontributor Bazel.

Memahami pembuatan versi di Bazel

Bazel menggunakan skema pembuatan versi semantik major.minor.patch.

  • Rilis utama berisi fitur yang tidak kompatibel dengan rilis sebelumnya.
  • Rilis minor berisi fitur baru yang kompatibel dengan versi lama.
  • Rilis patch berisi perubahan kecil dan perbaikan bug.

Menggunakan versi 3.5.1 sebagai contoh, rilis baru dari setiap jenis akan menghasilkan nomor versi berikut:

  • Utama: 4,0
  • Kecil: 3,6
  • Patch: 3.5.2

Siklus rilis Bazel

Bazel terus memublikasikan rilis berkelanjutan. Setiap versi utama adalah rilis LTS. Anda dapat memilih untuk mengikuti ritme rilis, yaitu mengupdate dari satu rilis LTS ke rilis berikutnya, atau mengupdate dengan setiap rilis versi minor.

Gambar menampilkan rilis berkelanjutan dan rilis LTS, serta dukungan yang diharapkan untuk masing-masing rilis.

Roadmap

Gambar 1. Rilis berkelanjutan dan LTS.

Cabang rilis

Setiap versi utama menjadi cabang pengembangan terpisah saat rilis. Anda dapat menerima perbaikan bug kritis di cabang tersebut tanpa harus mengupdate rilis Bazel terlebih dahulu. Fitur tambahan pada cabang versi utama Anda akan menjadi rilis minor dan versi tertinggi di cabang tersebut adalah versi yang didukung.

Setiap rilis Bazel dipasangkan dengan daftar versi aturan yang direkomendasikan yang berfungsi bersama, dan terdapat kompatibilitas mundur yang ketat dalam setiap cabang.

Rilis LTS

Rilis LTS adalah versi utama (seperti, 4.0) yang didukung selama 3 tahun setelah dirilis. Versi utama dirilis kira-kira setiap sembilan bulan.

Pengembangan yang sedang berlangsung pada cabang rilis menghasilkan versi minor.

Anda dapat memilih untuk membatasi project ke rilis utama dan mengupdate ke versi yang lebih baru sesuai waktu Anda. Hal ini memberi Anda waktu untuk melihat pratinjau perubahan yang akan datang dan beradaptasi dengan perubahan tersebut terlebih dahulu.

Rilis berkelanjutan

Rilis yang diluncurkan secara berkala dipotong dari cabang utama Bazel. Ritme rilis ini melibatkan pengiriman berkelanjutan rilis pratinjau dari versi Bazel utama berikutnya, yang disinkronkan dengan rilis Blaze internal Google.

Perhatikan bahwa rilis berkelanjutan baru dapat berisi perubahan yang dapat menyebabkan gangguan yang tidak kompatibel dengan rilis sebelumnya.

Rilis berkelanjutan diuji pada test suite Bazel pada Bazel CI dan rangkaian pengujian internal Google. Tanda yang tidak kompatibel dapat digunakan untuk meringankan beban migrasi ke fungsi baru, tetapi perilaku default dapat berubah dengan rilis berkelanjutan. (Anda juga dapat menggunakan rilis berkelanjutan untuk melihat pratinjau versi LTS berikutnya. Misalnya, 5.0.0-pre.20210604.6 didasarkan pada potongan kandidat pada 04-06-2021 dan menunjukkan pencapaian menuju rilis 5.0 LTS.)

Anda dapat mendownload rilis berkelanjutan terbaru dari GitHub. Atau, Anda dapat menyiapkan Bazelisk v1.9.0 (atau yang lebih baru) untuk menggunakan nama versi tertentu atau ID “rolling”, yang menggunakan rilis berkelanjutan terbaru. Untuk mengetahui detail selengkapnya, lihat dokumentasi Bazelisk.

Mengupdate versi