Bazel のインストール
Ubuntu、Windows、macOS に Bazel をインストールする場合は、Bazelisk を使用することをおすすめします。適切なバージョンの Bazel が自動的にダウンロードされ、インストールされます。現在の作業ディレクトリに応じて Bazel のバージョンを切り替える必要がある場合や、Bazelisk を最新リリースに常に更新する場合は、Bazelisk を使用します。
詳細については、公式の README をご覧ください。
Bazel のアップデート
Bazel には下位互換性ポリシーがあります(作成者である場合は、互換性のない変更のロールアウトのガイダンスをご覧ください)。このページでは、互換性のない変更に備えてプロジェクトをテストして移行する方法と、互換性のない変更の作成者にフィードバックを提供する方法に関するベスト プラクティスの概要を示します。
Bazelisk を使用した Bazel バージョンの管理
Bazelisk は、Bazel のバージョンの管理に役立ちます。
Bazelisk では、次のことができます。
- Bazel を最新の LTS リリースまたはローリング リリースに自動更新する。
- .bazelversion ファイルで指定された Bazel バージョンでプロジェクトをビルドします。このファイルをバージョン管理にチェックインして、ビルドの再現性を確保します。
- 互換性のない変更がないかプロジェクトを移行する(上記参照)
- リリース候補を簡単に試す
おすすめの移行プロセス
LTS リリースのマイナー アップデート内で、現在のリリースとの互換性を損なうことなく、次のリリースに向けてプロジェクトを準備することができます。ただし、LTS のメジャー バージョン間では下位互換性のない変更が行われる場合があります。
メジャー バージョン間で移行するには、次の手順に従います。
- 次のバージョンに移行する方法については、リリースノートをご覧ください。
- 互換性のない重大な変更には、関連する
--incompatible_*
フラグと、対応する GitHub の問題が必要です。- 移行ガイダンスは、関連する GitHub の問題で入手できます。
- 互換性のない変更の一部の移行にツールを使用できます。たとえば、buildifier です。
- 移行に関する問題を報告するには、関連する GitHub の問題を報告してください。
移行後も、次のメジャー リリースまで下位互換性を心配することなく、プロジェクトを構築できます。