modül_kalori

Sorun bildir Kaynağı görüntüleyin Nightly · 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Bağımlılıklar grafiğindeki alakalı etiketlerle ilgili yardımcı işlevleri ve bilgileri içeren modül uzantısının bağlamı. Modül uzantısı oluşturduğunuzda implementation işlevine bağımsız değişken olarak bir module_ctx nesnesi alırsınız.

Üyeler

indir

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

Sağlanan URL için çıkış yoluna bir dosya indirir ve success öğesini içeren bir struct döndürür. Bu işaret, indirme işlemi başarıyla tamamlandıysa true ve başarılıysa sha256 ile integrity alanlarını içeren karma bir dosyadır. sha256 veya integrity kullanıcı tarafından belirtildiğinde açık bir canonical_id ayarlanması önemle tavsiye edilir. Ör. get_default_canonical_id

Parametreler

Parametre Açıklama
url dize veya dize öğelerinin Iterable dizisi; zorunlu
Aynı dosyaya atıfta bulunan ayna URL'lerin listesi.
output dize; veya Etiket; veya yol; varsayılan değer ''
depolama alanı dizine göre çıkış dosyasının yolu.
sha256 dize; 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 olmasını engeller. Geliştirmeyi kolaylaştırmak isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır. Sağlanırsa ilk olarak depo önbelleği, belirtilen karmaya sahip bir dosya olup olmadığını kontrol eder. İndirme işlemi yalnızca dosya önbellekte bulunamazsa denenir. İndirme işlemi başarılı olduğunda dosya önbelleğe eklenir.
executable bool; varsayılan olarak False şeklindedir
Oluşturulan dosyadaki yürütülebilir işareti varsayılan olarak false (yanlış) olarak ayarlar.
allow_fail bool; varsayılan değer False
Ayarlanırsa başarısız indirmeler için hata oluşturmak yerine hatayı döndürülen değerde belirtin.
canonical_id dize; varsayılan değer ''
Ayarlanırsa önbellek isabetlerini, dosyanın önbelleğe aynı standart kimlikle eklendiği durumlarla kısıtlayın. Varsayılan olarak önbelleğe alma işleminde sağlama toplamı (sha256 veya integrity) kullanılır.
auth dict; varsayılan değer {}
URL'lerin bazıları 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 dize; varsayılan değer ''
İndirilen dosyanın, Alt Öğe Bütünlüğü biçiminde beklenen sağlama toplamı. Bu, indirilen dosyanın sağlama toplamıyla eşleşmelidir. Uzak dosyalar değişebileceği için sağlama toplamının atlanması güvenlik riski oluşturur. Bu alanın atlanması, en iyi ihtimalle derlemenizin hermetik olmasını engeller. Geliştirmeyi kolaylaştırmak isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır. Sağlanmışsa, depo önbelleği öncelikle belirtilen sağlama toplamına sahip bir dosya için kontrol edilir; indirme işlemi yalnızca dosya önbellekte bulunamadığında denenir. İndirme işlemi başarılı olduktan sonra dosya önbelleğe eklenir.
block bool; varsayılan True
değerine ayarlanırsa çağrı hemen geri döner ve normal döndürülen değer yerine tek bir yönteme sahip tek bir jeton döndürür. edinmek için Wait(), indirmenin tamamlanmasını engeller ve normal döndürülen değeri döndürür veya her zamanki gibi atar.

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={})

Bir dosyayı, sağlanan URL'nin çıkış yoluna indirir, dosyayı çıkarır ve success içeren bir yapı döndürür. Bu yapı, indirme işlemi başarıyla tamamlanırsa true olan bir işarettir. İşlem başarılı olursa 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. Ör. get_default_canonical_id

Parametreler

