MODULE.bazel ファイルで使用できるメソッド。
メンバー
- archive_override
- bazel_dep
- git_override
- local_path_override
- module
- multiple_version_override
- register_execution_platforms
- register_toolchains
- single_version_override
- use_extension
- use_repo
- use_repo_rule
archive_override
None
archive_override(module_name, urls, integrity='', strip_prefix='', patches=[], patch_cmds=[], patch_strip=0)
この依存関係は、レジストリではなく、特定の場所にあるアーカイブ ファイル(zip、gzip など)から取得されることを指定します。このディレクティブはルート モジュールでのみ有効になります。つまり、モジュールが他のモジュールによって依存関係として使用されている場合、そのモジュールのオーバーライドは無視されます。
パラメータ
パラメータ | 説明 |
---|---|
module_name
|
必須 このオーバーライドを適用する Bazel モジュール依存関係の名前。 |
urls
|
string、または string の iterable(反復可能オブジェクト)必須 アーカイブの URL。http(s):// または file:// の URL を使用できます。 |
integrity
|
デフォルトは '' アーカイブ ファイルの想定されるチェックサム(Subresource Integrity 形式)。 |
strip_prefix
|
デフォルトは '' 抽出されたファイルから削除するディレクトリ接頭辞。 |
patches
|
文字列の反復可能オブジェクト。デフォルトは [] 。このモジュールに適用するパッチファイルを指すラベルのリスト。パッチファイルは、最上位プロジェクトのソースツリーに存在している必要があります。リストの順序で適用されます。 |
patch_cmds
|
文字列の反復可能オブジェクト。デフォルトは [] 。パッチ適用後に Linux/macOS で適用される Bash コマンドのシーケンス。 |
patch_strip
|
デフォルトは 0 です。これは、Unix パッチの --strip 引数と同じです。 |
bazel_dep
None
bazel_dep(name, version='', max_compatibility_level=-1, repo_name='', dev_dependency=False)
別の Bazel モジュールに対する直接的な依存関係を宣言します。
パラメータ
パラメータ | 説明 |
---|---|
name
|
必須 直接依存関係として追加するモジュールの名前。 |
version
|
デフォルトは '' 直接依存関係として追加するモジュールのバージョン。 |
max_compatibility_level
|
デフォルトは -1 直接依存関係として追加されるモジュールでサポートされる最大 compatibility_level 。モジュールのバージョンには、サポートされている最小の compatibility_level が暗黙的に含まれます。また、この属性が指定されていない場合は最大の compatibility_level も含まれます。
|
repo_name
|
デフォルトは '' この依存関係を表す外部リポジトリの名前。デフォルトでは、モジュールの名前になります。 |
dev_dependency
|
デフォルトは False true の場合、現在のモジュールがルート モジュールでない場合、または `--ignore_dev_dependency` が有効になっている場合、この依存関係は無視されます。 |
git_override
None
git_override(module_name, remote, commit='', patches=[], patch_cmds=[], patch_strip=0)
依存関係が Git リポジトリの特定の commit から取得されるように指定します。このディレクティブはルート モジュールでのみ有効になります。つまり、モジュールが他のモジュールによって依存関係として使用されている場合、そのモジュールのオーバーライドは無視されます。
パラメータ
パラメータ | 説明 |
---|---|
module_name
|
必須 このオーバーライドを適用する Bazel モジュール依存関係の名前。 |
remote
|
必須 リモートの Git リポジトリの URL。 |
commit
|
デフォルトは '' チェクアウトするコミット。 |
patches
|
文字列の反復可能オブジェクト。デフォルトは [] 。このモジュールに適用するパッチファイルを指すラベルのリスト。パッチファイルは、最上位プロジェクトのソースツリーに存在している必要があります。リストの順序で適用されます。 |
patch_cmds
|
文字列の反復可能オブジェクト。デフォルトは [] 。パッチ適用後に Linux/macOS で適用される Bash コマンドのシーケンス。 |
patch_strip
|
デフォルトは 0 です。これは、Unix パッチの --strip 引数と同じです。 |
local_path_override
None
local_path_override(module_name, path)
依存関係がローカル ディスクの特定のディレクトリから取得されるように指定します。このディレクティブはルート モジュールでのみ有効になります。つまり、モジュールが他のモジュールによって依存関係として使用されている場合、そのモジュールのオーバーライドは無視されます。
パラメータ
パラメータ | 説明 |
---|---|
module_name
|
必須 このオーバーライドを適用する Bazel モジュール依存関係の名前。 |
path
|
必須 このモジュールが存在するディレクトリのパス。 |
モジュール
None
module(name='', version='', compatibility_level=0, repo_name='', bazel_compatibility=[])
現在の Bazel リポジトリで表される Bazel モジュールの一部の属性を宣言します。これらのプロパティは、モジュールの重要なメタデータ(名前やバージョンなど)であるか、現在のモジュールとその依存関係の動作に影響します。最大 1 回呼び出してください。このモジュールがルート モジュールである場合(つまり、他のモジュールに依存しないモジュールである場合)のみ、省略できます。
パラメータ
パラメータ | 説明 |
---|---|
name
|
デフォルトは '' モジュールの名前。このモジュールがルート モジュールである場合(つまり、他のモジュールから依存されない場合)のみ省略できます。有効なモジュール名は、1)小文字(a ~ z)、数字(0 ~ 9)、ピリオド(.)、ハイフン(-)、アンダースコア(_)のみを含める必要があります。2)先頭は小文字にする必要があります。3)末尾は小文字または数字にする必要があります。 |
version
|
デフォルトは '' モジュールのバージョン。このモジュールがルート モジュールである場合(つまり、他のモジュールから依存されない場合)のみ省略できます。バージョンは緩和された SemVer 形式にする必要があります。詳細については、ドキュメントをご覧ください。 |
compatibility_level
|
デフォルトは 0 モジュールの互換性レベル。互換性のない大きな変更が導入されるたびに変更する必要があります。これは基本的に、SemVer で言うモジュールの「メジャー バージョン」ですが、バージョン文字列自体に埋め込まれているのではなく、個別のフィールドとして存在するという点が異なります。互換性レベルが異なるモジュールは、名前が異なるモジュールであるかのようにバージョン解決に参加しますが、最終的な依存関係グラフには、同じ名前で互換性レベルが異なる複数のモジュールを含めることはできません( multiple_version_override が有効な場合を除きます)。詳しくは、ドキュメントをご覧ください。 |
repo_name
|
デフォルトは '' このモジュールを表すリポジトリの名前(モジュール自体から見た名前)。デフォルトでは、リポジトリの名前はモジュールの名前です。これは、モジュール名とは異なるリポジトリ名を使用していたプロジェクトの移行を容易にするために指定できます。 |
bazel_compatibility
|
文字列の反復可能オブジェクト。デフォルトは [] 。このモジュールと互換性のある Bazel バージョンをユーザーが宣言できる Bazel バージョンのリスト。依存関係の解決には影響しませんが、bzlmod はこの情報を使用して、現在の Bazel バージョンが互換性があるかどうかを確認します。この値の形式は、カンマで区切った一連の制約値の文字列です。3 つの制約がサポートされています。<=X.X.X: Bazel バージョンは X.X.X 以下である必要があります。新しいバージョンに既知の互換性のない変更がある場合に使用します。>=X.X.X: Bazel のバージョンは X.X.X 以上である必要があります。X.X.X 以降でのみ利用可能な機能に依存している場合に使用します。-X.X.X: Bazel バージョン X.X.X は互換性がありません。X.X.X にバグがあり、それが原因で機能しなくなるが、それ以降のバージョンで修正されている場合に使用します。 |
multiple_version_override
None
multiple_version_override(module_name, versions, registry='')
依存関係は引き続きレジストリから取得されるが、複数のバージョンが共存することを許可することを指定します。詳しくは、ドキュメントをご覧ください。このディレクティブはルート モジュールでのみ有効になります。つまり、モジュールが他のモジュールによって依存関係として使用されている場合、そのモジュールのオーバーライドは無視されます。
パラメータ
パラメータ | 説明 |
---|---|
module_name
|
必須 このオーバーライドを適用する Bazel モジュール依存関係の名前。 |
versions
|
文字列のイテレーター。必須 共存を許可するバージョンを明示的に指定します。これらのバージョンは、依存関係グラフの事前選択にすでに存在している必要があります。このモジュールの依存関係は、同じ互換性レベルで許可されているバージョンに最も近いバージョンに「アップグレード」されます。一方、同じ互換性レベルで許可されているバージョンよりもバージョンが大きい依存関係はエラーになります。 |
registry
|
デフォルトは '' このモジュールのレジストリをオーバーライドします。レジストリのデフォルト リストからこのモジュールを見つけるのではなく、指定されたレジストリを使用する必要があります。 |
register_execution_platforms
None
register_execution_platforms(dev_dependency=False, *platform_labels)
このモジュールを選択したときに登録される、すでに定義されている実行プラットフォームを指定します。絶対ターゲット パターン(@
または //
で始まる)にする必要があります。詳細については、ツールチェーンの解決をご覧ください。
パラメータ
パラメータ | 説明 |
---|---|
dev_dependency
|
デフォルトは False です。true の場合、現在のモジュールがルート モジュールでない場合や、`--ignore_dev_dependency` が有効になっている場合、実行プラットフォームは登録されません。 |
platform_labels
|
文字列のシーケンス。必須 登録するプラットフォームのラベル。 |
register_toolchains
None
register_toolchains(dev_dependency=False, *toolchain_labels)
このモジュールを選択したときに登録する、すでに定義されているツールチェーンを指定します。絶対ターゲット パターン(@
または //
で始まる)にする必要があります。詳細については、ツールチェーンの解決をご覧ください。
パラメータ
パラメータ | 説明 |
---|---|
dev_dependency
|
デフォルトは False です。true の場合、現在のモジュールがルート モジュールでない場合や `--ignore_dev_dependency` が有効になっている場合、ツールチェーンは登録されません。 |
toolchain_labels
|
文字列のシーケンス。必須 登録するツールチェーンのラベル。ラベルには :all を含めることができます。この場合、パッケージ内のすべての toolchain 提供ターゲットが、名前の辞書順で登録されます。 |
single_version_override
None
single_version_override(module_name, version='', registry='', patches=[], patch_cmds=[], patch_strip=0)
依存関係は引き続きレジストリから取得されるが、バージョンは固定されるか、レジストリがオーバーライドされるか、パッチのリストが適用されることを指定します。このディレクティブはルート モジュールでのみ有効になります。つまり、モジュールが他のモジュールによって依存関係として使用されている場合、そのモジュールのオーバーライドは無視されます。
パラメータ
パラメータ | 説明 |
---|---|
module_name
|
必須 このオーバーライドを適用する Bazel モジュール依存関係の名前。 |
version
|
デフォルトは '' 依存関係グラフで宣言されたこのモジュールのバージョンをオーバーライドします。つまり、このモジュールは、このオーバーライド バージョンに「固定」されます。レジストリまたはパッチのみをオーバーライドする場合は、この属性を省略できます。 |
registry
|
デフォルトは '' このモジュールのレジストリをオーバーライドします。レジストリのデフォルト リストからこのモジュールを見つけるのではなく、指定されたレジストリを使用する必要があります。 |
patches
|
文字列の反復可能オブジェクト。デフォルトは [] 。このモジュールに適用するパッチファイルを指すラベルのリスト。パッチファイルは、最上位プロジェクトのソースツリーに存在している必要があります。リストの順序で適用されます。 |
patch_cmds
|
文字列の反復可能オブジェクト。デフォルトは [] 。パッチ適用後に Linux/macOS で適用される Bash コマンドのシーケンス。 |
patch_strip
|
デフォルトは 0 です。これは、Unix パッチの --strip 引数と同じです。 |
use_extension
module_extension_proxy use_extension(extension_bzl_file, extension_name, *, dev_dependency=False, isolate=False)モジュール拡張機能を表すプロキシ オブジェクトを返します。このオブジェクトのメソッドを呼び出して、モジュール拡張タグを作成できます。
パラメータ
パラメータ | 説明 |
---|---|
extension_bzl_file
|
必須 モジュール拡張機能を定義する Starlark ファイルのラベル。 |
extension_name
|
必須 使用するモジュール拡張機能の名前。この名前のシンボルは、Starlark ファイルによってエクスポートする必要があります。 |
dev_dependency
|
デフォルトは False です。true の場合、現在のモジュールがルート モジュールでないか、`--ignore_dev_dependency` が有効になっている場合、このモジュール拡張の使用は無視されます。 |
isolate
|
デフォルトは False (試験運用版)です。このパラメータは試験運用版であり、随時変更される可能性があります。これに依存しないでください。 ---experimental_isolated_extension_usages を設定することで、試験運用版として有効にできます。true に設定すると、このモジュール拡張機能のこの使用は、このモジュールと他のモジュールの両方において、他のすべての使用から分離されます。この用途で作成されたタグは他の用途には影響しません。また、この用途のために拡張機能によって生成されたリポジトリは、拡張機能によって生成された他のすべてのリポジトリとは異なります。 このパラメータは現在試験運用中であり、フラグ |
use_repo
None
use_repo(extension_proxy, *args, **kwargs)
指定されたモジュール拡張機能によって生成された 1 つ以上のリポジトリを現在のモジュールのスコープにインポートします。
パラメータ
パラメータ | 説明 |
---|---|
extension_proxy
|
必須use_extension 呼び出しによって返されるモジュール拡張プロキシ オブジェクト。 |
args
|
必須 インポートするリポジトリの名前。 |
kwargs
|
必須 現在のモジュールのスコープに異なる名前でインポートする特定のリポジトリを指定します。キーは現在のスコープで使用する名前にする必要があります。値は、モジュール拡張機能によってエクスポートされた元の名前にする必要があります。 |
use_repo_rule
repo_rule_proxy use_repo_rule(repo_rule_bzl_file, repo_rule_name)MODULE.bazel ファイルでリポジトリ ルールとして 1 回以上直接呼び出せるプロキシ値を返します。この方法で作成されたリポジトリは、プロキシの
name
属性を使用して宣言された名前で、現在のモジュールにのみ表示されます。暗黙的なブール値 dev_dependency
属性をプロキシで使用して、現在のモジュールがルート モジュールの場合にのみ特定のリポジトリを作成することもできます。
パラメータ
パラメータ | 説明 |
---|---|
repo_rule_bzl_file
|
必須 Repo ルールを定義する Starlark ファイルのラベル。 |
repo_rule_name
|
必須 使用するリポジトリ ルールの名前。この名前のシンボルは、Starlark ファイルによってエクスポートする必要があります。 |