modül_kalori

Sorun bildir Kaynağı görüntüle Nightly · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

Bağımlılık grafiğindeki ilgili etiketler hakkında yardımcı işlevler ve bilgiler içeren modül uzantısının bağlamı. Bir modül uzantısı oluşturduğunuzda implementation işlevine bağımsız değişken olarak bir module_ctx nesnesi iletilir.

Üyeler

indir

unknown module_ctx.download(url, output='', sha256='', executable=False, allow_fail=False, canonical_id='', auth={}, headers={}, *, integrity='', block=True)

Belirtilen URL'deki dosyayı çıkış yoluna indirir ve success içeren bir yapı döndürür. success, indirme işlemi başarıyla tamamlandıysa true olan bir işarettir. Başarılı olursa sha256 ve integrity alanlarıyla birlikte dosyanın karmasını döndürür. sha256 veya integrity kullanıcı tarafından belirtildiğinde açık bir canonical_id ayarlanması önemle tavsiye edilir. Örneğin: get_default_canonical_id

Parametreler

Parametre Açıklama
url string veya string yinelemesi; zorunlu
Aynı dosyaya referans veren yansıtma URL'lerinin listesi.
output string; veya Label; veya path; varsayılan değer ''
çıkış dosyasının yolu (depo dizinine göre).
sha256 string; varsayılan değer ''
İndirilen dosyanın beklenen SHA-256 karması. Bu, indirilen dosyanın SHA-256 karmasıyla eşleşmelidir. Uzak dosyalar değişebileceğinden SHA-256'nın atlanması güvenlik riski oluşturur. Bu alanın atlanması en iyi ihtimalle derlemenizin hermetik olmamasına neden olur. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır. Sağlanırsa önce verilen karma değerine sahip bir dosya için depo önbelleği kontrol edilir. Yalnızca dosya önbellekte bulunamazsa indirme işlemi denenir. Başarılı bir indirme işleminden sonra dosya önbelleğe eklenir.
executable bool; varsayılan değer False
Oluşturulan dosyada yürütülebilir işaretini ayarlayın. Varsayılan olarak false (yanlış) değerindedir.
allow_fail bool; varsayılan değer False
Ayarlanırsa başarısız indirmeler için hata oluşturmak yerine döndürülen değerde hatayı belirtin.
canonical_id string; varsayılan değer ''
Ayarlanırsa önbellek isabetlerini, dosyanın önbelleğe aynı standart kimlikle eklendiği durumlarla sınırlandırın. Varsayılan olarak önbelleğe alma işleminde sağlama toplamı (sha256 veya integrity) kullanılır.
auth dict; varsayılan değer {}
Bazı URL'ler için kimlik doğrulama bilgilerini belirten isteğe bağlı bir sözlük.
headers dict; varsayılan değer {}
Tüm URL'ler için HTTP üst bilgilerini belirten isteğe bağlı bir sözlük.
integrity string; varsayılan değer ''
İndirilen dosyanın, alt kaynak bütünlüğü biçimindeki beklenen sağlama toplamı. Bu, indirilen dosyanın sağlama toplamıyla eşleşmelidir. Uzak dosyalar değişebileceğinden sağlama toplamını atlamak güvenlik riski oluşturur. Bu alanın atlanması en iyi ihtimalle derlemenizin hermetik olmamasına neden olur. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır. Sağlanırsa, verilen sağlama toplamı ile bir dosya için önce depo önbelleği kontrol edilir; yalnızca dosya önbellekte bulunamazsa indirme işlemi denenir. Başarılı bir indirme işleminden sonra dosya önbelleğe eklenir.
block bool; varsayılan değer True
'dir. false olarak ayarlanırsa çağrı hemen döndürülür ve normal dönüş değeri yerine, indirme işlemi tamamlanana kadar engellenen ve normal dönüş değerini döndüren veya her zamanki gibi hata veren tek bir yönteme (wait()) sahip bir jeton döndürülür.

download_and_extract

struct module_ctx.download_and_extract(url, output='', sha256='', type='', strip_prefix='', allow_fail=False, canonical_id='', auth={}, headers={}, *, integrity='', rename_files={})

