Lansman Modeli

Sorun bildir Kaynağı görüntüle Nightly · 7.4 . 7.3 · 7.2 · 7,1 · 7,0 · 6,5

Orijinal blog yayınında açıklandığı gibi, Bazel 4.0 ve sonraki sürümler iki sürüm kanalı için destek sağlar: sürekli sürümler ve uzun süreli destek (LTS) sürümleri. Bu sayfada en yeni Bazel'ın sürüm modeli hakkında bilgi edinin.

Sürüm oluşturma

Bazel, ana.alt.yama Anlamsal Sürüm Oluşturma şemasını kullanır.

  • Ana sürüm, önceki sürümlerle uyumlu olmayan özellikler içerir. geri bildirim alırsınız. Her ana Bazel sürümü bir LTS sürümüdür.
  • Ara sürümler, geriye dönük uyumlu hata düzeltmeleri ve ana daldan geri bağlanan özellikleri içerir.
  • Yama sürümü, kritik hata düzeltmeleri içerir.

Ayrıca, yayın öncesi sürümler kısa çizgi ve tarih sonekini bir sonraki ana sürüm numarasına ekleyin.

Örneğin, her türün yeni bir sürümü aşağıdaki sürüm numaralarına neden olur:

  • Büyük: 6.0.0
  • Küçük: 6.1.0
  • Yama: 6.1.2
  • Yayın öncesi: 7.0.0-pre.20230502.1

Destek aşamaları

Her büyük Bazel sürümü için dört destek aşaması vardır:

  • Devamlı: Bu ana sürüm hâlâ ön sürüm aşamasındadır. Bazel ekibi, HEAD'den sürekli sürümler yayınlar.
  • Etkin: Bu ana sürüm, mevcut etkin LTS sürümüdür. Bazel ekibi önemli özellikleri ve hata düzeltmelerini küçük sürümlere geri aktarıyor.
  • Bakım: Bu ana sürüm, bakımda olan eski bir LTS sürümüdür. yatırım yapmanız önemlidir. Bazel ekibi yalnızca güvenlik sorunları ve işletim sistemi uyumluluğu sorunları var.
  • Desteği sonlandırıldı: Bazel ekibi artık bu büyük sürüm için destek sağlamıyor. Tüm kullanıcıların yeni Bazel LTS sürümlerine geçmesi gerekiyor.

Yayın sıklığı

Bazel, iki sürüm kanalı için düzenli olarak sürüm yayınlar.

Periyodik sürümler

  • Periyodik sürümler Google Blaze sürümüyle koordine edilir ve yayınlanır her iki haftada bir HEAD adlı feed'den geliyor. Yeni Bazel LTS'nin önizlemesi kullanabilirsiniz.
  • Periyodik sürümler uyumlu olmayan değişiklikler gönderebilir. Önemli ve önemli değişiklikler için uyumsuz işaretler önerilir. Uyumsuz değişikliklerin kullanıma sunulması geri uyumluluk politikamıza uygun olmalıdır.

LTS sürümleri

  • Büyük sürüm: Yeni bir LTS sürümünün, HEAD'den yaklaşık 12 ayda bir çıkarılması bekleniyor. Yeni bir LTS sürümü kullanıma sunulduğunda hemen Etkin aşamaya girer ve önceki LTS sürümü Bakım aşamasına girer.
  • Küçük sürüm: Active LTS kanalındaki yeni küçük sürümlerin 2 ayda bir yayınlanacaktır.
  • Yama sürümü: Etkin ve Bakım aşamalarındaki LTS sürümleri için kritik hata düzeltmeleriyle ilgili yeni yama sürümlerinin isteğe bağlı olarak yayınlanması beklenir.
  • Bazel LTS sürümü, 2 yıllık bakım aşaması.

Planlanan sürümler için lütfen GitHub'daki sürüm sorunlarını inceleyin.

Destek matrisi

LTS sürümü Destek aşaması Son sürüm Destek sonu
Bazel 7 Daimi GitHub sürüm sayfasını kontrol edin Yok
Bazel 6 Etkin 6.4.0 Aralık 2025
Bazel 5 Bakım 5.4.1 Ocak 2025
Bazel 4 Bakım 4.2.4 Ocak 2024

Tüm Bazel sürümleri sürüm sayfasını ziyaret edin.

