Bazelisk を使用した Bazel のインストール / 更新

問題を報告する ソースを表示 Nightly · 8.4 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

Bazel のインストール

Bazelisk は、Ubuntu、Windows、macOS に Bazel をインストールするおすすめの方法です。適切なバージョンの Bazel が自動的にダウンロードされ、インストールされます。現在の作業ディレクトリに応じて Bazel の異なるバージョンを切り替える必要がある場合や、Bazel を常に最新リリースに更新しておく必要がある場合は、Bazelisk を使用します。

詳細については、公式の README をご覧ください。

Bazel の更新

Bazel には下位互換性ポリシーがあります(互換性のない変更のロールアウトに関するガイダンスについては、こちらをご覧ください)。このページでは、今後の互換性のない変更を使用してプロジェクトをテストして移行する方法と、互換性のない変更の作成者にフィードバックを提供する方法に関するベスト プラクティスについて説明します。

Bazelisk を使用した Bazel バージョンの管理

Bazelisk は、Bazel のバージョンを管理するのに役立ちます。

Bazelisk では次のことができます。

  • Bazel を最新の LTS またはローリング リリースに自動更新します。
  • .bazelversion ファイルで指定された Bazel バージョンを使用してプロジェクトをビルドします。ビルドの再現性を確保するため、そのファイルをバージョン管理にチェックインします。
  • 互換性のない変更(上記を参照)のためにプロジェクトの移行を支援する
  • リリース候補を簡単に試す

推奨される移行プロセス

LTS リリースのマイナー アップデートでは、現在のリリースとの互換性を損なうことなく、次のリリースに向けてプロジェクトを準備できます。ただし、メジャー LTS バージョン間には下位互換性のない変更が含まれている可能性があります。

あるメジャー バージョンから別のメジャー バージョンに移行するには、次の手順を行います。

  1. リリースノートで、次のバージョンに移行する方法に関するアドバイスを確認してください。
  2. 下位互換性のない大きな変更には、関連する --incompatible_* フラグと対応する GitHub の問題が必要です。
    • 移行ガイドは、関連する GitHub の問題で入手できます。
    • 互換性のない変更の一部については、移行用のツールが用意されています。例: buildifier
    • 移行に関する問題は、関連する GitHub の問題にコメントして報告してください。

移行後、次のメジャー リリースまでは、下位互換性を気にすることなくプロジェクトを構築できます。