Belirtilen URL için bir dosyayı çıkış yoluna indirir, dosyayı ayıklar ve success içeren bir yapı döndürür. Bu yapı, indirme işlemi başarıyla tamamlandıysa true olan bir işarettir. İndirme işlemi başarılıysa sha256 ve integrity alanlarını içeren dosyanın karmasını döndürür. sha256 veya integrity kullanıcı tarafından belirtildiğinde açık bir canonical_id ayarlanması önemle tavsiye edilir. Örneğin: get_default_canonical_id

Parametreler

Parametre Açıklama
url string veya string yinelemesi; zorunlu
Aynı dosyaya referans veren yansıtma URL'lerinin listesi.
output string; veya Label; veya path; varsayılan değer ''
Arşivin açılacağı dizinin yolu (depo dizinine göreli).
sha256 string; varsayılan değer ''
İndirilen dosyanın beklenen SHA-256 karması. Bu, indirilen dosyanın SHA-256 karmasıyla eşleşmelidir. Uzak dosyalar değişebileceğinden SHA-256'nın atlanması güvenlik riski oluşturur. Bu alanın atlanması en iyi ihtimalle derlemenizin hermetik olmamasına neden olur. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır. Sağlanırsa önce verilen karma değerine sahip bir dosya için depo önbelleği kontrol edilir. Yalnızca dosya önbellekte bulunamazsa indirme işlemi denenir. Başarılı bir indirme işleminden sonra dosya önbelleğe eklenir.
type string; varsayılan değer ''
İndirilen dosyanın arşiv türü. Varsayılan olarak, arşiv türü URL'nin dosya uzantısından belirlenir. Dosyanın uzantısı yoksa "zip", "jar", "war", "aar", "nupkg", "tar", "tar.gz", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".tbz", ".ar" veya ".deb" uzantılarını açıkça belirtebilirsiniz.
strip_prefix string; varsayılan değer ''
Çıkarılan dosyalardan kaldırılacak bir dizin öneki. Birçok arşiv, arşivdeki tüm dosyaları içeren bir üst düzey dizin içerir. build_file içinde bu öneki tekrar tekrar belirtmek yerine, bu alan çıkarılan dosyalardan öneki kaldırmak için kullanılabilir.

Bu parametre, uyumluluk için kullanımdan kaldırılan stripPrefix adı altında da kullanılabilir.

allow_fail bool; varsayılan değer False
Ayarlanırsa başarısız indirmeler için hata oluşturmak yerine döndürülen değerde hatayı belirtin.
canonical_id string; varsayılan değer ''
Ayarlanırsa önbellek isabetlerini, dosyanın önbelleğe aynı standart kimlikle eklendiği durumlarla sınırlandırın. Varsayılan olarak önbelleğe alma işleminde sağlama toplamı kullanılır" (sha256 veya integrity).
auth dict; varsayılan değer {}
Bazı URL'ler için kimlik doğrulama bilgilerini belirten isteğe bağlı bir sözlük.
headers dict; varsayılan değer {}
Tüm URL'ler için HTTP üst bilgilerini belirten isteğe bağlı bir sözlük.
integrity string; varsayılan değer ''
İndirilen dosyanın, alt kaynak bütünlüğü biçimindeki beklenen sağlama toplamı. Bu, indirilen dosyanın sağlama toplamıyla eşleşmelidir. Uzak dosyalar değişebileceğinden sağlama toplamını atlamak güvenlik riski oluşturur. Bu alanın atlanması en iyi ihtimalle derlemenizin hermetik olmamasına neden olur. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır. Sağlanırsa, verilen sağlama toplamı ile bir dosya için önce depo önbelleği kontrol edilir; yalnızca dosya önbellekte bulunamazsa indirme işlemi denenir. Başarılı bir indirme işleminden sonra dosya önbelleğe eklenir.
rename_files dict; varsayılan değer {}
Ayıklama sırasında yeniden adlandırılacak dosyaları belirten isteğe bağlı bir sözlük. Bir anahtarla tam olarak eşleşen adlara sahip arşiv girişleri, dizin önekinde herhangi bir düzenleme yapılmadan önce değer olarak yeniden adlandırılır. Bu seçenek, Unicode olmayan dosya adları içeren veya büyük/küçük harfe duyarsız dosya sistemlerinde aynı yola çıkarılacak dosyalar içeren arşivleri çıkarmak için kullanılabilir.

