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

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

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

Thảo luận: Build API roadmap: discussion

Phạm vi

Nhóm Build API đang triển khai các 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ả cá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

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

Quý 1 năm 2021

  • Cải thiện Java sandwich, 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 TẠO
  • 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 Java chung. ĐANG TẠO
  • Quy tắc java_library được Starlark hoá. ĐANG TẠO

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

  • Starlark hoá java_*_proto_library
  • Các quy tắc Java còn lại được Starlark hoá: java_package_configuration, java_runtime, java_toolchain.

2022

  • Starlark hoá 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 dọn dẹp nội bộ. Sau đó, các quy tắc C++ sẽ được viết lại thành Starlark từng phần bằng cách sử dụng chức năng tích hợp sẵn. API cho các quy tắc C++ sẽ không thể truy cập được từ các tệp .bzl cho đến khi cc_module cũng được viết lại trong Starlark.

Quý 1 năm 2021

  • Hỗ trợ mô-đun Clang, ĐÃ XÓA*
  • hỗ trợ quét, cải thiện hiệu suất dự kiến từ cả hai ĐÃ XÓA*
  • *Chúng tôi cần thêm dữ liệu để đánh giá xem các 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

  • Các quy tắc Go nội bộ được Starlark hoá ĐANG TẠO
  • 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 TẠO

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

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

2022

  • Starlark hoá các quy tắc C++ khác (fdo_profile, cc_import, cc_toolchain, cc_toolchain_suite, fdo_prefetch_hints, cc_toolchain_alias, cc_libc_top_alias, cc_host_toolchain_alias, +2)
  • Starlark hoá mô-đun cc_common

Khác

Giữa năm 2021