Yayın prosedürü ve politikalar

Devamlı sürümler için süreç basittir: Yaklaşık iki haftada bir, Google'ın dahili Blaze sürümüyle aynı temele uygun yeni bir sürüm oluşturulur. Hızlı yayın planından dolayı hiçbir değişikliği geri aktarmayız. kullanıma sunmuş olursunuz.

LTS sürümlerinde aşağıdaki prosedür ve politikalar uygulanır:

  1. Yayın için temel bir taahhüt belirleyin.
    • Yeni bir büyük LTS sürümü için ana dalın HEAD'i temel taahhüttür.
    • Bir küçük sürüm veya yama sürümü için referans kaydetme, aynı LTS sürümünün mevcut en son sürümüne sahip olmalıdır.
  2. Referans değerden release-<version> adında bir sürüm dalı oluşturun. kaydetmez.
  3. Değişiklikleri, yayın dalına PR'ler aracılığıyla geri taşıyın.
    • Topluluk, belirli taahhütlerin geri taşınmasını önererek yanıt verebilir. "@bazel-io flag" ilgili GitHub sorunları veya PR'leri üzerinden bunları potansiyel olarak işaretlemek için Bazel ekibi bunları önceliklendiriyor ve bunları test edip etmeyeceklerine kaydetmeleridir.
    • Yalnızca ana daldaki geriye dönük uyumlu taahhütler geriye aktarılabilir. Birleştirme çakışmalarını çözmek için yapılan küçük ek değişiklikler kabul edilir.
  4. Sürüm yayınlamayı engelleyen sorunları tespit edin ve sürüm dalında bulunan sorunları düzeltin.
  5. Tüm özellikler bilindiğinde sürüm dalından yeni bir sürüm adayı oluşturun ve yayın engelleyiciler giderilmiştir.
    • Yayın adayı şu tarihte duyurulacaktır: bazel-tartı, Bazel ekibi, adayla ilgili topluluk hata raporlarını takip ediyor.
    • Yeni sürüm yayınlamayı engelleyen öğeler tespit edilirse son adıma geri dönün ve tüm sorunları çözdükten sonra yeni bir sürüm adayı oluşturun.
    • İlk sürüm adayı oluşturulduktan sonra sürüm dalına yeni özelliklerin eklenmesine izin verilmez.
  6. Başka bir sürüm yayınlanmayacaksa sürüm adayını resmi sürüm olarak aktar engelleyiciler olduğu tespit edildi
    • Yama sürümleri için sürümü en az iki iş günü sonra yayınlayın son kişi adayı çıktı.
    • Büyük ve küçük sürümler için yayını, son yayın adayı piyasaya sürüldü, ancak bu süre bir haftadan kısa süre içinde adayı serbest bırakmalısınız.
    • Sürüm yalnızca bir sonraki günün iş günü olduğu bir günde yayınlanır.
    • Sürüm bazel-discuss'te duyurulur. Bazel ekibi, yeni sürümle ilgili topluluktaki hata raporlarını izler ve ele alır.

Regresyonları raporlayın

Kullanıcılar yeni bir Bazel sürümünde, sürüm adayında veya hatta HEAD'deki Bazel'de gerileme bulursa lütfen GitHub'da hata kaydı oluşturun. Sorunlu commit'i ikiye bölmek için Bazelisk'i kullanabilir ve bu bilgileri hata raporuna ekleyebilirsiniz.

Örneğin, derlemeniz Bazel 6.1.0 ile başarılı olur ancak 6.2.0'ın ikinci sürüm adayı ile başarısız olursa

bazelisk --bisect=6.1.0..release-6.2.0rc2 build //foo:bar

BAZELISK_SHUTDOWN veya BAZELISK_CLEAN ortam değişkenini çalışacak şekilde ayarlayabilirsiniz derleme durumunu sıfırlamak için ilgili bazel komutlarını yeniden üretebilirsiniz. Daha fazla bilgi için Bazelisk bisect özelliği ile ilgili dokümanlara göz atın.

Bölme özelliğini kullanmak için Bazelisk'i en son sürüme yükseltmeyi unutmayın.

Kural uyumluluğu

Kural yazarıysanız ve farklı standartlarla uyumluluğu korumak istiyorsanız Bazel sürümleri için lütfen Kurala Uyumluluk sayfası.