Métodos disponibles en los archivos MODULE.bazel
Miembros
- archive_override
- bazel_dep
- git_override
- include
- 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)
Parámetros
Parámetro | Descripción |
---|---|
module_name
|
obligatorio Es el nombre de la dependencia del módulo de Bazel al que se aplicará esta anulación. |
urls
|
string o iterable de strings;
obligatorio Son las URLs del archivo. Pueden ser URLs http(s):// o file://. |
integrity
|
El valor predeterminado es '' . Es la suma de verificación esperada del archivo, en formato de Subresource Integrity. |
strip_prefix
|
El valor predeterminado es '' . Es un prefijo de directorio que se quitará de los archivos extraídos. |
patches
|
Iterable de cadenas; el valor predeterminado es [] . Es una lista de etiquetas que apuntan a los archivos de parche que se aplicarán a este módulo. Los archivos de parche deben existir en el árbol de origen del proyecto de nivel superior. Se aplican en el orden de la lista. |
patch_cmds
|
Es un iterable de cadenas. El valor predeterminado es [] . Es una secuencia de comandos de Bash que se aplicarán en Linux o macOS después de que se apliquen los parches. |
patch_strip
|
El valor predeterminado es 0 . Es igual que el argumento --strip del parche de Unix. |
bazel_dep
None
bazel_dep(name, version='', max_compatibility_level=-1, repo_name='', dev_dependency=False)
Parámetros
Parámetro | Descripción |
---|---|
name
|
obligatorio Es el nombre del módulo que se agregará como dependencia directa. |
version
|
El valor predeterminado es '' . Es la versión del módulo que se agregará como dependencia directa. |
max_compatibility_level
|
El valor predeterminado es -1 . Es el valor máximo de compatibility_level admitido para que el módulo se agregue como dependencia directa. La versión del módulo implica el compatibility_level mínimo admitido, así como el máximo si no se especifica este atributo.
|
repo_name
|
El valor predeterminado es '' . Es el nombre del repo externo que representa esta dependencia. Este es el nombre predeterminado del módulo. |
dev_dependency
|
El valor predeterminado es False . Si es verdadero, esta dependencia se ignorará si el módulo actual no es el módulo raíz o si se habilitó `--ignore_dev_dependency`. |
git_override
None
git_override(module_name, remote, commit='', patches=[], patch_cmds=[], patch_strip=0, init_submodules=False, strip_prefix='')
Parámetros
Parámetro | Descripción |
---|---|
module_name
|
obligatorio Es el nombre de la dependencia del módulo de Bazel al que se aplicará esta anulación. |
remote
|
obligatorio Es la URL del repositorio remoto de Git. |
commit
|
El valor predeterminado es '' . Es la confirmación que se debe extraer. |
patches
|
Iterable de cadenas; el valor predeterminado es [] . Es una lista de etiquetas que apuntan a los archivos de parche que se aplicarán a este módulo. Los archivos de parche deben existir en el árbol de origen del proyecto de nivel superior. Se aplican en el orden de la lista. |
patch_cmds
|
Es un iterable de cadenas. El valor predeterminado es [] . Es una secuencia de comandos de Bash que se aplicarán en Linux o macOS después de que se apliquen los parches. |
patch_strip
|
El valor predeterminado es 0 . Es igual que el argumento --strip del parche de Unix. |
init_submodules
|
El valor predeterminado es False . Indica si los submódulos de Git en el repositorio recuperado se deben inicializar de forma recursiva. |
strip_prefix
|
El valor predeterminado es '' . Es un prefijo de directorio que se quitará de los archivos extraídos. Se puede usar para segmentar un subdirectorio del repositorio de Git. Ten en cuenta que el subdirectorio debe tener su propio archivo "MODULE.bazel" con un nombre de módulo que sea el mismo que el argumento "module_name" que se pasa a este "git_override". |
incluye
None
include(label)
include()
se comporta como si el archivo incluido se colocara textualmente en la ubicación de la llamada include()
, excepto que las vinculaciones de variables (como las que se usan para use_extension
) solo son visibles en el archivo en el que aparecen, no en ningún archivo incluido o que incluya.Solo el módulo raíz puede usar include()
; es un error si el archivo MODULE de un bazel_dep
usa include()
.
Solo se pueden incluir archivos del repo principal.
include()
te permite segmentar el archivo del módulo raíz en varias partes para evitar tener un archivo MODULE.bazel enorme o administrar mejor el control de acceso para segmentos semánticos individuales.
Parámetros
Parámetro | Descripción |
---|---|
label
|
obligatorio Es la etiqueta que apunta al archivo que se incluirá. La etiqueta debe apuntar a un archivo en el repo principal; en otras palabras, debe comenzar con barras diagonales dobles ( // ).
|
local_path_override
None
local_path_override(module_name, path)
Parámetros
Parámetro | Descripción |
---|---|
module_name
|
obligatorio Es el nombre de la dependencia del módulo de Bazel al que se aplicará esta anulación. |
path
|
obligatorio Es la ruta de acceso al directorio en el que se encuentra este módulo. |
module
None
module(name='', version='', compatibility_level=0, repo_name='', bazel_compatibility=[])
Se debe llamar como máximo una vez y, si se llama, debe ser la primera directiva en el archivo MODULE.bazel. Solo se puede omitir si este módulo es el módulo raíz (es decir, si ningún otro módulo dependerá de él).
Parámetros
Parámetro | Descripción |
---|---|
name
|
El valor predeterminado es '' . Es el nombre del módulo. Solo se puede omitir si este módulo es el módulo raíz (es decir, si ningún otro módulo dependerá de él). Un nombre de módulo válido debe cumplir con los siguientes requisitos: 1) Solo debe contener letras en minúscula (a-z), dígitos (0-9), puntos (.), guiones (-) y guiones bajos (_). 2) Debe comenzar con una letra en minúscula. 3) Debe terminar con una letra en minúscula o un dígito. |
version
|
El valor predeterminado es '' . Es la versión del módulo. Solo se puede omitir si este módulo es el módulo raíz (es decir, si ningún otro módulo dependerá de él). La versión debe estar en un formato SemVer flexible. Consulta la documentación para obtener más detalles. |
compatibility_level
|
El valor predeterminado es 0 . Es el nivel de compatibilidad del módulo. Se debe cambiar cada vez que se introduce un cambio principal incompatible. Esta es, básicamente, la "versión principal" del módulo en términos de SemVer, solo que no está incorporada en la cadena de versión, sino que existe como un campo separado. Los módulos con diferentes niveles de compatibilidad participan en la resolución de versiones como si fueran módulos con nombres diferentes, pero el gráfico de dependencias final no puede contener varios módulos con el mismo nombre, pero diferentes niveles de compatibilidad (a menos que multiple_version_override esté en vigencia). Para obtener más detalles, consulta la documentación.
|
repo_name
|
El valor predeterminado es '' . Es el nombre del repositorio que representa este módulo, tal como lo ve el módulo. De forma predeterminada, el nombre del repo es el nombre del módulo. Se puede especificar para facilitar la migración de proyectos que han estado usando un nombre de repo para sí mismos que difiere de su nombre de módulo. |
bazel_compatibility
|
Es un iterable de cadenas; el valor predeterminado es [] . Es una lista de versiones de Bazel que permite a los usuarios declarar qué versiones de Bazel son compatibles con este módulo. NO afecta la resolución de dependencias, pero bzlmod usará esta información para verificar si tu versión actual de Bazel es compatible. El formato de este valor es una cadena de algunos valores de restricción separados por comas. Se admiten tres restricciones: <=X.X.X: La versión de Bazel debe ser igual o anterior a X.X.X. Se usa cuando hay un cambio incompatible conocido en una versión más reciente. >=X.X.X: La versión de Bazel debe ser igual o posterior a X.X.X.Se usa cuando dependes de algunas funciones que solo están disponibles desde X.X.X. -X.X.X: La versión X.X.X de Bazel no es compatible. Se usa cuando hay un error en la versión X.X.X que te afecta, pero que se corrigió en versiones posteriores. |
multiple_version_override
None
multiple_version_override(module_name, versions, registry='')
Parámetros
Parámetro | Descripción |
---|---|
module_name
|
obligatorio Es el nombre de la dependencia del módulo de Bazel al que se aplicará esta anulación. |
versions
|
Es un iterable de cadenas; obligatorio Especifica de forma explícita las versiones que pueden coexistir. Estas versiones ya deben estar presentes en la preselección del gráfico de dependencias. Las dependencias de este módulo se "actualizarán" a la versión superior permitida más cercana en el mismo nivel de compatibilidad, mientras que las dependencias que tengan una versión superior a cualquiera de las versiones permitidas en el mismo nivel de compatibilidad generarán un error. |
registry
|
El valor predeterminado es '' . Anula el registro de este módulo. En lugar de buscar este módulo en la lista predeterminada de registros, se debe usar el registro proporcionado. |
register_execution_platforms
None
register_execution_platforms(dev_dependency=False, *platform_labels)
@
o //
). Consulta la resolución de la cadena de herramientas para obtener más información.
Parámetros
Parámetro | Descripción |
---|---|
dev_dependency
|
El valor predeterminado es False . Si es verdadero, las plataformas de ejecución no se registrarán si el módulo actual no es el módulo raíz o si se habilitó `--ignore_dev_dependency`. |
platform_labels
|
sequence de strings;
obligatorio Son las etiquetas de las plataformas que se registrarán. |
register_toolchains
None
register_toolchains(dev_dependency=False, *toolchain_labels)
@
o //
). Consulta la resolución de la cadena de herramientas para obtener más información.
Parámetros
Parámetro | Descripción |
---|---|
dev_dependency
|
El valor predeterminado es False . Si es verdadero, las cadenas de herramientas no se registrarán si el módulo actual no es el módulo raíz o si se habilitó `--ignore_dev_dependency`. |
toolchain_labels
|
sequence de strings; obligatorio Son las etiquetas de las cadenas de herramientas que se registrarán. Las etiquetas pueden incluir :all , en cuyo caso todos los destinos que proporcionan cadenas de herramientas en el paquete se registrarán en orden lexicográfico por nombre.
|
single_version_override
None
single_version_override(module_name, version='', registry='', patches=[], patch_cmds=[], patch_strip=0)
Parámetros
Parámetro | Descripción |
---|---|
module_name
|
obligatorio Es el nombre de la dependencia del módulo de Bazel al que se aplicará esta anulación. |
version
|
El valor predeterminado es '' .Anula la versión declarada de este módulo en el gráfico de dependencias. En otras palabras, este módulo se "fijará" a esta versión de la anulación. Este atributo se puede omitir si lo único que se quiere anular es el registro o los parches. |
registry
|
El valor predeterminado es '' . Anula el registro de este módulo. En lugar de buscar este módulo en la lista predeterminada de registros, se debe usar el registro proporcionado. |
patches
|
Iterable de cadenas; el valor predeterminado es [] . Es una lista de etiquetas que apuntan a los archivos de parche que se aplicarán a este módulo. Los archivos de parche deben existir en el árbol de origen del proyecto de nivel superior. Se aplican en el orden de la lista. |
patch_cmds
|
Es un iterable de cadenas. El valor predeterminado es [] . Es una secuencia de comandos de Bash que se aplicarán en Linux o macOS después de que se apliquen los parches. |
patch_strip
|
El valor predeterminado es 0 . Es igual que el argumento --strip del parche de Unix. |
use_extension
module_extension_proxy use_extension(extension_bzl_file, extension_name, *, dev_dependency=False, isolate=False)
Parámetros
Parámetro | Descripción |
---|---|
extension_bzl_file
|
required Es una etiqueta para el archivo Starlark que define la extensión del módulo. |
extension_name
|
obligatorio Nombre de la extensión del módulo que se usará. El archivo de Starlark debe exportar un símbolo con este nombre. |
dev_dependency
|
El valor predeterminado es False . Si es verdadero, se ignorará este uso de la extensión del módulo si el módulo actual no es el módulo raíz o si se habilitó `--ignore_dev_dependency`. |
isolate
|
El valor predeterminado es False Experimental. Este parámetro es experimental y puede cambiar en cualquier momento. No dependas de él. Se puede habilitar de forma experimental configurando ---experimental_isolated_extension_usages Si es verdadero, este uso de la extensión del módulo se aislará de todos los demás usos, tanto en este como en otros módulos. Las etiquetas creadas para este uso no afectan otros usos, y los repositorios que genera la extensión para este uso serán distintos de todos los demás repositorios que genera la extensión. Actualmente, este parámetro es experimental y solo está disponible con la marca |
use_repo
None
use_repo(extension_proxy, *args, **kwargs)
Parámetros
Parámetro | Descripción |
---|---|
extension_proxy
|
obligatorio Es un objeto proxy de extensión del módulo que devuelve una llamada a use_extension .
|
args
|
obligatorio Nombres de los repositorios que se importarán. |
kwargs
|
obligatorio Especifica ciertos repositorios para importar al alcance del módulo actual con nombres diferentes. Las claves deben ser el nombre que se usará en el alcance actual, mientras que los valores deben ser los nombres originales que exporta la extensión del módulo. |
use_repo_rule
repo_rule_proxy use_repo_rule(repo_rule_bzl_file, repo_rule_name)
name
en el proxy. El atributo booleano implícito dev_dependency
también se puede usar en el proxy para indicar que un repo determinado solo se debe crear cuando el módulo actual es el módulo raíz.
Parámetros
Parámetro | Descripción |
---|---|
repo_rule_bzl_file
|
obligatorio Es una etiqueta para el archivo de Starlark que define la regla del repositorio. |
repo_rule_name
|
obligatorio Es el nombre de la regla del repo que se usará. El archivo de Starlark debe exportar un símbolo con este nombre. |