MODULE.bazel dosyaları

Sorun bildir Nightly · 8.4 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

MODULE.bazel dosyalarında kullanılabilen yöntemler.

Üyeler

archive_override

None archive_override(module_name, **kwargs)

Bu bağımlılığın, kayıt defterinden değil, belirli bir konumdaki bir arşiv dosyasından (zip, gzip vb.) gelmesi gerektiğini belirtir. Bu bağımlılık, http_archive kuralıyla desteklenir.

Bu yönerge yalnızca kök modülde geçerli olur. Başka bir deyişle, bir modül başkaları tarafından bağımlılık olarak kullanılıyorsa kendi geçersiz kılmaları yoksayılır.

Parametreler

Parametre Açıklama
module_name string; required
Bu geçersiz kılmanın uygulanacağı Bazel modülü bağımlılığının adı.
kwargs zorunlu
Diğer tüm bağımsız değişkenler temel http_archive deposuna iletilir kuralı. name özelliğinin belirtilmemesi gerektiğini unutmayın. Bunun yerine module_name özelliğini kullanın.

bazel_dep

None bazel_dep(name, version='', max_compatibility_level=-1, repo_name='', dev_dependency=False)

Başka bir Bazel modülüne doğrudan bağımlılık bildirir.

Parametreler

Parametre Açıklama
name string; required
Doğrudan bağımlılık olarak eklenecek modülün adı.
version string; varsayılan değer ''
Doğrudan bağımlılık olarak eklenecek modülün sürümü.
max_compatibility_level int; varsayılan değer -1
'tür Modülün doğrudan bağımlılık olarak eklenmesi için desteklenen maksimum compatibility_level. Modülün sürümü, desteklenen minimum compatibility_level'ı ve bu özellik belirtilmemişse maksimum değeri ifade eder.
repo_name string; veya None; varsayılan değer ''
Bu bağımlılığı temsil eden harici deponun adı. Bu, varsayılan olarak modülün adıdır. Bu bağımlılığı "nodep" bağımlılığı yapmak için None olarak ayarlanabilir: Bu durumda, bu bazel_dep spesifikasyonu yalnızca hedef modül, bağımlılık grafiğinde başka bir şekilde zaten varsa dikkate alınır.
dev_dependency bool; varsayılan değer False
Doğruysa mevcut modül kök modül değilse veya --ignore_dev_dependency etkinse bu bağımlılık yoksayılır.

git_override

None git_override(module_name, **kwargs)

Bu bağımlılığın kayıt defterinden değil, bir Git deposundaki belirli bir taahhütten gelmesi gerektiğini belirtir. Bu bağımlılık, git_repository kuralıyla desteklenir.

Bu yönerge yalnızca kök modülde geçerli olur. Başka bir deyişle, bir modül başkaları tarafından bağımlılık olarak kullanılıyorsa kendi geçersiz kılmaları yoksayılır.

Parametreler

Parametre Açıklama
module_name string; required
Bu geçersiz kılmanın uygulanacağı Bazel modülü bağımlılığının adı.
kwargs gerekli
Diğer tüm bağımsız değişkenler temel git_repository repo kuralına iletilir. name özelliğinin belirtilmemesi gerektiğini unutmayın. Bunun yerine module_name özelliğini kullanın.

dahil et

None include(label)

Başka bir MODULE.bazel benzeri dosyanın içeriğini içerir. include(), dahil edilen dosya metin olarak include() çağrısının konumuna yerleştirilmiş gibi davranır. Ancak değişken bağlamaları (ör. use_extension için kullanılanlar) yalnızca bulundukları dosyada görünür, dahil edilen veya dahil eden dosyalarda görünmez.

Yalnızca kök modül include() kullanabilir. Bir bazel_dep'nin MODULE dosyası include() kullanırsa hata oluşur.

Yalnızca ana depodaki dosyalar eklenebilir.

