MODULE.bazel ファイルで使用できるメソッド。
メンバー
- archive_override
- bazel_dep
- git_override
- include
- inject_repo
- local_path_override
- module
- multiple_version_override
- override_repo
- register_execution_platforms
- register_toolchains
- single_version_override
- use_extension
- use_repo
- use_repo_rule
archive_override
None
archive_override(module_name, **kwargs)
http_archive
ルールによってバックアップされます。このディレクティブはルート モジュールでのみ有効になります。つまり、モジュールが他のモジュールの依存関係として使用されている場合、そのモジュール独自のオーバーライドは無視されます。
パラメータ
パラメータ | 説明 |
---|---|
module_name
|
string;
required このオーバーライドを適用する Bazel モジュール依存関係の名前。 |
kwargs
|
必須 他のすべての引数は、基盤となる http_archive リポジトリルールに転送されます。name 属性は指定しないでください。代わりに module_name を使用してください。 |
bazel_dep
None
bazel_dep(name, version='', max_compatibility_level=-1, repo_name='', dev_dependency=False)
パラメータ
パラメータ | 説明 |
---|---|
name
|
string;
必須 直接の依存関係として追加するモジュールの名前。 |
version
|
string;
デフォルトは '' 直接の依存関係として追加するモジュールのバージョン。 |
max_compatibility_level
|
int;
デフォルトは -1 モジュールが直接依存関係として追加されるためにサポートされる最大 compatibility_level 。モジュールのバージョンは、サポートされている最小の compatibility_level と、この属性が指定されていない場合は最大の compatibility_level を意味します。 |
repo_name
|
string; デフォルトは '' この依存関係を表す外部リポジトリの名前。デフォルトでは、これはモジュールの名前です。 |
dev_dependency
|
bool;
デフォルトは False true の場合、現在のモジュールがルート モジュールでないか、`--ignore_dev_dependency` が有効になっていると、この依存関係は無視されます。 |
git_override
None
git_override(module_name, **kwargs)
git_repository
ルールによってサポートされます。このディレクティブはルート モジュールでのみ有効になります。つまり、モジュールが他のモジュールの依存関係として使用されている場合、そのモジュール独自のオーバーライドは無視されます。
パラメータ
パラメータ | 説明 |
---|---|
module_name
|
string;
required このオーバーライドを適用する Bazel モジュール依存関係の名前。 |
kwargs
|
必須 他のすべての引数は、基盤となる git_repository repo ルールに転送されます。name 属性は指定しないでください。代わりに module_name を使用してください。 |
含む
None
include(label)
include()
は、含まれるファイルが include()
呼び出しの位置にテキストで配置されているかのように動作します。ただし、変数バインディング(use_extension
に使用されるものなど)は、含まれるファイルや含むファイルではなく、発生したファイルでのみ表示されます。include()
を使用できるのはルート モジュールのみです。bazel_dep
の MODULE ファイルで include()
を使用するとエラーになります。
メイン リポジトリ内のファイルのみを含めることができます。
include()
を使用すると、ルート モジュール ファイルを複数の部分に分割して、巨大な MODULE.bazel ファイルを回避したり、個々のセマンティック セグメントのアクセス制御をより適切に管理したりできます。
パラメータ
パラメータ | 説明 |
---|---|
label
|
string;
required 含めるファイルを指すラベル。ラベルはメイン リポジトリ内のファイルを指している必要があります。つまり、ラベルはスラッシュ 2 つ( // )で始まる必要があります。ファイル名の末尾は .MODULE.bazel にする必要があります。また、ファイル名の先頭を . にすることはできません。 |
inject_repo
None
inject_repo(extension_proxy, *args, **kwargs)
--ignore_dev_dependency
が有効になっている場合は無視されます。代わりに override_repo
を使用して、既存のリポジトリをオーバーライドします。
パラメータ
パラメータ | 説明 |
---|---|
extension_proxy
|
module_extension_proxy;
requireduse_extension 呼び出しによって返されるモジュール拡張機能プロキシ オブジェクト。 |
args
|
必須 現在のモジュールから参照できるリポジトリ。同じ名前で拡張機能に挿入されます。 |
kwargs
|
必須 拡張機能に挿入する新しいリポジトリ。値は現在のモジュールのスコープ内のリポジトリの名前で、キーは拡張機能で表示される名前です。 |
local_path_override
None
local_path_override(module_name, path)
local_repository
ルールによってバックアップされます。このディレクティブはルート モジュールでのみ有効になります。つまり、モジュールが他のモジュールの依存関係として使用されている場合、そのモジュール独自のオーバーライドは無視されます。
パラメータ
パラメータ | 説明 |
---|---|
module_name
|
string;
required このオーバーライドを適用する Bazel モジュール依存関係の名前。 |
path
|
string;
必須 このモジュールがあるディレクトリへのパス。 |
モジュール
None
module(name='', version='', compatibility_level=0, repo_name='', bazel_compatibility=[])
この関数は 1 回だけ呼び出す必要があります。呼び出す場合は、MODULE.bazel ファイルの最初のディレクティブにする必要があります。このモジュールがルート モジュールの場合(つまり、別のモジュールから依存されない場合)にのみ省略できます。
パラメータ
パラメータ | 説明 |
---|---|
name
|
string;
デフォルトは '' モジュールの名前。このモジュールがルート モジュールの場合(つまり、別のモジュールから依存されない場合)にのみ省略できます。有効なモジュール名は、1)小文字(a ~ z)、数字(0 ~ 9)、ドット(.)、ハイフン(-)、アンダースコア(_)のみを含む、2)小文字で始まる、3)小文字または数字で終わる、という条件を満たしている必要があります。 |
version
|
string;
デフォルトは '' モジュールのバージョン。このモジュールがルート モジュールの場合(つまり、別のモジュールから依存されない場合)にのみ省略できます。バージョンは緩和された SemVer 形式にする必要があります。詳細については、ドキュメントをご覧ください。 |
compatibility_level
|
int;
デフォルトは 0 モジュールの互換性レベル。下位互換性のない大きな変更が導入されるたびに変更する必要があります。これは、SemVer の観点から見るとモジュールの「メジャー バージョン」とほぼ同じですが、バージョン文字列自体に埋め込まれているのではなく、別のフィールドとして存在します。互換性レベルが異なるモジュールは、名前が異なるモジュールであるかのようにバージョン解決に参加しますが、最終的な依存関係グラフには、同じ名前で互換性レベルが異なる複数のモジュールを含めることはできません( multiple_version_override が有効になっている場合を除く)。詳しくは、ドキュメントをご覧ください。 |
repo_name
|
string;
デフォルトは '' モジュール自体から見た、このモジュールを表すリポジトリの名前。デフォルトでは、リポジトリの名前はモジュールの名前です。これは、モジュール名とは異なるリポジトリ名を自身に使用しているプロジェクトの移行を容易にするために指定できます。 |
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
|
string;
required このオーバーライドを適用する Bazel モジュール依存関係の名前。 |
versions
|
文字列のイテラブル。必須 共存を許可するバージョンを明示的に指定します。これらのバージョンは、依存関係グラフの事前選択にすでに存在している必要があります。このモジュールへの依存関係は、同じ互換性レベルで許容される最も近い上位バージョンに「アップグレード」されます。一方、同じ互換性レベルで許容されるどのバージョンよりも高いバージョンを持つ依存関係は、エラーを引き起こします。 |
registry
|
string;
デフォルトは '' このモジュールのレジストリをオーバーライドします。レジストリのデフォルト リストからこのモジュールを見つける代わりに、指定されたレジストリを使用する必要があります。 |
override_repo
None
override_repo(extension_proxy, *args, **kwargs)
代わりに inject_repo
を使用して新しいリポジトリを追加してください。
パラメータ
パラメータ | 説明 |
---|---|
extension_proxy
|
module_extension_proxy;
requireduse_extension 呼び出しによって返されるモジュール拡張機能プロキシ オブジェクト。 |
args
|
必須 現在のモジュール内の同じ名前の repo でオーバーライドされる拡張機能内の repo。 |
kwargs
|
必須 拡張機能によって生成されたリポジトリに適用するオーバーライド。値は現在のモジュールのスコープ内のリポジトリの名前で、キーは拡張機能でオーバーライドするリポジトリの名前です。 |
register_execution_platforms
None
register_execution_platforms(dev_dependency=False, *platform_labels)
@
または //
で始まる)である必要があります。詳しくは、ツールチェーンの解決をご覧ください。:all
など、複数のターゲットに展開されるパターンは、名前の辞書順で登録されます。
パラメータ
パラメータ | 説明 |
---|---|
dev_dependency
|
bool;
デフォルトは False true の場合、現在のモジュールがルート モジュールでないか、`--ignore_dev_dependency` が有効になっていると、実行プラットフォームは登録されません。 |
platform_labels
|
文字列のシーケンス。必須 登録するターゲット パターン。 |
register_toolchains
None
register_toolchains(dev_dependency=False, *toolchain_labels)
@
または //
で始まる)である必要があります。詳しくは、ツールチェーンの解決をご覧ください。:all
など、複数のターゲットに展開されるパターンは、ターゲット名(ツールチェーン実装の名前ではない)で辞書順に登録されます。
パラメータ
パラメータ | 説明 |
---|---|
dev_dependency
|
bool;
デフォルトは False true の場合、現在のモジュールがルート モジュールでないか、`--ignore_dev_dependency` が有効になっていると、ツールチェーンは登録されません。 |
toolchain_labels
|
文字列のシーケンス。必須 登録するターゲット パターン。 |
single_version_override
None
single_version_override(module_name, version='', registry='', patches=[], patch_cmds=[], patch_strip=0)
パラメータ
パラメータ | 説明 |
---|---|
module_name
|
string;
required このオーバーライドを適用する Bazel モジュール依存関係の名前。 |
version
|
string;
デフォルトは '' 依存関係グラフで宣言されているこのモジュールのバージョンをオーバーライドします。つまり、このモジュールはこのオーバーライド バージョンに「固定」されます。レジストリまたはパッチのみをオーバーライドする場合は、この属性を省略できます。 |
registry
|
string;
デフォルトは '' このモジュールのレジストリをオーバーライドします。レジストリのデフォルト リストからこのモジュールを見つける代わりに、指定されたレジストリを使用する必要があります。 |
patches
|
文字列のイテラブル。デフォルトは [] このモジュールに適用するパッチ ファイルを指すラベルのリスト。パッチファイルは、最上位プロジェクトのソースツリーに存在する必要があります。これらはリストの順序で適用されます。 パッチが MODULE.bazel ファイルに変更を加える場合、これらの変更はパッチファイルがルート モジュールによって提供されている場合にのみ有効になります。 |
patch_cmds
|
文字列のイテラブル。デフォルトは [] です。 パッチの適用後に Linux/Macos で適用される Bash コマンドのシーケンス。 MODULE.bazel ファイルの変更は有効になりません。 |
patch_strip
|
int; デフォルトは 0 Unix パッチの --strip 引数と同じです。 |
use_extension
module_extension_proxy use_extension(extension_bzl_file, extension_name, *, dev_dependency=False, isolate=False)
パラメータ
パラメータ | 説明 |
---|---|
extension_bzl_file
|
string;
必須 モジュール拡張機能を定義する Starlark ファイルのラベル。 |
extension_name
|
string;
必須 使用するモジュール拡張機能の名前。この名前のシンボルは、Starlark ファイルによってエクスポートされる必要があります。 |
dev_dependency
|
bool;
デフォルトは False true の場合、現在のモジュールがルート モジュールでないか、`--ignore_dev_dependency` が有効になっていると、このモジュール拡張機能の使用は無視されます。 |
isolate
|
bool;
デフォルトは False 試験運用中。このパラメータは試験運用版であり、いつでも変更される可能性があります。これに依存しないでください。 --experimental_isolated_extension_usages を設定することで、試験運用として有効にできます。true の場合、このモジュール拡張機能の使用は、このモジュールと他のモジュールの両方で、他のすべての使用から分離されます。この使用目的で作成されたタグは他の使用目的に影響しません。また、この使用目的で拡張機能によって生成されたリポジトリは、拡張機能によって生成された他のすべてのリポジトリとは異なります。 このパラメータは現在試験運用中で、フラグ |
use_repo
None
use_repo(extension_proxy, *args, **kwargs)
パラメータ
パラメータ | 説明 |
---|---|
extension_proxy
|
module_extension_proxy;
requireduse_extension 呼び出しによって返されるモジュール拡張機能プロキシ オブジェクト。 |
args
|
必須 インポートするリポジトリの名前。 |
kwargs
|
必須 現在のモジュールのスコープに異なる名前でインポートする特定のリポジトリを指定します。キーは現在のスコープで使用する名前、値はモジュール拡張機能によってエクスポートされた元の名前にする必要があります。 |
use_repo_rule
repo_rule_proxy use_repo_rule(repo_rule_bzl_file, repo_rule_name)
name
属性を使用して宣言された名前で表示されます。暗黙的なブール値 dev_dependency
属性をプロキシで使用して、現在のモジュールがルート モジュールの場合にのみ特定のリポジトリを作成するように指定することもできます。
パラメータ
パラメータ | 説明 |
---|---|
repo_rule_bzl_file
|
文字列。必須。 リポジトリルールを定義する Starlark ファイルのラベル。 |
repo_rule_name
|
string;
required 使用するリポジトリルールの名前。この名前のシンボルは、Starlark ファイルによってエクスポートされる必要があります。 |