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

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: Xây dựng lộ trình API: thảo luận

Phạm vi

Nhóm xây dựng API sẽ bao gồm việc triển khai quy tắc gốc và API gố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ể đó. Loại bỏ logic riêng theo ngôn ngữ khỏi cốt lõi của Bazel.

Các quy tắc Java

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

Quý 1 năm 2021

  • Cải thiện Java sandwich, giúp bạn có thể ghi 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 trình bổ trợ và IDE – đề xuất tái cấu trúc phổ biến Java. ĐANG TIẾN HÀNH
  • Quy tắc java_library được Starlarkified. ĐANG TIẾN HÀNH

Giữa năm 2021

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

Thu năm 2021

  • Xác định dấu sao của java_*_proto_library
  • Các quy tắc java còn lại là Starlarkified: java_package_configure, java_runtime, java_toolchain.

2022

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

Quý 1 năm 2021

  • Hỗ trợ các mô-đun Clang, DROPPED*
  • Bao gồm tính năng hỗ trợ quét, cải thiện hiệu suất dự kiến từ cả DROPPED*
  • *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 định cấu hình IN PROGRESS
  • Các quy tắc Objective-C objc_library và objc_import và mã gốc liên quan đến chúng được Starlarkified TRONG TIẾN TRÌNH

Thu năm 2021 và đầu năm 2022

  • cc_binary, cc_test và cc_library được Starlarkified

2022

  • Xác định dấu sao 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)
  • Xác định rõ mô-đun cc_common

Tính năng khác

Giữa năm 2021