execute

exec_result module_ctx.execute(arguments, timeout=600, environment={}, quiet=True, working_directory="")

Bağımsız değişkenler listesi tarafından verilen komutu yürütür. Komutun yürütme süresi timeout ile sınırlıdır (saniye cinsinden, varsayılan 600 saniye). Bu yöntem, komutun çıkışını içeren bir exec_result yapısı döndürür. environment haritası, işleme iletilecek bazı ortam değişkenlerini geçersiz kılmak için kullanılabilir.

Parametreler

Parametre Açıklama
arguments sequence; required
Bağımsız değişkenlerin listesi. İlk öğe, yürütülecek programın yolu olmalıdır.
timeout int; varsayılan değer 600
Komutun saniye cinsinden maksimum süresi (varsayılan değer 600 saniyedir).
environment dict; varsayılan değer {}
Bazı ortam değişkenlerinin işleme aktarılmak üzere ayarlanmasını zorlar. Ortam değişkenini kaldırmak için değer None olabilir.
quiet bool; varsayılan değer True
stdout ve stderr'in terminale yazdırılıp yazdırılmayacağı.
working_directory string; varsayılan değer ""
Komut yürütme için çalışma dizini. Depo köküne göre göreceli veya mutlak olabilir. Varsayılan dizin, depo köküdür.

extension_metadata

extension_metadata module_ctx.extension_metadata(root_module_direct_deps=None, root_module_direct_dev_deps=None, reproducible=False)

Modül uzantısının uygulama işlevinden döndürülebilen ve uzantı tarafından oluşturulan depolarla ilgili meta verileri Bazel'e sağlayan opak bir nesne oluşturur.

Parametreler

Parametre Açıklama
root_module_direct_deps string'lerin sırası; veya string; veya None; varsayılan değer None
Uzantının, kök modülün doğrudan bağımlılıkları olarak kabul ettiği depoların adları. Kök modül ek depoları içe aktarıyorsa veya bu depoların tümünü use_repo aracılığıyla içe aktarmıyorsa Bazel, uzantı değerlendirilirken bir uyarı yazdırır ve kullanıcıya use_repo çağrılarını otomatik olarak düzeltmek için bazel mod tidy komutunu çalıştırmasını söyler.

root_module_direct_deps ise uzantı değerlendirildiğinde uyarı ve düzeltme komutu yazdırır.

root_module_direct_deps ve root_module_direct_dev_deps özelliklerinden biri belirtilirse diğeri de belirtilmelidir. Bu iki parametreyle belirtilen listeler ayrık olmalıdır.

root_module_direct_deps ve root_module_direct_dev_deps değerlerinden yalnızca biri, "all" özel değerine ayarlanabilir. Bu değer, uzantı tarafından oluşturulan tüm depoların adlarının bulunduğu bir liste değer olarak belirtilmiş gibi değerlendirilir.

root_module_direct_dev_deps string'lerin sırası; veya string; veya None; varsayılan değer None
Uzantının, kök modülün doğrudan geliştirme bağımlılıkları olarak kabul ettiği depoların adları. Kök modül ek depoları içe aktarıyorsa veya use_extension(..., dev_dependency = True) ile oluşturulan bir uzantı proxy'sinde use_repo aracılığıyla bu depoların tümünü içe aktarmıyorsa Bazel, uzantı değerlendirilirken bir uyarı yazdırır ve kullanıcıya use_repo çağrılarını otomatik olarak düzeltmek için bazel mod tidy komutunu çalıştırmasını söyler.

root_module_direct_deps ve root_module_direct_dev_deps özelliklerinden biri belirtilirse diğeri de belirtilmelidir. Bu iki parametreyle belirtilen listeler ayrık olmalıdır.

