ยืนยันครั้งล่าสุด: 09-04-2021 (ประวัติการอัปเดต)
ผู้ติดต่อ: comius
อภิปราย: สร้างแผนกลยุทธ์ API: การพูดคุย
ขอบเขต
ทีม Build API รับผิดชอบการใช้งานกฎแบบเนทีฟและ API แบบเนทีฟที่แสดงแก่ Starlark
เป้าหมาย
นำกฎทั้งหมดใน Starlark มาใช้และส่งต่อให้กับทีมที่มีความเชี่ยวชาญในภาษานั้นๆ ลบตรรกะเฉพาะภาษาออกจากแกนหลักของ Bazel
กฎ Java
ก่อนอื่น กฎของ Java จะเขียนใหม่ไปยัง Starlark และทดสอบภายในกับฐานโค้ดขนาดใหญ่ หลังจากนั้นระบบจะปล่อยภาพไปยัง Bazel
ไตรมาส 1 ปี 2021
- ปรับปรุง Java sandwich เพื่อให้เขียนกฎ Java ที่มีอยู่ใหม่ได้ เสร็จสิ้น
ไตรมาส 2 ปี 2021
- ปรับปรุงการรองรับ Starlark สำหรับไลบรารีเนทีฟใน Java อยู่ระหว่างดำเนินการ
- ปรับปรุงการรองรับ
java_common
สำหรับปลั๊กอินและ IDE - ข้อเสนอการเปลี่ยนโครงสร้างภายในโค้ดทั่วไปของ Java อยู่ระหว่างดำเนินการ - กฎ java_library คือ Starlarkified อยู่ระหว่างดำเนินการ
กลางปี 2021
- กฎ java_binary และ java_test จะเป็นแบบ Starlarkified
- กฎ java_import และ java_plugin จะเป็น Starlarkified
ฤดูใบไม้ร่วง 2021
- การติดดาวของ java_*_proto_library
- กฎ Java ที่เหลืออยู่คือ Starlarkified: java_package_configuration, java_runtime, java_toolchain
2022
- การ Starlarkification ของ java_commonโมดูล
กฎ C++
ก่อนที่จะเขียนกฎ C++ ใหม่ใน Starlark จำเป็นต้องมีการล้างข้อมูลภายใน หลังจากนั้นกฎ C++ จะเขียนใหม่เป็น Starlark ออกทีละชิ้นโดยใช้ฟังก์ชันในตัว ไฟล์ .bzl จะเข้าถึง API สำหรับกฎ C++ ไม่ได้จนกว่าจะมีการเขียน cc_module ใหม่ใน Starlark เช่นกัน
ไตรมาส 1 ปี 2021
- การรองรับโมดูล Clang, DROPPED*
- และรวมการสแกน การปรับปรุงประสิทธิภาพที่คาดหวังจากทั้ง DROPPED*
- *เราต้องการข้อมูลเพิ่มเติมเพื่อประเมินว่าโมดูลเป็นสิ่งจำเป็นในการปรับปรุงประสิทธิภาพหรือไม่
ไตรมาส 2 ปี 2021
- กฎ Go ภายในมีการติดดาวอยู่ระหว่างดำเนินการ
- กฎ Objective-C objc_library และ objc_import และโค้ดแบบเนทีฟที่เกี่ยวข้องกับกฎทั้ง 2 นี้เป็นแบบ Starlarkified อยู่ระหว่าง
ฤดูใบไม้ร่วง 2021 และเริ่มต้นปี 2022
- cc_binary, cc_test และ cc_library คือ Starlarkified
2022
- การติดดาวของกฎ 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)
- การติดดาวของโมดูล cc_common
อื่นๆ
กลางปี 2021
- Aspect สามารถเผยแพร่ด้านอื่นๆ ได้ - ข้อเสนอ Aspects Propagating Other Aspects อยู่ระหว่างดำเนินการ
- ปรับปรุงเฟรมเวิร์กการทดสอบของ Starlark