Métodos disponíveis nos arquivos MODULE.bazel.
Membros
- 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)
Especifica que essa dependência deve vir de um arquivo (zip, gzip etc.) em um determinado local, e não de um registro. Essa diretiva só entra em vigor no módulo raiz. Em outras palavras, se um módulo for usado como dependência por outras pessoas, as próprias substituições serão ignoradas.
Parâmetros
Parâmetro | Descrição |
---|---|
module_name
|
obrigatório O nome da dependência do módulo do Bazel a que essa substituição será aplicada. |
urls
|
string ou iterável de strings;
requerido Os URLs do arquivo. Podem ser URLs http(s):// ou file://. |
integrity
|
O padrão é '' A checksum esperada do arquivo, no formato de integridade da sub-recurso. |
strip_prefix
|
O padrão é '' Um prefixo de diretório para remover dos arquivos extraídos. |
patches
|
Iterável de strings.
o padrão é [] Uma lista de rótulos que apontam para arquivos de patch a serem aplicados a este módulo. Os arquivos de patch precisam existir na árvore de origem do projeto de nível superior. Elas são aplicadas na ordem da lista. |
patch_cmds
|
Iterável de strings.
o padrão é [] Sequência de comandos Bash a serem aplicados no Linux/Macos após a aplicação dos patches. |
patch_strip
|
o padrão é 0 Igual ao argumento --strip do patch do Unix. |
bazel_dep
None
bazel_dep(name, version='', max_compatibility_level=-1, repo_name='', dev_dependency=False)
Declara uma dependência direta em outro módulo do Bazel.
Parâmetros
Parâmetro | Descrição |
---|---|
name
|
required O nome do módulo a ser adicionado como dependência direta. |
version
|
padrão é '' A versão do módulo a ser adicionada como uma dependência direta. |
max_compatibility_level
|
O padrão é -1 O máximo de compatibility_level aceito para que o módulo seja adicionado como uma dependência direta. A versão do módulo implica o nível de compatibilidade mínimo aceito, bem como o máximo, se esse atributo não for especificado.
|
repo_name
|
o padrão é '' O nome do repositório externo que representa essa dependência. Esse é o nome padrão do módulo. |
dev_dependency
|
o padrão é False Se for verdadeira, essa dependência será ignorada se o módulo atual não for o módulo raiz ou se "--ignore_dev_dependency" estiver ativado. |
git_override
None
git_override(module_name, remote, commit='', patches=[], patch_cmds=[], patch_strip=0, init_submodules=False, strip_prefix='')
Especifica que uma dependência precisa vir de um determinado commit de um repositório Git. Essa diretiva só entra em vigor no módulo raiz. Em outras palavras, se um módulo é usado como dependência por outros, as substituições dele são ignoradas.
Parâmetros
Parâmetro | Descrição |
---|---|
module_name
|
required O nome da dependência do módulo do Bazel a que essa substituição será aplicada. |
remote
|
obrigatório O URL do repositório Git remoto. |
commit
|
o padrão é '' A confirmação a ser verificada. |
patches
|
Iterável de strings.
o padrão é [] Uma lista de rótulos que apontam para arquivos de patch a serem aplicados a este módulo. Os arquivos de patch precisam existir na árvore de origem do projeto de nível superior. Elas são aplicadas na ordem da lista. |
patch_cmds
|
Iterável de strings.
o padrão é [] Sequência de comandos Bash a serem aplicados no Linux/Macos após a aplicação dos patches. |
patch_strip
|
O padrão é 0 , o mesmo que o argumento --strip do patch do Unix. |
init_submodules
|
O padrão é False Define se os submódulos do Git no repositório buscado precisam ser inicializados recursivamente. |
strip_prefix
|
o padrão é '' Um prefixo de diretório a ser removido dos arquivos extraídos. Isso pode ser usado para segmentar um subdiretório do repositório git. O subdiretório precisa ter o próprio arquivo "MODULE.bazel" com um nome de módulo igual ao argumento "module_name" transmitido para "git_override". |
incluem
None
include(label)
Inclui o conteúdo de outro arquivo MODULE.bazel-like. Na prática, include()
se comporta como se o arquivo incluído fosse colocado textualmente no local da chamada include()
, exceto que as vinculações de variáveis (como as usadas para use_extension
) só são visíveis no arquivo em que ocorrem, e não em nenhum arquivo incluído ou que inclui.Somente o módulo raiz pode usar include()
. É um erro se um arquivo MODULE de bazel_dep
usar include()
.
Somente arquivos no repositório principal podem ser incluídos.
O include()
permite segmentar o arquivo do módulo raiz em várias partes para evitar ter um arquivo MODULE.bazel enorme ou gerenciar melhor o controle de acesso de segmentos semânticos individuais.
Parâmetros
Parâmetro | Descrição |
---|---|
label
|
obrigatório O rótulo que aponta para o arquivo a ser incluído. O rótulo precisa apontar para um arquivo no repositório principal. Em outras palavras, ele precisa começar com duas barras ( // ).
|
local_path_override
None
local_path_override(module_name, path)
Especifica que uma dependência deve vir de um determinado diretório no disco local. Essa diretiva só entra em vigor no módulo raiz. Em outras palavras, se um módulo é usado como dependência por outros, as substituições dele são ignoradas.
Parâmetros
Parâmetro | Descrição |
---|---|
module_name
|
required O nome da dependência do módulo do Bazel para aplicar essa substituição. |
path
|
obrigatório O caminho para o diretório em que este módulo está. |
module
None
module(name='', version='', compatibility_level=0, repo_name='', bazel_compatibility=[])
Declara determinadas propriedades do módulo do Bazel representadas pelo repositório atual do Bazel. Essas propriedades são metadados essenciais do módulo (como o nome e a versão) ou afetam o comportamento do módulo atual e dos elementos dependentes. Ela deve ser chamada no máximo uma vez e, se chamada, deve ser a primeira diretiva no arquivo MODULE.bazel. Ele só pode ser omitido se for o módulo raiz, ou seja, se não depender de outro módulo.
Parâmetros
Parâmetro | Descrição |
---|---|
name
|
default é '' O nome do módulo. Pode ser omitido se esse módulo for o módulo raiz (como se ele não depender de outro módulo). Um nome de módulo válido precisa: 1) conter apenas letras minúsculas (a-z), dígitos (0-9), pontos (.), hifens (-) e sublinhados (_); 2) começar com uma letra minúscula; 3) terminar com uma letra minúscula ou um dígito. |
version
|
o padrão é '' A versão do módulo. Pode ser omitido se esse módulo for o módulo raiz (como se ele não depender de outro módulo). A versão deve estar em um formato SemVer descontraído. consulte a documentação para mais detalhes. |
compatibility_level
|
padrão é 0 O nível de compatibilidade do módulo. Ele precisa ser alterado sempre que uma mudança incompatível importante for introduzida. Essa é essencialmente a "versão principal" do módulo em termos de SemVer, exceto por ele não estar incorporado na string da versão em si, mas existir como um campo separado. Módulos com diferentes níveis de compatibilidade participam da resolução da versão como se fossem módulos com nomes diferentes, mas o gráfico de dependência final não pode conter vários módulos com o mesmo nome, mas com níveis de compatibilidade diferentes (a menos que multiple_version_override esteja em vigor). Consulte a documentação para mais detalhes.
|
repo_name
|
o padrão é '' O nome do repositório que representa este módulo, como visto pelo próprio módulo. Por padrão, o nome do repositório é o mesmo do módulo. Isso pode ser especificado para facilitar a migração de projetos que usam um nome de repositório diferente do nome do módulo. |
bazel_compatibility
|
Iterável de strings;
o padrão é [] Uma lista de versões do Bazel que permite aos usuários declarar quais versões do Bazel são compatíveis com esse módulo. Ele NÃO afeta a resolução de dependências, mas o bzlmod vai usar essas informações para verificar se a versão atual do Bazel é compatível. O formato desse valor é uma string de alguns valores de restrição separados por vírgulas. Três restrições são aceitas: <=X.X.X: a versão do Bazel precisa ser igual ou anterior a X.X.X. É usada quando há uma mudança incompatível conhecida em uma versão mais recente. >=X.X.X: a versão do Bazel precisa ser igual ou mais recente que X.X.X.Usada quando você depende de alguns recursos disponíveis somente a partir de X.X.X. -X.X.X: a versão X.X.X do Bazel não é compatível. Usado quando há um bug em X.X.X que atrapalha você, mas corrigido em versões posteriores. |
multiple_version_override
None
multiple_version_override(module_name, versions, registry='')
Especifica que uma dependência ainda precisa vir de um registro, mas várias versões dela podem coexistir. Consulte a documentação para mais detalhes. Essa diretiva só entra em vigor no módulo raiz. Em outras palavras, se um módulo é usado como dependência por outros, as substituições dele são ignoradas.
Parâmetros
Parâmetro | Descrição |
---|---|
module_name
|
obrigatório O nome da dependência do módulo do Bazel a que essa substituição será aplicada. |
versions
|
Iterável de strings.
obrigatório Especifica explicitamente as versões que podem coexistir. Essas versões já precisam estar presentes na pré-seleção do gráfico de dependências. As dependências neste módulo serão "atualizadas" para a versão mais recente permitida mais próxima no mesmo nível de compatibilidade, enquanto as dependências que têm uma versão mais recente do que qualquer outra permitida no mesmo nível vão causar um erro. |
registry
|
default é '' Ignora o registro desse módulo. Em vez de encontrar esse módulo na lista padrão de registros, o registro fornecido precisa ser usado. |
register_execution_platforms
None
register_execution_platforms(dev_dependency=False, *platform_labels)
Especifica plataformas de execução já definidas para serem registradas quando este módulo for selecionado. Devem ser padrões de destino absolutos (ou seja, começando com @
ou //
). Consulte a resolução do conjunto de ferramentas para mais informações.
Parâmetros
Parâmetro | Descrição |
---|---|
dev_dependency
|
o padrão é False Se verdadeiro, as plataformas de execução não serão registradas se o módulo atual não for o módulo raiz ou se "--ignore_dev_dependency" estiver ativado. |
platform_labels
|
sequência de strings;
obrigatório Os rótulos das plataformas a serem registradas. |
register_toolchains
None
register_toolchains(dev_dependency=False, *toolchain_labels)
Especifica os conjuntos de ferramentas já definidos a serem registrados quando este módulo for selecionado. Devem ser padrões de destino absolutos (ou seja, começando com @
ou //
). Consulte a resolução do conjunto de ferramentas para mais informações.
Parâmetros
Parâmetro | Descrição |
---|---|
dev_dependency
|
O padrão é False Se verdadeiro, as cadeias de ferramentas não serão registradas se o módulo atual não for o raiz ou se `--ignore_dev_dependency` estiver ativado. |
toolchain_labels
|
sequência de strings
obrigatório Os rótulos dos conjuntos de ferramentas a serem registrados. Os rótulos podem incluir :all . Nesse caso, todos os destinos que fornecem o conjunto de ferramentas no pacote serão registrados em ordem lexicográfica pelo nome.
|
single_version_override
None
single_version_override(module_name, version='', registry='', patches=[], patch_cmds=[], patch_strip=0)
Especifica que uma dependência ainda deve vir de um registro, mas a versão deve ser fixada, o registro substituído ou uma lista de patches aplicados. Essa diretiva só entra em vigor no módulo raiz. Em outras palavras, se um módulo é usado como dependência por outros, as substituições dele são ignoradas.
Parâmetros
Parâmetro | Descrição |
---|---|
module_name
|
obrigatório O nome da dependência do módulo do Bazel a que essa substituição será aplicada. |
version
|
O padrão é '' Ignora a versão declarada deste módulo no gráfico de dependências. Em outras palavras, esse módulo será "fixado" nessa versão de substituição. Esse atributo pode ser omitido se só quisermos substituir o registro ou os patches. |
registry
|
default é '' Ignora o registro desse módulo. Em vez de encontrar esse módulo na lista padrão de registros, o registro fornecido precisa ser usado. |
patches
|
Iterável de strings.
O padrão é [] . Uma lista de identificadores que apontam para arquivos de patch a serem aplicados a este módulo. Os arquivos de patch precisam existir na árvore de origem do projeto de nível superior. Elas são aplicadas na ordem da lista. |
patch_cmds
|
Iterável de strings.
o padrão é [] Sequência de comandos Bash a serem aplicados no Linux/Macos após a aplicação dos patches. |
patch_strip
|
o padrão é 0 Igual ao argumento --strip do patch do Unix. |
use_extension
module_extension_proxy use_extension(extension_bzl_file, extension_name, *, dev_dependency=False, isolate=False)Retorna um objeto proxy que representa uma extensão de módulo. Os métodos dele podem ser invocados para criar tags de extensão de módulo.
Parâmetros
Parâmetro | Descrição |
---|---|
extension_bzl_file
|
obrigatório Um rótulo para o arquivo Starlark que define a extensão do módulo. |
extension_name
|
obrigatório O nome da extensão do módulo a ser usada. Um símbolo com esse nome precisa ser exportado pelo arquivo Starlark. |
dev_dependency
|
o padrão é False Se verdadeiro, esse uso da extensão do módulo será ignorado se o módulo atual não for o módulo raiz ou se "--ignore_dev_dependency" estiver ativado. |
isolate
|
o padrão é False Experimental. Esse parâmetro é experimental e pode ser alterado a qualquer momento. Não dependa dele. Ela pode ser ativada experimentalmente definindo ---experimental_isolated_extension_usages . Se verdadeiro, esse uso da extensão do módulo será isolado de todos os outros usos, tanto neste módulo quanto em outros. As tags criadas para esse uso não afetam outros usos, e os repositórios gerados pela extensão para esse uso são diferentes de todos os outros repositórios gerados pela extensão. No momento, esse parâmetro é experimental e só está disponível com a flag |
use_repo
None
use_repo(extension_proxy, *args, **kwargs)
Importa um ou mais repositórios gerados pela extensão de módulo especificada para o escopo do módulo atual.
Parâmetros
Parâmetro | Descrição |
---|---|
extension_proxy
|
required Um objeto proxy de extensão de módulo retornado por uma chamada use_extension .
|
args
|
required Os nomes dos repositórios a serem importados. |
kwargs
|
obrigatório Especifica determinados repositórios a serem importados para o escopo do módulo atual com nomes diferentes. As chaves precisam ser o nome a ser usado no escopo atual, e os valores precisam ser os nomes originais exportados pela extensão do módulo. |
use_repo_rule
repo_rule_proxy use_repo_rule(repo_rule_bzl_file, repo_rule_name)Retorna um valor de proxy que pode ser invocado diretamente no arquivo MODULE.bazel como uma regra de repositório, uma ou mais vezes. Os repositórios criados dessa forma são visíveis apenas para o módulo atual, com o nome declarado usando o atributo
name
no proxy. O atributo booleano dev_dependency
implícito também pode ser usado no proxy para indicar que um determinado repositório só será criado quando o módulo atual for o módulo raiz.
Parâmetros
Parâmetro | Descrição |
---|---|
repo_rule_bzl_file
|
obrigatório Um rótulo para o arquivo Starlark que define a regra do repositório. |
repo_rule_name
|
obrigatório O nome da regra de repositório a ser usada. Um símbolo com esse nome precisa ser exportado pelo arquivo Starlark. |