Parametre Açıklama
url string; veya dizelerin yinelenebilir; gerekli
Aynı dosyaya referans veren yansıtma URL'lerinin listesi.
output dize; veya etiket; veya yol; varsayılan değer ''
Arşivin, depo dizine göre açılacağı dizinin yolu.
sha256 dize; 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'yı çıkarmak güvenlik riski oluşturur. Bu alanın atlanması, en iyi ihtimalle derlemenizin hermetik olmasını engeller. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak göndermeden önce ayarlanmalıdır. Sağlanırsa ilk olarak depo önbelleği, belirtilen karmaya sahip bir dosya olup olmadığını kontrol eder. İndirme işlemi yalnızca dosya önbellekte bulunamazsa denenir. İndirme işlemi başarılı olduktan sonra dosya önbelleğe eklenir.
type dize; varsayılan değer ''
İndirilen dosyanın arşiv türü. Arşiv türü varsayılan olarak URL'nin dosya uzantısından belirlenir. Dosyanın uzantısı yoksa, açık bir şekilde "zip", "jar", "war", "aar", "nupkg", "tar", "tar.gz", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".tbz" veya ".debz", ".debz" değerlerini belirtebilirsiniz.
strip_prefix dize; varsayılan değer ''
Ayıklanan dosyalardan kaldırılacak bir dizin ön eki. Birçok arşiv, arşivdeki tüm dosyaları içeren üst düzey bir dizin içerir. Bu öneki build_file içinde tekrar tekrar belirtmek yerine, bu alan çıkarılan dosyalardan kaldırmak için kullanılabilir.

Uyumluluk için bu parametre, desteği sonlandırılan stripPrefix adı altında da kullanılabilir.

allow_fail bool; varsayılan False şeklindedir
Ayarlanırsa, başarısız indirmeler için hata mesajı göndermek yerine döndürülen değerde hatayı belirtin.
canonical_id dize; varsayılan değer ''
Ayarlanırsa önbellek isabetlerini, dosyanın önbelleğe aynı standart kimlikle eklendiği durumlarla kısıtlayın. Önbelleğe alma varsayılan olarak sağlama toplamını kullanır" (sha256 veya integrity).
auth dict; varsayılan değer {}
URL'lerin bazıları için kimlik doğrulama bilgilerini belirten isteğe bağlı bir sözlük.
headers dict; varsayılan olarak {} şeklindedir
Tüm URL'ler için http başlıkları belirten isteğe bağlı bir ifade.
integrity dize; varsayılan değer ''
İndirilen dosyanın, Alt Öğe Bütünlüğü biçiminde 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ı çıkarmak güvenlik açısından risklidir. Bu alanın atlanması, en iyi ihtimalle derlemenizin hermetik olmasını engeller. Geliştirmeyi kolaylaştırmak için isteğe bağlıdır ancak göndermeden önce ayarlanmalıdır. Sağlanırsa depo önbelleği, önce belirtilen sağlama toplamına sahip bir dosya olup olmadığı açısından kontrol edilir. İndirme işlemi yalnızca dosya önbellekte bulunamazsa denenir. İndirme işlemi başarılı olduğunda 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. Adları bir anahtarla tam olarak eşleşen arşiv girişleri, dizin ön ek düzenlemesinden önce değerle yeniden adlandırılır. Bu seçenek, Unicode olmayan dosya adları içeren veya büyük/küçük harf duyarlı olmayan dosya sistemlerinde aynı yola ayıklanacak dosyalar içeren arşivleri ayıklamak 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 olarak 600 saniye). Bu yöntem, komut çı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; gerekli
Bağımsız değişkenlerin listesi; ilk öğe, yürütülecek programa giden yol olmalıdır.
timeout int; varsayılan değer 600
Saniye cinsinden komutun maksimum süresi (varsayılan değer 600 saniyedir).
environment dict; varsayılan değer {} şeklindedir
Bazı ortam değişkenlerinin işleme aktarılması için ayarlanmasını zorunlu kılın. Ortam değişkenini kaldırmak için değer None olabilir.
quiet bool; varsayılan değer True
stdout ve stderr'nin terminale yazdırılıp yazdırılmayacağını belirtir.
working_directory dize; varsayılan olarak ""
Komut yürütme için çalışma dizini. Depo köküne göre göreli 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)

