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