root_module_direct_deps ve root_module_direct_dev_deps değerlerinden yalnızca biri, "all" özel değerine ayarlanabilir. Bu değer, uzantı tarafından oluşturulan tüm depoların adlarının bulunduğu bir liste değer olarak belirtilmiş gibi değerlendirilir.

reproducible bool; varsayılan değer False
Bu modül uzantısının tam tekrarlanabilirliği sağladığını belirtir. Bu nedenle, kilit dosyasında depolanmamalıdır.

çıkarma

None module_ctx.extract(archive, output='', strip_prefix='', *, rename_files={}, watch_archive='auto')

Bir arşivi depo dizinine çıkarın.

Parametreler

Parametre Açıklama
archive string; veya Label; veya path; required
Arşivin açılacağı, depo dizinine göreli yol.
output string; veya Label; veya path; varsayılan değer ''
arşivin açılacağı dizinin yolu (depo dizinine göre).
strip_prefix string; varsayılan değer ''
çıkarılan dosyalardan kaldırılacak bir dizin öneki. Birçok arşiv, arşivdeki tüm dosyaları içeren bir üst düzey dizin içerir. Bu öneki build_file içinde tekrar tekrar belirtmek yerine, bu alan çıkarılan dosyalardan öneki kaldırmak için kullanılabilir.

Bu parametre, uyumluluk için kullanımdan kaldırılan stripPrefix adı altında da kullanılabilir.

rename_files dict; varsayılan değer {}
Ayıklama sırasında yeniden adlandırılacak dosyaları belirten isteğe bağlı bir sözlük. Bir anahtarla tam olarak eşleşen adlara sahip arşiv girişleri, dizin önekinde herhangi bir düzenleme yapılmadan önce değer olarak yeniden adlandırılır. Bu seçenek, Unicode olmayan dosya adları içeren veya büyük/küçük harfe duyarsız dosya sistemlerinde aynı yola çıkarılacak dosyalar içeren arşivleri çıkarmak için kullanılabilir.
watch_archive string; varsayılan değer 'auto'
arşiv dosyasının izlenip izlenmeyeceği. "yes", "no" veya "auto" dizesi olabilir. "yes" değerini iletmek, watch() yöntemini hemen çağırmaya eşdeğerdir; "no" değerini iletmek, dosyayı izlemeye çalışmaz; "auto" değerini iletmek ise dosyayı yalnızca yasal olarak izlemek mümkün olduğunda izlemeye çalışır (daha fazla bilgi için watch() belgelerine bakın).

dosya

None module_ctx.file(path, content='', executable=True, legacy_utf8=False)

Depo dizininde, sağlanan içerikle bir dosya oluşturur.

Parametreler

Parametre Açıklama
path string; veya Label; veya path; required
Oluşturulacak dosyanın, depo dizinine göre yolu.
content string; varsayılan değer ''
Oluşturulacak dosyanın içeriği. Varsayılan olarak boştur.
executable bool; varsayılan değer True
Oluşturulan dosyada yürütülebilir işaretini ayarlayın. Varsayılan olarak true değerini alır.
legacy_utf8 bool; varsayılan değer False
İşlem yapılmaz. Bu parametrenin desteği sonlandırılmıştır ve gelecekteki bir Bazel sürümünde kaldırılacaktır.

getenv

string module_ctx.getenv(name, default=None)

Bir ortam değişkeninin name değerini varsa dize olarak, yoksa default olarak döndürür.

Artımlı olarak oluştururken name ile adlandırılan değişkenin değerinde yapılan herhangi bir değişiklik, bu deponun yeniden getirilmesine neden olur.

Parametreler

Parametre Açıklama
name string; required
Name of desired environment variable.
default dize veya None; varsayılan değer None
name bulunamazsa döndürülecek varsayılan değer.
None iade edilebilir.

is_dev_dependency

bool module_ctx.is_dev_dependency(tag)

devDependency = True ile use_extension çağrısının sonucunda belirtilen etiketin olup olmadığını döndürür.