Bazel uzantısı tarafından oluşturulan depolar hakkında meta veri sağlamak için modül uzantısının uygulama işlevinden döndürülebilecek opak bir nesne oluşturur.

Parametreler

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

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

root_module_direct_deps ve root_module_direct_dev_deps'den biri belirtilirse diğeri de belirtilmelidir. Bu iki parametre tarafından belirtilen listeler ayrı olmalıdır.

root_module_direct_deps ve root_module_direct_dev_deps arasından tam olarak biri "all" özel değerine ayarlanabilir. Bu değer, uzantı tarafından oluşturulan tüm depoların adlarını içeren bir listeymiş gibi değerlendirilir.

root_module_direct_dev_deps Dize dizisi; veya dize; veya None; varsayılan değer None
Uzantı tarafından kök modülün doğrudan geliştirici bağımlılıkları olarak kabul edilen depoların adları. Kök modül ek depoları içe aktarırsa veya use_extension(..., dev_dependency = True) ile oluşturulan uzantı proxy'sinde use_repo aracılığıyla bu depoların tümünü içe aktarmazsa Bazel, uzantı değerlendirildiğinde bir uyarı yazdırarak use_repo çağrılarını otomatik olarak düzeltmek için kullanıcıdan bazel mod tidy çalıştırmasını ister.

root_module_direct_deps ve root_module_direct_dev_deps'den biri belirtilirse diğeri de belirtilmelidir. Bu iki parametre tarafından belirtilen listeler kesişmemelidir.

root_module_direct_deps ve root_module_direct_dev_deps arasından tam olarak biri "all" özel değerine ayarlanabilir. Bu değer, uzantı tarafından oluşturulan tüm depoların adlarını içeren bir listeymiş gibi değerlendirilir.

reproducible bool; varsayılan değer False
Bu modül uzantısının tamamen yeniden üretilebilir olduğunu ve bu nedenle kilit dosyasında depolanmamasını belirtir.

ayıklamak

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

Depo dizinine bir arşiv çıkarın.

Parametreler

Parametre Açıklama
archive dize; veya Etiket; veya yol; kod deposu dizinine göre paketi açılacak arşivin gerekli
yolu.
output dize; veya etiket; veya yol; varsayılan değer ''
Arşivin, depo dizine göre paketten çıkarılacağı dizinin yolu.
strip_prefix dize; varsayılan değer ''
Ayıklanan dosyalardan kaldırılacak bir dizin ön eki. Birçok arşiv, arşivdeki tüm dosyaları içeren üst düzey bir dizin içerir. Bu öneki build_file içinde tekrar tekrar belirtmek yerine, bu alan çıkarılan dosyalardan kaldırmak için kullanılabilir.

Uyumluluk için bu parametre, desteği sonlandı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. Adları bir anahtarla tam olarak eşleşen arşiv girişleri, dizin ön ek düzenlemesinden önce değerle yeniden adlandırılır. Bu seçenek, Unicode olmayan dosya adları içeren veya büyük/küçük harf duyarlı olmayan dosya sistemlerinde aynı yola ayıklanacak dosyalar içeren arşivleri ayıklamak için kullanılabilir.
watch_archive dize; varsayılan değer 'auto'
Arşiv dosyasının izlenip izlenmeyeceği. "Evet", "hayır" veya "otomatik" dizesi olabilir. "yes" değerini iletmek, watch() yönteminin hemen çağrılmasına eşdeğerdir; "no" değerini iletmek, dosyayı izlemeye çalışmaz; "auto" değerini iletmek, dosyayı yalnızca izlemenin yasal olduğu durumlarda izlemeye çalışır (daha fazla bilgi için watch() belgelerine bakın).

