Bazel の構成に関する 2021 年のロードマップ

最終確認日: 2021 年 1 月 25 日 (更新履歴)

問い合わせ先: gregestren

ディスカッション: 構成のロードマップ: ディスカッション

以前のロードマップ

  • 2020 年(年末レビュー付き)
  • 2019 年(年末レビュー付き)
  • 2018 年

目標

$ bazel build //:all プロジェクトやプラットフォームに関係なく、機能する

  • ビルドにコマンドライン フラグは必要ありません。
  • 各ターゲットは正しい設定(android_binary は正しい NDK を使用するなど)を自動的に使用します。
  • 複数のプラットフォーム向けに簡単にビルドできます。
  • ビルドは、特にグラフサイズとアクション キャッシュに関して、適切にスケーリングされます。

cqueryStarlark configuration、 および select()もサポートしています。

ロードマップ

日付は、問題の複雑さとデベロッパーの可用性に関する Google の理解に基づいて概算で示されています。2021 年には、一度に少数のプロジェクトに注力する予定です。正確な予測を行うため、優先度の高い作業にのみ ETA を設定します。

プラットフォーム

2021 年第 3 四半期Android ルールで新しい platforms API 進捗中#11749

  • これは、2021 年初めの Google の最優先事項です。

2021 年第 3 四半期ビルドで複数の実行 プラットフォームをサポートする 進捗中#11748

一時停止C++ ルールで新しい platformsfall APIを使用する 進捗中#6516

  • これは Android プラットフォームでブロックされています。簡単なフラグ切り替えで有効にできます。

一時停止マルチプラットフォーム ターゲット 未開始

  • ターゲットで複数のプラットフォーム向けにビルドすることを宣言できるようにする
  • ユーザー リクエストによりここに記載

一時停止--cpu と関連フラグを非推奨にして削除する 未開始

  • これは、すべてのルールをプラットフォームに移行することから生じる、野心的な目標です。

効率性

2021試験運用版の Bazel モードで クロスプラットフォームの Java コンパイルをキャッシュする 進捗中#6526

  • マルチプラットフォーム ビルドの速度を向上させる
  • 割り当てが不足しているため、進捗が遅い