Lộ trình về khả năng thiết lập Bazel năm 2021

Lần xác minh gần đây nhất: 25-01-2021 (nhật ký cập nhật)

Đầu mối liên hệ: gregestren

Thảo luận: Lộ trình về khả năng định cấu hình: thảo luận

Lộ trình trước

Mục tiêu

$ bazel build //:all chỉ hoạt động, đối với mọi dự án và nền tảng.

  • Các bản dựng không yêu cầu cờ hiệu dòng lệnh.
  • Mỗi mục tiêu tự động sử dụng đúng chế độ cài đặt (chẳng hạn như android_binary sử dụng đúng NDK).
  • Dễ dàng xây dựng cho nhiều nền tảng.
  • Xây dựng tỷ lệ tốt, đặc biệt là kích thước biểu đồ không bao gồm kích thước biểu đồ và lưu hành động vào bộ nhớ đệm.

Chúng tôi cũng hỗ trợ cquery, Starlark configurationselect().

Lộ trình

Ngày này là gần đúng dựa trên hiểu biết tốt nhất của chúng tôi về mức độ phức tạp của vấn đề và khả năng đáp ứng của nhà phát triển. Năm 2021, chúng tôi dự định sẽ tập trung nhiều nỗ lực hơn vào ít dự án hơn cùng một lúc. Chúng tôi sẽ chỉ thiết lập ETA cho những công việc chủ động được ưu tiên để đáp ứng đúng kỳ vọng.

Nền tảng

Quý 3 năm 2021Các quy tắc Android sử dụng API nền tảng mới TRONG TIẾN TRÌNH (#11749)

  • Đây là ưu tiên chính của chúng tôi cho đầu năm 2021.

Quý 3 năm 2021Các bản dựng hỗ trợ nhiều nền tảng thực thi TRONG TIẾN TRÌNH (#11748)

Các quy tắc C++ bị tạm dừng sử dụng API nền tảng mới TRONG TIẾN TRÌNH (#6516)

  • Hành động này bị chặn trên các nền tảng Android. Chúng ta có thể bật tính năng này bằng một thao tác lật cờ đơn giản.

bị tạm dừngMục tiêu đa nền tảng KHÔNG BẮT ĐẦU

  • Cho phép mục tiêu khai báo rằng cần xây dựng cho nhiều nền tảng
  • Được liệt kê ở đây do yêu cầu của người dùng

tạm dừngKhông dùng nữa và xoá --cpu cũng như các cờ liên quan KHÔNG BẮT ĐẦU

  • Đây là mục tiêu kỳ vọng nằm ngoài việc di chuyển tất cả các quy tắc sang nền tảng.

Hiệu quả

2021Một chế độ Bazel thử nghiệm lưu vào bộ nhớ đệm nội dung biên dịch Java trên nhiều nền tảng IN PROGRESS (#6526)

  • Cải thiện tốc độ xây dựng trên nhiều nền tảng
  • Bị phân bổ thiếu nên tiến độ rất chậm