การกำหนดเวอร์ชันที่เผยแพร่

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

เวอร์ชันหลักแต่ละเวอร์ชันจะกลายเป็นสาขาการพัฒนาแยกต่างหากเมื่อเปิดตัว คุณจะรับการแก้ไขข้อบกพร่องที่สำคัญในสาขานั้นได้โดยไม่ต้องอัปเดตเป็นรุ่น Bazel ก่อน ฟีเจอร์เพิ่มเติมใน Branch ของเวอร์ชันหลักจะกลายเป็นเวอร์ชันย่อย และเวอร์ชันสูงสุดใน Branch จะเป็นเวอร์ชันที่รองรับ

รุ่น Bazel แต่ละรุ่นจะจับคู่กับรายการเวอร์ชันของกฎที่แนะนำซึ่งทำงานร่วมกันและมีความเข้ากันได้แบบย้อนหลังในแต่ละสาขาอย่างเข้มงวด

รุ่น LTS

รุ่น LTS คือเวอร์ชันหลัก (เช่น 4.0) ที่รองรับเป็นเวลา 3 ปีหลังจากการเปิดตัว เวอร์ชันหลักจะเผยแพร่ทุกๆ 9 เดือนโดยประมาณ

การพัฒนาอย่างต่อเนื่องใน Branch ของรุ่นส่งผลให้เกิดเวอร์ชันย่อย

โดยคุณจะเลือกปักหมุดโปรเจ็กต์ไว้ที่รุ่นหลักและอัปเดตเป็นเวอร์ชันใหม่ได้ตามเวลาที่คุณสะดวก วิธีนี้จะช่วยให้คุณมีเวลาดูตัวอย่างการเปลี่ยนแปลง ที่กำลังจะเกิดขึ้นและปรับตัวตามการเปลี่ยนแปลงดังกล่าวล่วงหน้า

การเปิดตัวแบบทีละขั้น

การเปิดตัวแบบต่อเนื่องจะตัดออกจากสาขาหลักของ Bazel เป็นระยะๆ ช่วงเวลาการเผยแพร่นี้เกี่ยวข้องกับการเผยแพร่ตัวอย่างรุ่นหลักรุ่นถัดไปของ Bazel อย่างต่อเนื่อง ซึ่งสอดคล้องกับรุ่นของ Blaze ภายในของ Google

โปรดทราบว่ารุ่นที่เปิดตัวใหม่อาจมีการเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบซึ่งใช้งานกับรุ่นก่อนหน้าไม่ได้

มีการทดสอบรุ่น Rolling ด้วยชุดทดสอบของ Bazel ใน Bazel CI และชุดทดสอบภายในของ Google ระบบอาจใช้แฟล็กที่ใช้ร่วมกันไม่ได้เพื่อลดความยุ่งยากในการย้ายข้อมูลไปยังฟังก์ชันการทำงานใหม่ แต่ลักษณะการทำงานเริ่มต้นอาจเปลี่ยนแปลงเมื่อมีการเปิดตัวรุ่นใดก็ได้ (คุณยังสามารถใช้การเปิดตัวทีละรุ่นเพื่อ ดูตัวอย่าง LTS เวอร์ชันถัดไปได้ด้วย ตัวอย่างเช่น 5.0.0-pre.20210604.6 อิงตามตัวเลือกผู้สมัครในวันที่ 04-06-2021 และแสดงถึงเป้าหมายที่จะนำไปสู่การเผยแพร่ 5.0 LTS)

คุณดาวน์โหลดรุ่นที่เปิดตัวล่าสุดได้จาก GitHub หรือจะตั้งค่า Bazelisk เวอร์ชัน 1.9.0 (หรือใหม่กว่า) ให้ใช้ชื่อเวอร์ชันที่เจาะจงหรือตัวระบุ "Roll" ซึ่งใช้รุ่นล่าสุด ดูรายละเอียดเพิ่มเติมได้ที่เอกสาร Bazelisk

กำลังอัปเดตเวอร์ชัน