Parametreler

Parametre Açıklama
tag bazel_module_tag; required
bazel_module.tags'den alınan bir etiket.

modüllerin

list module_ctx.modules

Harici bağımlılık grafiğinde bu modül uzantısını kullanan tüm Bazel modüllerinin listesi. Bu modüllerin her biri, bu uzantı için belirttiği tüm etiketleri kullanıma sunan bir bazel_module nesnesidir. Bu sözlüğün yineleme sırasının, kök modülden başlayarak genişlik öncelikli arama ile aynı olacağı garanti edilir.

os

repository_os module_ctx.os

Sistemdeki bilgilere erişmek için kullanılan bir yapı.

yol

path module_ctx.path(path)

Dize, etiket veya yoldan bir yol döndürür. Yol göreliyse depo dizinine göre çözümlenir. Yol bir etiketse ilgili dosyanın yoluna çözümlenir. Uzak depoların analiz aşamasında yürütüldüğünü ve bu nedenle hedef sonuca bağlı olamayacağını (etiket, oluşturulmamış bir dosyayı işaret etmelidir) unutmayın. Yol bir yolsa bu yolu olduğu gibi döndürür.

Parametreler

Parametre Açıklama
path string; veya Label; veya path; required
string, Label veya path.

okuma

string module_ctx.read(path, *, watch='auto')

Dosya sistemindeki bir dosyanın içeriğini okur.

Parametreler

Parametre Açıklama
path string; veya Label; veya path; required
Okunacak dosyanın yolu.
watch string; varsayılan değer 'auto'
Dosyanın izlenip izlenmeyeceği. "yes", "no" veya "auto" dizesi olabilir. "yes" değerini iletmek, watch() yöntemini hemen çağırmaya eşdeğerdir; "no" değerini iletmek, dosyayı izlemeye çalışmaz; "auto" değerini iletmek ise dosyayı yalnızca yasal olarak izlemek mümkün olduğunda izlemeye çalışır (daha fazla bilgi için watch() belgelerine bakın).

report_progress

None module_ctx.report_progress(status='')

Bu depo veya modül uzantısının getirilmesiyle ilgili ilerleme durumunu günceller.

Parametreler

Parametre Açıklama
status string; varsayılan değer ''
string getirme ilerleme durumunun mevcut durumunu açıklar.

root_module_has_non_dev_dependency

bool module_ctx.root_module_has_non_dev_dependency

Kök modülün bu uzantıyı geliştirme bağımlılığı olmayan bir bağımlılık olarak kullanıp kullanmadığı.

kol saati

None module_ctx.watch(path)

Bazel'e, belirtilen yolda değişiklik olup olmadığını (yolun mevcut olup olmaması veya dosya ya da dizin olması fark etmeksizin) izlemesini söyler. Dosyada veya dizinde yapılan değişiklikler bu depo ya da modül uzantısını geçersiz kılar ve bir sonraki sefer yeniden getirilmesine veya yeniden değerlendirilmesine neden olur.

"Değişiklikler", dosyanın içeriğinde yapılan değişiklikleri (yol bir dosya ise), yolun daha önce dosya olup şimdi dizin olmasını veya tam tersini ve yolun var olmaya başlamasını ya da sonlanmasını içerir. Özellikle, yol bir dizinse bu işlem, dizindeki dosyalarda yapılan değişiklikleri içermez. Bunun için path.readdir() politikasını kullanın.

Şu anda getirilen depodaki veya mevcut modül uzantısının çalışma dizinindeki yolları izlemeye çalışmanın hataya neden olacağını unutmayın. Mevcut Bazel çalışma alanının dışındaki bir yolu izlemeye çalışan bir modül uzantısı da hatayla sonuçlanır.

Parametreler

Parametre Açıklama
path dize; veya Etiket; veya yol; zorunlu
İzlenecek dosyanın yolu.

hangi

path module_ctx.which(program)

İlgili programın path değerini veya yolda böyle bir program yoksa None değerini döndürür.

Parametreler

Parametre Açıklama
program string; required
Program to find in the path.
None iade edilebilir.