dosya

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

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

Parametreler

Parametre Açıklama
path dize; veya Etiket; veya yol; zorunlu
Repo dizine göre oluşturulacak dosyanın yolu.
content dize; varsayılan değer ''
Oluşturulacak dosyanın içeriğidir. Varsayılan olarak boştur.
executable bool; varsayılan değer True
Oluşturulan dosyada yürütülebilirlik işaretini ayarlayın. Varsayılan olarak doğrudur.
legacy_utf8 bool; varsayılan değer True
Dosya içeriğini UTF-8 olarak kodlayın. Varsayılan olarak doğrudur. Gelecekteki sürümlerde varsayılan ayar değiştirilecek ve bu parametre kaldırılacaktır.

Getenv

string module_ctx.getenv(name, default=None)

Varsa bir ortam değişkeninin (name) değerini dize olarak, yoksa default değerini döndürür.

Artımlı olarak derleme yaparken name tarafından adlandırılan değişken değerinde yapılacak herhangi bir değişiklik, bu deponun yeniden getirilmesine neden olur.

Parametreler

Parametre Açıklama
name string; required
İstenen ortam değişkeninin adı.
default dize veya None; varsayılan değer None
name bulunamazsa döndürülecek varsayılan değer.
None değerini döndürebilir.

is_dev_dependency

bool module_ctx.is_dev_dependency(tag)

Belirtilen etiketin, devDependency = True ile bir use_extension çağrısının sonucunda belirtilip belirtilmediğini döndürür.

Parametreler

Parametre Açıklama
tag bazel_module_tag; zorunlu
bazel_module.tags kaynağından 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 gösteren bir bazel_module nesnesi şeklindedir. Bu sözlüğün iterasyon sırasının, kök modülden başlayarak geniş kapsamlı aramayla 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)

Bir dize, etiket veya yoldan yol döndürür. Göreli bir yol ise kod deposu dizine 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 dolayısıyla bir hedef sonuca bağlı olamayacağını unutmayın (etiket, oluşturulmamış bir dosyaya işaret etmelidir). path bir yol ise bu yol olduğu gibi döndürülür.

Parametreler

Parametre Açıklama
path dize; veya Etiket; veya yol; zorunlu
string, Label veya path'ten yol oluşturma.

okuma

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

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

Parametreler

Parametre Açıklama
path dize; veya Etiket; veya yol; zorunlu
İçinden okunacak dosyanın yolu.
watch dize; varsayılan değer 'auto'
Dosyanın izlenip izlenmeyeceği. "Evet", "hayır" veya "otomatik" dizesi olabilir. "yes" değerini iletmek, watch() yönteminin hemen çağrılmasına eşdeğerdir; "no" değerini iletmek, dosyayı izlemeye çalışmaz; "auto" değerini iletmek, dosyayı yalnızca izlemenin yasal olduğu durumlarda 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 dize; varsayılan olarak ''
string, getirme işleminin 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ştirici dışı bir bağımlılık olarak kullanıp kullanmadığı.

kol saati

None module_ctx.watch(path)

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

"Değişiklikler", dosyanın içeriğindeki değişiklikleri (yol bir dosyaysa), yolun dosya iken dizin haline gelmesini veya bunun tam tersini, yolun var olmaya başlamasını ya da varlığını sonlandırmasını içerir. Yol bir dizinse bu, dizin altındaki dosyalarda yapılan değişiklikleri kapsamaz. Bunun için path.readdir() kullanın.

Şu anda getirilmekte olan deponun veya mevcut modül uzantısının çalışma dizininin içindeki yolları izlemeye çalışmanın hatayla sonuçlanacağını unutmayın. Mevcut Bazel çalışma alanının dışındaki bir yolu izlemeye çalışan modül uzantıları 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
Yolda bulunacak program.
None sonucunu döndürebilir.