Roadmap Bazel Build API 2021

Terakhir diverifikasi: 09-04-2021 (histori pembaruan)

Kontak: comius

Diskusikan: Membangun peta jalan API: diskusi

Cakupan

Tim Build API mencakup penerapan aturan native dan API native yang diekspos ke Starlark.

Sasaran

Semua aturan diterapkan di Starlark dan diserahkan kepada tim yang menguasai bahasa tertentu. Menghapus logika khusus bahasa dari inti Bazel.

Aturan Java

Aturan Java akan ditulis ulang terlebih dahulu ke Starlark dan diuji secara internal pada basis kode yang besar. Setelah itu, library akan dirilis ke Bazel.

Kuartal 1 2021

  • Meningkatkan kualitas sandwich Java, sehingga memungkinkan penulisan ulang aturan Java yang ada. SELESAI

Kuartal 2 2021

  • Meningkatkan dukungan Starlark untuk pustaka native di Java. SEDANG BERLANGSUNG
  • Meningkatkan dukungan java_common untuk plugin dan IDE - proposal Java common refactoring. SEDANG BERLANGSUNG
  • Aturan java_library di-Starlark-kan. SEDANG BERLANGSUNG

Pertengahan 2021

  • Aturan java_binary dan java_test di-Starlark-kan.
  • Aturan java_import dan java_plugin di-Starlark-kan.

Musim Gugur 2021

  • Starlarkifikasi java_*_proto_library
  • Aturan java yang tersisa diubah menjadi Starlark: java_package_configuration, java_runtime, java_toolchain.

2022

  • Starlarkifikasi java_common module.

Aturan C++

Sebelum aturan C++ dapat ditulis ulang di Starlark, beberapa pembersihan internal diperlukan. Setelah itu, aturan C++ akan ditulis ulang menjadi Starlark sedikit demi sedikit menggunakan fungsionalitas bawaan. API untuk aturan C++ tidak akan dapat diakses dari file .bzl hingga cc_module ditulis ulang di Starlark juga.

Kuartal 1 2021

  • Dukungan modul Clang, TIDAK DIDUKUNG*
  • dan dukungan Sertakan pemindaian, peningkatan performa yang diharapkan dari kedua DIHAPUS*
  • *Kami memerlukan lebih banyak data untuk mengevaluasi apakah modul benar-benar diperlukan untuk meningkatkan performa.

Kuartal 2 2021

  • Aturan Go internal sedang dalam proses Starlarkifikasi IN PROGRESS
  • Aturan Objective-C objc_library dan objc_import serta kode native yang terkait dengannya sedang dalam proses Starlarkifikasi DALAM PROGRES

Musim Gugur 2021 dan awal 2022

  • cc_binary, cc_test, dan cc_library di-Starlark-kan

2022

  • Starlarkifikasi aturan C++ lainnya (fdo_profile, cc_import, cc_toolchain, cc_toolchain_suite, fdo_prefetch_hints, cc_toolchain_alias, cc_libc_top_alias, cc_host_toolchain_alias, +2)
  • Starlarkifikasi cc_common module

Lain-lain

Pertengahan 2021