Bazel 4.0 ขึ้นไปมีการสนับสนุนสำหรับการติดตามการเผยแพร่ 2 แบบ ได้แก่ การสนับสนุนระยะยาว (LTS) และการเผยแพร่อย่างต่อเนื่อง หน้านี้จะครอบคลุมการกำหนดเวอร์ชันใน Bazel, ประเภทของการเผยแพร่ และประโยชน์ของรุ่นดังกล่าวสำหรับผู้ใช้และผู้ร่วมให้ข้อมูลของ Bazel
ทำความเข้าใจการกำหนดเวอร์ชันใน Bazel
Bazel ใช้รูปแบบการกำหนดเวอร์ชันทางอรรถศาสตร์ major.minor.patch
- รุ่นหลักมีฟีเจอร์ที่เข้ากันไม่ได้กับรุ่นก่อนหน้า
- รุ่นย่อยจะมีฟีเจอร์ใหม่ที่เข้ากันได้แบบย้อนหลัง
- การเผยแพร่แพตช์มีการเปลี่ยนแปลงเล็กน้อยและการแก้ไขข้อบกพร่อง
เมื่อใช้เวอร์ชัน 3.5.1 เป็นตัวอย่าง การเผยแพร่ใหม่ของแต่ละประเภทจะแสดงหมายเลขเวอร์ชันต่อไปนี้
- ใหญ่: 4.0
- น้อย: 3.6
- แพตช์: 3.5.2
ช่วงเปิดตัวของ Bazel
Bazel เผยแพร่การเปิดตัวทีละน้อยอย่างต่อเนื่อง เวอร์ชันหลักทุกเวอร์ชันคือ รุ่น LTS คุณอาจเลือกติดตามช่วงเวลาการเผยแพร่ เช่น อัปเดตจาก LTS รุ่นถัดไป หรืออัปเดตตามการเผยแพร่เวอร์ชันย่อยแต่ละเวอร์ชัน
รูปภาพแสดงทั้งการเผยแพร่ต่อเนื่องและ LTS และการสนับสนุนที่คาดไว้สำหรับแต่ละรายการ
รูปที่ 1 Rolling และ LTS
เผยแพร่ Branch
เวอร์ชันหลักแต่ละเวอร์ชันจะกลายเป็น Branch ของการพัฒนาที่แยกจากกันเมื่อเปิดตัว คุณสามารถรับการแก้ไขข้อบกพร่องที่สำคัญใน Bazel โดยไม่ต้องอัปเดตเป็นรุ่น Banze ทันที ฟีเจอร์เพิ่มเติมใน Branch เวอร์ชันหลักจะเป็นรุ่นย่อย และเวอร์ชันสูงสุดใน Branch คือเวอร์ชันที่รองรับ
รุ่น Bazel แต่ละรุ่นจะจับคู่กับรายการเวอร์ชันกฎที่แนะนำซึ่งทำงานร่วมกัน และมีความเข้ากันได้แบบย้อนหลังอย่างเข้มงวดในแต่ละ Branch
รุ่น LTS
รุ่น LTS เป็นเวอร์ชันหลัก (เช่น 4.0) ที่รองรับ 3 ปีหลังจากการเปิดตัว ระบบจะเผยแพร่เวอร์ชันหลักทุกๆ 9 เดือนโดยประมาณ
การพัฒนาอย่างต่อเนื่องใน Branch ของรุ่นจะทำให้เกิดเวอร์ชันย่อย
คุณเลือกปักหมุดโปรเจ็กต์เป็นรุ่นหลักและอัปเดตเป็นเวอร์ชันใหม่ตามเวลาที่คุณสะดวกได้ วิธีนี้ช่วยให้คุณมีเวลาดูตัวอย่างการเปลี่ยนแปลงที่กำลังจะเกิดขึ้นและ ปรับตัวให้เข้ากับการเปลี่ยนแปลงล่วงหน้า
การเปิดตัวทีละน้อย
การเผยแพร่แบบต่อเนื่องจะถูกตัดออกจาก Branch หลักของ Bazel เป็นระยะๆ ช่วงเวลาในการเปิดตัวนี้จะมีการนำส่งตัวอย่างของ Bazel เวอร์ชันหลักถัดไปอย่างต่อเนื่อง ซึ่งสอดคล้องกับการเปิดตัว Blaze ภายในของ Google
โปรดทราบว่าการเปิดตัวรุ่นใหม่อาจมีการเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบซึ่งใช้กับรุ่นก่อนหน้าไม่ได้
การเปิดตัวแบบต่อเนื่องได้รับการทดสอบในชุดทดสอบของ Bazel ใน Bazel CI และชุดทดสอบภายในของ Google ระบบอาจใช้แฟล็กที่ใช้ร่วมกันไม่ได้เพื่อแบ่งเบาภาระในการย้ายข้อมูลไปยังฟังก์ชันใหม่ แต่ลักษณะการทำงานเริ่มต้นอาจเปลี่ยนแปลงเมื่อเปิดตัวแล้ว (คุณยังใช้การเปิดตัวแบบต่อเนื่อง
เพื่อดูตัวอย่าง LTS เวอร์ชันถัดไปได้ด้วย ตัวอย่างเช่น 5.0.0-pre.20210604.6
อิงตามผู้สมัครที่ตัดมาในวันที่ 04-06-2021 และแสดงถึงเป้าหมายที่นำไปสู่การเผยแพร่ LTS 5.0)
คุณดาวน์โหลดการเปิดตัวเวอร์ชันล่าสุดได้จาก GitHub หรือจะตั้งค่า Bazelisk v1.9.0 (หรือใหม่กว่า) ให้ใช้ชื่อเวอร์ชันที่เจาะจงหรือตัวระบุ "Rolling" ซึ่งใช้รุ่นล่าสุด ดูรายละเอียดเพิ่มเติมได้ในเอกสารประกอบของ Bazelisk
กำลังอัปเดตเวอร์ชัน
- ดูข้อมูลเพิ่มเติมเกี่ยวกับการอัปเดตเวอร์ชัน Bazel ได้ที่การอัปเดต Bazel
- ดูข้อมูลเพิ่มเติมเกี่ยวกับการมีส่วนร่วมอัปเดตของ Bazel รุ่นใหม่ๆ ได้ที่การมีส่วนร่วมกับ Bazel