Lộ trình về bản dựng Bazel API 2021

Báo cáo vấn đề Xem nguồn Nightly · 8.0 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Lần xác minh gần đây nhất: 09/04/2021 (nhật ký cập nhật)

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

Thảo luận: Lộ trình xây dựng API: thảo luận

Phạm vi

Nhóm API bản dựng đang đề cập đến việc triển khai quy tắc gốc và API gốc được hiển thị cho Starlark.

Mục tiêu

Triển khai tất cả quy tắc trong Starlark và chuyển giao cho các nhóm chuyên về ngôn ngữ cụ thể. Xoá logic dành riêng cho ngôn ngữ khỏi lõi của Bazel.

Quy tắc Java

Trước tiên, các quy tắc Java sẽ được viết lại thành Starlark và kiểm thử nội bộ trên một cơ sở mã lớn. Sau đó, các tệp này sẽ được phát hành cho Bazel.

Quý 1 năm 2021

  • Cải thiện bánh sandwich Java, cho phép viết lại các quy tắc Java hiện có. XONG

Quý 2 năm 2021

  • Cải thiện khả năng hỗ trợ Starlark cho thư viện gốc trong Java. ĐANG TIẾN HÀNH
  • Cải thiện khả năng hỗ trợ java_common cho các trình bổ trợ và IDE – đề xuất tái cấu trúc chung của Java. ĐANG TIẾN HÀNH
  • Quy tắc java_library được Starlark hoá. ĐANG TIẾN HÀNH

Giữa năm 2021

  • Các quy tắc java_binary và java_test được Starlark hoá.
  • Các quy tắc java_import và java_plugin được Starlark hoá.

Mùa thu năm 2021

  • Starlarkification của java_*_proto_library
  • Các quy tắc java còn lại được Starlarkify: java_package_configuration, java_runtime, java_toolchain.

2022

  • Starlarkification của mô-đun java_common.

Quy tắc C++

Trước khi có thể viết lại các quy tắc C++ trong Starlark, bạn cần phải dọn dẹp một số nội dung nội bộ. Sau đó, các quy tắc C++ sẽ được viết lại từng phần cho Starlark bằng cách sử dụng chức năng tích hợp. Bạn sẽ không thể truy cập API cho các quy tắc C++ từ các tệp .bzl cho đến khi cc_module được viết lại trong Starlark.

Quý 1 năm 2021

  • Hỗ trợ mô-đun Clang, BỎ*
  • và tính năng hỗ trợ Thêm tính năng quét, dự kiến sẽ cải thiện hiệu suất của cả hai ĐÃ BỎ*
  • *Chúng tôi cần thêm dữ liệu để đánh giá xem liệu mô-đun có thực sự cần thiết để cải thiện hiệu suất hay không.

Quý 2 năm 2021

  • Quy tắc Go nội bộ được Starlark hoá ĐANG TIẾN HÀNH
  • Các quy tắc Objective-C objc_library và objc_import và mã gốc liên quan đến các quy tắc này được Starlark hoá ĐANG TIẾN HÀNH

Mùa thu năm 2021 và đầu năm 2022

  • cc_binary, cc_test và cc_library được Starlark hoá

2022

  • Chuyển đổi các quy tắc C++ khác sang Starlark (fdo_profile, cc_import, cc_toolchain, cc_toolchain_suite, fdo_prefetch_hints, cc_toolchain_alias, cc_libc_top_alias, cc_host_toolchain_alias, +2)
  • Starlarkification của mô-đun cc_common

Khác

Giữa năm 2021