Bazel 4.0 trở lên hỗ trợ hai kênh phát hành: bản phát hành hỗ trợ dài hạn (LTS) và bản phát hành lăn. Trang này trình bày việc tạo phiên bản trong Bazel, các loại bản phát hành và lợi ích của các bản phát hành đó đối với người dùng và cộng tác viên Bazel.
Tìm hiểu về việc tạo phiên bản trên Bazel
Bazel sử dụng lược đồ phiên bản ngữ nghĩa major.minor.patch.
- Bản phát hành chính chứa các tính năng không tương thích ngược với bản phát hành trước.
- Bản phát hành nhỏ chứa các tính năng mới có khả năng tương thích ngược.
- Bản phát hành bản vá chứa các thay đổi nhỏ và bản sửa lỗi.
Lấy phiên bản 3.5.1 làm ví dụ, một bản phát hành mới của mỗi loại sẽ dẫn đến các số phiên bản sau:
- Chính: 4.0
- Không đáng kể: 3.6
- Bản vá: 3.5.2
Chu kỳ phát hành của Bazel
Bazel liên tục phát hành các bản phát hành lăn. Mỗi phiên bản chính đều là một bản phát hành LTS. Bạn có thể chọn tuân theo tần suất phát hành – cập nhật từ bản phát hành LTS này sang bản phát hành LTS tiếp theo hoặc cập nhật theo từng bản phát hành phiên bản nhỏ.
Hình ảnh này cho thấy cả bản phát hành lăn và bản phát hành LTS, cũng như mức độ hỗ trợ dự kiến cho từng bản phát hành.
Hình 1. Bản phát hành lăn và LTS.
Nhánh phát hành
Mỗi phiên bản chính sẽ trở thành một nhánh phát triển riêng biệt khi phát hành. Bạn có thể nhận được bản sửa lỗi cho các lỗi nghiêm trọng trên nhánh đó mà không cần phải cập nhật lên bản phát hành Bazel ở đầu. Các tính năng bổ sung trên nhánh phiên bản lớn sẽ trở thành bản phát hành nhỏ và phiên bản cao nhất trên nhánh là phiên bản được hỗ trợ.
Mỗi bản phát hành Bazel được ghép nối với một danh sách các phiên bản quy tắc đề xuất hoạt động cùng nhau và có khả năng tương thích ngược nghiêm ngặt trong mỗi nhánh.
Bản phát hành LTS
Bản phát hành LTS là một phiên bản chính (chẳng hạn như 4.0) được hỗ trợ trong 3 năm sau khi phát hành. Phiên bản lớn được phát hành khoảng 9 tháng một lần.
Quá trình phát triển liên tục trên một nhánh phát hành sẽ dẫn đến các phiên bản nhỏ.
Bạn có thể chọn ghim dự án của mình vào một bản phát hành chính và cập nhật lên phiên bản mới hơn theo thời gian của riêng bạn. Nhờ đó, bạn có thời gian xem trước các thay đổi sắp tới và điều chỉnh trước cho phù hợp.
Bản phát hành lăn
Các bản phát hành lăn được cắt định kỳ từ nhánh chính của Bazel. Tốc độ phát hành này liên quan đến việc liên tục phân phối các bản phát hành xem trước của phiên bản Bazel chính tiếp theo, đồng bộ với các bản phát hành Blaze nội bộ của Google.
Xin lưu ý rằng bản phát hành lăn mới có thể chứa các thay đổi có thể gây lỗi không tương thích với các bản phát hành trước đó.
Bản phát hành lăn được kiểm thử trên bộ kiểm thử của Bazel trên Bazel CI và bộ kiểm thử nội bộ của Google. Bạn có thể sử dụng cờ không tương thích để giảm bớt gánh nặng khi di chuyển sang chức năng mới, nhưng hành vi mặc định có thể thay đổi theo bất kỳ bản phát hành lăn nào. (Bạn cũng có thể sử dụng các bản phát hành lăn để xem trước phiên bản LTS tiếp theo. Ví dụ: 5.0.0-pre.20210604.6
dựa trên bản cắt đề xuất vào ngày 4 tháng 6 năm 2021 và thể hiện một mốc quan trọng hướng tới bản phát hành LTS 5.0.)
Bạn có thể tải bản phát hành lăn mới nhất xuống từ GitHub. Ngoài ra, bạn có thể thiết lập Bazelisk v1.9.0 (hoặc phiên bản mới hơn) để sử dụng tên phiên bản cụ thể hoặc giá trị nhận dạng "rolling" (tiến hành liên tục) sử dụng bản phát hành liên tục mới nhất. Để biết thêm thông tin chi tiết, hãy xem tài liệu về Bazelisk.
Cập nhật phiên bản
- Để biết thêm thông tin về cách cập nhật phiên bản Bazel, hãy xem phần Cập nhật Bazel.
- Để biết thêm thông tin về cách đóng góp nội dung cập nhật cho các bản phát hành Bazel mới, hãy xem phần Đóng góp cho Bazel.