Métodos disponibles en los archivos MODULE.bazel.
Miembros
- 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, urls, integrity='', strip_prefix='', patches=[], patch_cmds=[], patch_strip=0)
Especifica que esta dependencia debe provenir de un archivo de almacenamiento (zip, gzip, etc.) en una ubicación determinada, en lugar de un registro. Esta directiva solo se aplica en el módulo raíz. En otras palabras, si otros usan un módulo como dependencia, se ignoran sus propias anulaciones.
Parámetros
Parámetro | Descripción |
---|---|
module_name
|
cadena;
obligatorio Es el nombre de la dependencia del módulo de Bazel a la que se aplicará esta anulación. |
urls
|
string o iterable de string; obligatorio Corresponde a las URLs del archivo, que pueden ser http(s):// o file://. |
integrity
|
string; el valor predeterminado es '' La suma de verificación esperada del archivo de almacenamiento, en formato de Integridad de los subrecursos. |
strip_prefix
|
cadena;
el valor predeterminado es '' Es un prefijo de directorio que se quitará de los archivos extraídos. |
patches
|
Es un iterador de cadenas.
El valor predeterminado es [] . Es una lista de etiquetas que apuntan a archivos de parches para aplicar a este módulo. Los archivos de parches deben existir en el árbol de origen del proyecto de nivel superior. Se aplican en el orden de la lista. |
patch_cmds
|
Iterable de strings; el valor predeterminado es [] La secuencia de comandos de Bash que se aplicará en Linux/Macos después de aplicar los parches. |
patch_strip
|
int;
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)
Declara una dependencia directa en otro módulo de Bazel.
Parámetros
Parámetro | Descripción |
---|---|
name
|
cadena;
obligatorio Es el nombre del módulo que se agregará como dependencia directa. |
version
|
cadena;
el valor predeterminado es '' Es la versión del módulo que se agregará como dependencia directa. |
max_compatibility_level
|
int;
El valor predeterminado es -1 Es el compatibility_level máximo admitido para que el módulo se agregue como dependencia directa. La versión del módulo implica el nivel de compatibilidad mínimo admitido, así como el máximo si no se especifica este atributo.
|
repo_name
|
cadena;
el valor predeterminado es '' Es el nombre del repositorio externo que representa esta dependencia. Este es el nombre del módulo de forma predeterminada. |
dev_dependency
|
bool;
el valor predeterminado es False Si es verdadero, se ignorará esta dependencia si el módulo actual no es el módulo raíz o si está habilitada la opción `--ignore_dev_dependency`. |
git_override
None
git_override(module_name, remote, commit='', patches=[], patch_cmds=[], patch_strip=0, init_submodules=False, strip_prefix='')
Especifica que una dependencia debe provenir de una confirmación determinada de un repositorio de Git. Esta directiva solo se aplica en el módulo raíz. En otras palabras, si otros usan un módulo como dependencia, se ignoran sus propias anulaciones.
Parámetros
Parámetro | Descripción |
---|---|
module_name
|
cadena;
obligatorio Es el nombre de la dependencia del módulo de Bazel a la que se aplicará esta anulación. |
remote
|
cadena;
obligatorio Es la URL del repositorio remoto de Git. |
commit
|
cadena;
el valor predeterminado es '' Es la confirmación que se debe consultar. |
patches
|
Es un iterador de cadenas.
El valor predeterminado es [] . Es una lista de etiquetas que apuntan a archivos de parches para aplicar a este módulo. Los archivos de parche deben existir en el árbol fuente del proyecto de nivel superior. Se aplican en el orden de la lista. |
patch_cmds
|
Iterable de strings; el valor predeterminado es [] La secuencia de comandos de Bash que se aplicará en Linux/Macos después de aplicar los parches. |
patch_strip
|
int;
El valor predeterminado es 0 Es igual que el argumento --strip del parche de Unix. |
init_submodules
|
bool; el valor predeterminado es False Indica si los submódulos de Git en el repositorio recuperado se deben inicializar de manera recurrente. |
strip_prefix
|
cadena;
el valor predeterminado es '' Es un prefijo de directorio que se quitará de los archivos extraídos. Se puede usar para orientar a 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 esta "git_override". |
incluye
None
include(label)
Incluye el contenido de otro archivo similar a MODULE.bazel. En efecto, include()
se comporta como si el archivo incluido se colocara de forma textual en la ubicación de la llamada a include()
, excepto que las vinculaciones de variables (como las que se usan para use_extension
) solo son visibles en el archivo en el que se producen, no en ningún archivo incluido o que incluye.Solo el módulo raíz puede usar include()
. Se generará un error si un archivo de MÓDULO de bazel_dep
usa include()
.
Solo se pueden incluir archivos del repositorio 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 de segmentos semánticos individuales.
Parámetros
Parámetro | Descripción |
---|---|
label
|
cadena;
obligatorio Es la etiqueta que apunta al archivo que se incluirá. La etiqueta debe apuntar a un archivo en el repositorio principal; en otras palabras, debe comenzar con barras dobles ( // ). |
inject_repo
None
inject_repo(extension_proxy, *args, **kwargs)
Inserta uno o más repositorios nuevos en la extensión del módulo correspondiente.
Esto se ignora si el módulo actual no es el módulo raíz o si está habilitada la opción `--ignore_dev_dependency`.
En su lugar, usa override_repo
para anular un repo existente.
Parámetros
Parámetro | Descripción |
---|---|
extension_proxy
|
module_extension_proxy;
obligatorio Un objeto de proxy de extensión de módulo que muestra una llamada use_extension .
|
args
|
obligatorio Los repositorios visibles para el módulo actual que se deben insertar en la extensión con el mismo nombre. |
kwargs
|
obligatorio Los repositorios nuevos que se insertarán en la extensión, en los que los valores son los nombres de los repositorios en el alcance del módulo actual y las claves son el nombre con el que serán visibles en la extensión. |
local_path_override
None
local_path_override(module_name, path)
Especifica que una dependencia debe provenir de un directorio determinado en el disco local. Esta directiva solo se aplica en el módulo raíz. En otras palabras, si otros usan un módulo como dependencia, se ignoran sus propias anulaciones.
Parámetros
Parámetro | Descripción |
---|---|
module_name
|
cadena;
obligatorio Es el nombre de la dependencia del módulo de Bazel a la que se aplicará esta anulación. |
path
|
cadena;
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=[])
Declara ciertas propiedades del módulo de Bazel representado por el repositorio de Bazel actual. Estas propiedades son metadatos esenciales del módulo (como el nombre y la versión) o afectan el comportamiento del módulo actual y sus dependencias. Se debe llamar como máximo una vez y, si se lo hace, debe ser la primera directiva del archivo MODULE.bazel. Se puede omitir solo si este módulo es el módulo raíz (es decir, si otro módulo no dependerá de él).
Parámetros
Parámetro | Descripción |
---|---|
name
|
string; el valor predeterminado es '' El nombre del módulo. Se puede omitir solo si este módulo es el módulo raíz (como en el caso de que otro módulo no dependa de él). Un nombre de módulo válido debe cumplir con los siguientes requisitos: 1) Solo debe contener letras minúsculas (a-z), números (0-9), puntos (.), guiones (-) y guiones bajos (_); 2) Debe comenzar con una letra minúscula; 3) Debe terminar con una letra minúscula o un número. |
version
|
cadena;
el valor predeterminado es '' Es la versión del módulo. Se puede omitir solo si este módulo es el módulo raíz (es decir, si otro módulo no dependerá de él). La versión debe estar en un formato SemVer relajado. Consulta la documentación para obtener más detalles. |
compatibility_level
|
int; el valor predeterminado es 0 El nivel de compatibilidad del módulo debe modificarse cada vez que se realice un cambio incompatible importante. En esencia, es la "versión principal" del módulo en términos de SemVer, excepto que no está incorporado en la string 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 con diferentes niveles de compatibilidad (a menos que multiple_version_override esté vigente). Para obtener más detalles, consulta la documentación.
|
repo_name
|
string; el valor predeterminado es '' El nombre del repositorio que representa este módulo, tal como lo ve el módulo en sí. De forma predeterminada, el nombre del repositorio es el nombre del módulo. Esto se puede especificar para facilitar la migración de los proyectos que han estado usando un nombre de repo para sí mismos que difiere del nombre de su módulo. |
bazel_compatibility
|
Es un iterador 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 string 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 X.X.X que genera problemas, pero que se corrigió en versiones posteriores. |
multiple_version_override
None
multiple_version_override(module_name, versions, registry='')
Especifica que una dependencia aún debe provenir de un registro, pero se debe permitir que coexistan varias versiones de ella. Para obtener más detalles, consulta la documentación. Esta directiva solo se aplica en el módulo raíz. En otras palabras, si otros usan un módulo como dependencia, se ignoran sus propias anulaciones.
Parámetros
Parámetro | Descripción |
---|---|
module_name
|
cadena;
obligatorio Es el nombre de la dependencia del módulo de Bazel a la que se aplicará esta anulación. |
versions
|
Es un iterador de cadenas;
obligatorio Especifica de forma explícita las versiones que pueden coexistir. Estas versiones ya deben estar presentes en la selección previa del gráfico de dependencia. Las dependencias de este módulo se “actualizarán” a la versión permitida más alta más cercana con el mismo nivel de compatibilidad, mientras que las dependencias que tengan una versión superior a cualquier versión permitida con el mismo nivel de compatibilidad causarán un error. |
registry
|
Cadena;
El valor predeterminado es '' Anula el registro de este módulo. En lugar de encontrar este módulo en la lista predeterminada de registros, se debe usar el registro determinado. |
override_repo
None
override_repo(extension_proxy, *args, **kwargs)
Anula uno o más repositorios definidos por la extensión del módulo determinado con los repositorios visibles para el módulo actual. Se ignora si el módulo actual no es el módulo raíz o si se habilita "--ignore_dev_dependency".
En su lugar, usa inject_repo
para agregar un repositorio nuevo.
Parámetros
Parámetro | Descripción |
---|---|
extension_proxy
|
module_extension_proxy;
obligatorio Es un objeto de proxy de extensión de módulo que muestra una llamada a use_extension .
|
args
|
obligatorio Son los repositorios de la extensión que se deben reemplazar con los repositorios del mismo nombre en el módulo actual. |
kwargs
|
obligatorio Las anulaciones que se aplicarán a los repositorios generados por la extensión, en los que los valores son los nombres de los repositorios en el alcance del módulo actual y las claves son los nombres de los repositorios que anularán en la extensión. |
register_execution_platforms
None
register_execution_platforms(dev_dependency=False, *platform_labels)
Especifica las plataformas de ejecución ya definidas que se registrarán cuando se seleccione este módulo. Debe ser un patrón de destino absoluto (es decir, que comience con @
o //
). Consulta resolución de cadena de herramientas para obtener más información. Los patrones que se expanden a varios destinos, como :all
, se registrarán en orden lexicográfico por nombre.
Parámetros
Parámetro | Descripción |
---|---|
dev_dependency
|
bool;
El valor predeterminado es False Si es verdadero, no se registrarán las plataformas de ejecución si el módulo actual no es el módulo raíz o si está habilitada la opción `--ignore_dev_dependency`. |
platform_labels
|
secuencia de cadenas;
obligatorio Son los patrones de destino que se registrarán. |
register_toolchains
None
register_toolchains(dev_dependency=False, *toolchain_labels)
Especifica las cadenas de herramientas ya definidas que se registrarán cuando se seleccione este módulo. Debe ser un patrón de destino absoluto (es decir, que comience con @
o //
). Consulta resolución de cadena de herramientas para obtener más información. Los patrones que se expanden a varios destinos, como :all
, se registrarán en orden lexicográfico por nombre de destino (no el nombre de la implementación de la cadena de herramientas).
Parámetros
Parámetro | Descripción |
---|---|
dev_dependency
|
bool; 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 "--ignore_dev_dependency" está habilitado. |
toolchain_labels
|
secuencia de cadenas;
obligatorio Son los patrones de destino que se registrarán. |
single_version_override
None
single_version_override(module_name, version='', registry='', patches=[], patch_cmds=[], patch_strip=0)
Especifica que una dependencia aún debe provenir de un registro, pero su versión debe estar fijada, o bien se debe anular su registro o aplicar una lista de parches. Esta directiva solo se aplica en el módulo raíz. En otras palabras, si otros usan un módulo como dependencia, se ignoran sus propias anulaciones.
Parámetros
Parámetro | Descripción |
---|---|
module_name
|
cadena;
obligatorio Es el nombre de la dependencia del módulo de Bazel a la que se aplicará esta anulación. |
version
|
cadena;
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 anulación. Este atributo se puede omitir si lo único que se quiere anular es el registro o los parches. |
registry
|
Cadena;
El valor predeterminado es '' Anula el registro de este módulo. En lugar de encontrar este módulo en la lista predeterminada de registros, se debe usar el registro determinado. |
patches
|
Iterable de string; el valor predeterminado es [] Una lista de etiquetas que apuntan a archivos de parche para aplicar en este módulo. Los archivos de parches deben existir en el árbol de origen del proyecto de nivel superior. Se aplican en el orden de la lista. Si un parche realiza cambios en el archivo MODULE.bazel, estos cambios solo serán efectivos si el módulo raíz proporciona el archivo de parche. |
patch_cmds
|
Iterable de strings; el valor predeterminado es [] La secuencia de comandos de Bash que se aplicará en Linux/Macos después de aplicar los parches. Los cambios en el archivo MODULE.bazel no se aplicarán. |
patch_strip
|
int;
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)Devuelve un objeto proxy que representa una extensión de módulo. Se pueden invocar sus métodos para crear etiquetas de extensión de módulo.
Parámetros
Parámetro | Descripción |
---|---|
extension_bzl_file
|
string; requerida Es una etiqueta para el archivo de Starlark que define la extensión del módulo. |
extension_name
|
string; required Nombre de la extensión del módulo que se usará. El archivo Starlark debe exportar un símbolo con este nombre. |
dev_dependency
|
bool; el valor predeterminado es False Si es verdadero, este uso de la extensión del módulo se ignorará si el módulo actual no es el módulo raíz o si "--ignore_dev_dependency" está habilitado. |
isolate
|
bool;
El valor predeterminado es False Experimental. Este parámetro es experimental y puede cambiar en cualquier momento. No dependas de ella. 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 generados por la extensión para este uso serán distintos de todos los demás repositorios generados por la extensión. Por el momento, este parámetro es experimental y solo está disponible con la marca |
use_repo
None
use_repo(extension_proxy, *args, **kwargs)
Importa uno o más repositorios generados por la extensión del módulo determinada al alcance del módulo actual.
Parámetros
Parámetro | Descripción |
---|---|
extension_proxy
|
module_extension_proxy;
obligatorio Un objeto de proxy de extensión de módulo que muestra una llamada a use_extension .
|
args
|
obligatorio Son los nombres de los repositorios que se importarán. |
kwargs
|
obligatorio Especifica ciertos repositorios para importarlos 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)Devuelve un valor de proxy que puede invocarse directamente en el archivo MODULE.bazel como una regla de repositorio, una o más veces. Los repositorios creados de esa manera solo son visibles para el módulo actual, con el nombre declarado mediante el atributo
name
en el proxy. El atributo dev_dependency
booleano implícito también se puede usar en el proxy para indicar que un repositorio 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
|
string; required Es una etiqueta para el archivo de Starlark que define la regla del repositorio. |
repo_rule_name
|
cadena;
obligatorio Es el nombre de la regla del repositorio que se usará. El archivo Starlark debe exportar un símbolo con este nombre. |