include(), büyük bir MODULE.bazel dosyanızın olmasını önlemek veya tek tek anlamsal segmentler için erişim kontrolünü daha iyi yönetmek amacıyla kök modül dosyasını birden fazla parçaya ayırmanıza olanak tanır.

Parametreler

Parametre Açıklama
label string; required
Dahil edilecek dosyayı gösteren etiket. Etiket, ana depodaki bir dosyayı işaret etmelidir. Diğer bir deyişle, çift eğik çizgiyle (//) başlamalıdır. Dosyanın adı .MODULE.bazel ile bitmeli ve . ile başlamamalıdır.

inject_repo

None inject_repo(extension_proxy, *args, **kwargs)

Belirtilen modül uzantısına bir veya daha fazla yeni depo ekler. Geçerli modül kök modül değilse veya --ignore_dev_dependency etkinse bu yoksayılır.

Mevcut bir depoyu geçersiz kılmak için bunun yerine override_repo kullanın.

Parametreler

Parametre Açıklama
extension_proxy module_extension_proxy; required
Bir use_extension çağrısı tarafından döndürülen modül uzantısı proxy nesnesi.
args zorunlu
Aynı ad altında uzantıya yerleştirilmesi gereken, mevcut modül tarafından görülebilen depolar.
kwargs required
Değerlerin, mevcut modül kapsamındaki depoların adları olduğu ve anahtarların, uzantıda görünecekleri ad olduğu, uzantıya eklenecek yeni depolar.

Geçerli tanımlayıcılar olmayan anahtarlar, ek anahtar kelime bağımsız değişkenleri olarak iletilen değişmez bir sözlük aracılığıyla belirtilebilir. Örneğin: inject_repo(extension_proxy, **{"foo.2": "foo"}).

local_path_override

None local_path_override(module_name, path)

Bu bağımlılığın kayıt defterinden değil, yerel diskteki belirli bir dizinden gelmesi gerektiğini belirtir. Bu bağımlılık, local_repository kuralıyla desteklenir.

Bu yönerge yalnızca kök modülde geçerli olur. Başka bir deyişle, bir modül başkaları tarafından bağımlılık olarak kullanılıyorsa kendi geçersiz kılmaları yoksayılır.

Parametreler

Parametre Açıklama
module_name string; required
Bu geçersiz kılmanın uygulanacağı Bazel modülü bağımlılığının adı.
path string; required
Bu modülün bulunduğu dizinin yolu.

modül

None module(name='', version='', compatibility_level=0, repo_name='', bazel_compatibility=[])

Geçerli Bazel deposu tarafından temsil edilen Bazel modülünün belirli özelliklerini bildirir. Bu özellikler, modülün temel meta verileridir (ör. ad ve sürüm) veya mevcut modülün ve bağımlılarının davranışını etkiler.

En fazla bir kez çağrılmalıdır ve çağrılırsa MODULE.bazel dosyasındaki ilk yönerge olmalıdır. Yalnızca bu modül kök modülse (yani başka bir modül tarafından kullanılmayacaksa) atlanabilir.

Parametreler

Parametre Açıklama
name string; varsayılan değer ''
Modülün adı. Yalnızca bu modül kök modülse (yani başka bir modül tarafından kullanılmayacaksa) atlanabilir. Geçerli bir modül adı: 1) yalnızca küçük harf (a-z), rakam (0-9), nokta (.), kısa çizgi (-) ve alt çizgi (_) içermelidir; 2) küçük harfle başlamalıdır; 3) küçük harf veya rakamla bitmelidir.
version string; varsayılan değer ''
Modülün sürümü. Yalnızca bu modül kök modülse (yani başka bir modül tarafından kullanılmayacaksa) atlanabilir. Sürüm, gevşek bir SemVer biçiminde olmalıdır. Daha fazla ayrıntı için belgeleri inceleyin.
compatibility_level int; varsayılan değer 0
Modülün uyumluluk düzeyi. Bu, uyumsuz büyük bir değişiklik yapıldığında her seferinde değiştirilmelidir. Bu, SemVer açısından modülün "ana sürümü"dür. Ancak sürüm dizesine yerleştirilmez ve ayrı bir alan olarak bulunur. Farklı uyumluluk düzeylerine sahip modüller, farklı adlara sahip modüller gibi sürüm çözümlemeye katılır. Ancak son bağımlılık grafiği, aynı ada ancak farklı uyumluluk düzeylerine sahip birden fazla modül içeremez (multiple_version_override geçerli olmadığı sürece). Daha fazla ayrıntı için belgeleri inceleyin.
repo_name string; varsayılan değer ''
Bu modülü temsil eden deponun, modülün kendisi tarafından görülen adı. Varsayılan olarak, depodaki modülün adı kullanılır. Bu, modül adından farklı bir depo adı kullanan projelerin taşınmasını kolaylaştırmak için belirtilebilir.
bazel_compatibility Dize yinelemesi; varsayılan değer []
Kullanıcıların hangi Bazel sürümlerinin bu modülle uyumlu olduğunu bildirmesine olanak tanıyan Bazel sürümlerinin listesi. Bu bilgi, bağımlılık çözümlemesini ETKİLEMEZ ancak bzlmod, mevcut Bazel sürümünüzün uyumlu olup olmadığını kontrol etmek için bu bilgiyi kullanır. Bu değerin biçimi, virgülle ayrılmış bazı kısıtlama değerlerinden oluşan bir dizedir. Üç kısıtlama desteklenir: <=X.X.X: Bazel sürümü, X.X.X sürümüne eşit veya daha eski olmalıdır. Daha yeni bir sürümde bilinen bir uyumsuz değişiklik olduğunda kullanılır. >=X.X.X: Bazel sürümü, X.X.X'e eşit veya daha yeni olmalıdır.Yalnızca X.X.X'ten itibaren kullanılabilen bazı özelliklere bağlı olduğunuzda kullanılır. -X.X.X: Bazel sürümü X.X.X uyumlu değildir. X.X.X sürümünde sizi etkileyen ancak sonraki sürümlerde düzeltilen bir hata olduğunda kullanılır.

