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