multiple_version_override

None multiple_version_override(module_name, versions, registry='')

Bağımlılığın yine bir kayıt defterinden gelmesi gerektiğini ancak birden fazla sürümünün birlikte bulunmasına izin verilmesi gerektiğini belirtir. Daha fazla ayrıntı için belgeleri inceleyin. Bu yönerge yalnızca kök modülde geçerli olur. Başka bir deyişle, bir modül başkaları tarafından bağımlılık olarak kullanılıyorsa kendi geçersiz kılmaları yok sayılır.

Parametreler

Parametre Açıklama
module_name string; required
Bu geçersiz kılmanın uygulanacağı Bazel modülü bağımlılığının adı.
versions Dize yinelemesi; zorunlu
Birlikte bulunmasına izin verilen sürümleri açıkça belirtir. Bu sürümler, bağımlılık grafiği ön seçiminde zaten mevcut olmalıdır. Bu modüldeki bağımlılıklar, aynı uyumluluk düzeyinde izin verilen en yakın yüksek sürüme "yükseltilirken", aynı uyumluluk düzeyinde izin verilen sürümlerden daha yüksek bir sürüme sahip bağımlılıklar hataya neden olur.
registry string; varsayılan değer ''
Bu modül için kayıt defterini geçersiz kılar. Bu modül, varsayılan kayıt defteri listesinden bulunmak yerine belirtilen kayıt defteri kullanılmalıdır.

override_repo

None override_repo(extension_proxy, *args, **kwargs)

Belirli bir modül uzantısı tarafından tanımlanan bir veya daha fazla depoyu, mevcut modül tarafından görülebilen belirli depolarla geçersiz kılar. Bu, geçerli modül kök modül değilse veya `--ignore_dev_dependency` etkinse yoksayılır.

Yeni bir depo eklemek için bunun yerine inject_repo simgesini kullanın.

Parametreler

Parametre Açıklama
extension_proxy module_extension_proxy; required
Bir use_extension çağrısı tarafından döndürülen modül uzantısı proxy nesnesi.
args zorunlu
Uzantıdaki, mevcut modüldeki aynı ada sahip depolarla geçersiz kılınması gereken depolar.
kwargs zorunlu
Değerlerin, geçerli modül kapsamındaki depoların adları olduğu ve anahtarların, uzantıda geçersiz kılacakları depoların adları olduğu, uzantı tarafından oluşturulan depolara uygulanacak geçersiz kılmalar.

Geçerli tanımlayıcılar olmayan anahtarlar, ek anahtar kelime bağımsız değişkenleri olarak iletilen değişmez bir sözlük aracılığıyla belirtilebilir. Örneğin: override_repo(extension_proxy, **{"foo.2": "foo"}).

register_execution_platforms

None register_execution_platforms(dev_dependency=False, *platform_labels)

Bu modül seçildiğinde kaydedilecek, önceden tanımlanmış yürütme platformlarını belirtir. Mutlak hedef kalıpları olmalıdır (ör. @ veya // ile başlamalıdır). Daha fazla bilgi için toolchain çözümü bölümüne bakın. :all gibi birden fazla hedefi kapsayan kalıplar, ada göre sözlükbilimsel sırada kaydedilir.

Parametreler

Parametre Açıklama
dev_dependency bool; varsayılan değer False
Doğruysa mevcut modül kök modül değilse veya `--ignore_dev_dependency` etkinse yürütme platformları kaydedilmez.
platform_labels string'lerin sequence'ı; required
Kaydedilecek hedef kalıplar.

register_toolchains

None register_toolchains(dev_dependency=False, *toolchain_labels)

Bu modül seçildiğinde kaydedilecek, önceden tanımlanmış araç zincirlerini belirtir. Mutlak hedef kalıpları olmalıdır (ör. @ veya // ile başlamalıdır). Daha fazla bilgi için toolchain çözümü bölümüne bakın. :all gibi birden fazla hedefi kapsayan kalıplar, hedef adına (araç zinciri uygulamasının adı değil) göre sözlükbilimsel sırada kaydedilir.

Parametreler

Parametre Açıklama
dev_dependency bool; varsayılan değer False
Doğruysa mevcut modül kök modül değilse veya `--ignore_dev_dependency` etkinse araç zincirleri kaydedilmez.
toolchain_labels string'lerin sequence'ı; required
Kaydedilecek hedef kalıplar.

single_version_override

None single_version_override(module_name, version='', registry='', patches=[], patch_cmds=[], patch_strip=0)

Bağımlılığın yine bir sicilden gelmesi gerektiğini ancak sürümünün sabitlenmesi, sicilinin geçersiz kılınması veya bir yama listesinin uygulanması gerektiğini belirtir. Bu yönerge yalnızca kök modülde geçerli olur. Başka bir deyişle, bir modül başkaları tarafından bağımlılık olarak kullanılıyorsa kendi geçersiz kılmaları yok sayılır.

Parametreler

Parametre Açıklama
module_name string; required
Bu geçersiz kılmanın uygulanacağı Bazel modülü bağımlılığının adı.
version string; default is ''
Overrides the declared version of this module in the dependency graph. Yani bu modül, bu geçersiz kılma sürümüne "sabitlenir". Yalnızca kayıt otoritesi veya yamalar geçersiz kılınmak isteniyorsa bu özellik atlanabilir.
registry string; varsayılan değer ''
Bu modül için kayıt defterini geçersiz kılar. Bu modül, varsayılan kayıt defteri listesinden bulunmak yerine belirtilen kayıt defteri kullanılmalıdır.
patches Dize yinelemesi; varsayılan değer []
Bu modüle uygulanacak yama dosyalarını gösteren etiketlerin listesi. Yama dosyaları, üst düzey projenin kaynak ağacında bulunmalıdır. Listelenme sırasına göre uygulanır.

Bir yama, MODULE.bazel dosyasında değişiklik yaparsa bu değişiklikler yalnızca yama dosyası kök modül tarafından sağlanırsa geçerli olur.

patch_cmds Dize yineleyeni; varsayılan değer []
Yamalar uygulandıktan sonra Linux/MacOS'te uygulanacak Bash komutlarının sırası.

MODULE.bazel dosyasında yapılan değişiklikler etkili olmaz.

patch_strip int; varsayılan değer 0
Unix patch'in --strip bağımsız değişkeniyle aynıdır.

use_extension

module_extension_proxy use_extension(extension_bzl_file, extension_name, *, dev_dependency=False, isolate=False)

Bir modül uzantısını temsil eden bir proxy nesnesi döndürür. Modül uzantısı etiketleri oluşturmak için yöntemleri çağrılabilir.

Parametreler

Parametre Açıklama
extension_bzl_file string; required
Modül uzantısını tanımlayan Starlark dosyasına yönelik bir etiket.
extension_name string; required
Kullanılacak modül uzantısının adı. Bu ada sahip bir sembol, Starlark dosyası tarafından dışa aktarılmalıdır.
dev_dependency bool; varsayılan değer False
Doğruysa mevcut modül kök modül değilse veya `--ignore_dev_dependency` etkinse modül uzantısının bu kullanımı yoksayılır.
isolate bool; varsayılan değer False
Deneysel. Bu parametre deneyseldir ve herhangi bir zamanda değişebilir. Lütfen bu bilgileri kullanmayın. --experimental_isolated_extension_usages
ayarlanarak deneysel olarak etkinleştirilebilir. Doğruysa modül uzantısının bu kullanımı, hem bu hem de diğer modüllerdeki tüm diğer kullanımlardan izole edilir. Bu kullanım için oluşturulan etiketler diğer kullanımları etkilemez ve uzantı tarafından bu kullanım için oluşturulan depolar, uzantı tarafından oluşturulan diğer tüm depolardan farklıdır.

Bu parametre şu anda deneyseldir ve yalnızca --experimental_isolated_extension_usages işaretiyle kullanılabilir.

use_repo

None use_repo(extension_proxy, *args, **kwargs)

Belirtilen modül uzantısı tarafından oluşturulan bir veya daha fazla depoyu mevcut modülün kapsamına aktarır.

Parametreler

Parametre Açıklama
extension_proxy module_extension_proxy; required
Bir use_extension çağrısı tarafından döndürülen modül uzantısı proxy nesnesi.
args gerekli
İçe aktarılacak depoların adları.
kwargs gerekli
Belirli depoların, farklı adlarla mevcut modülün kapsamına aktarılacağını belirtir. Anahtarlar, geçerli kapsamda kullanılacak ad olmalıdır. Değerler ise modül uzantısı tarafından dışa aktarılan orijinal adlar olmalıdır.

Geçerli tanımlayıcılar olmayan anahtarlar, ek anahtar kelime bağımsız değişkenleri olarak iletilen değişmez bir sözlük aracılığıyla belirtilebilir. Örneğin: use_repo(extension_proxy, **{"foo.2": "foo"}).

use_repo_rule

repo_rule_proxy use_repo_rule(repo_rule_bzl_file, repo_rule_name)

MODULE.bazel dosyasında bir veya daha fazla kez doğrudan depo kuralı olarak çağrılabilen bir proxy değeri döndürür. Bu şekilde oluşturulan depolar yalnızca mevcut modül tarafından, proxy'de name özelliği kullanılarak belirtilen ad altında görünür. Belirli bir deponun yalnızca mevcut modül kök modül olduğunda oluşturulacağını belirtmek için proxy'de örtülü Boole dev_dependency özelliği de kullanılabilir.

Parametreler

Parametre Açıklama
repo_rule_bzl_file string; required
Depo kuralını tanımlayan Starlark dosyasına yönelik bir etiket.
repo_rule_name string; required
Kullanılacak depo kuralının adı. Bu ada sahip bir sembol, Starlark dosyası tarafından dışa aktarılmalıdır.