modül_kalori

. Sorun bildirin Kaynağı göster Gece · 7,3 · 7,2 · 7,1 · 7,0 · 6,5

. Bağımlılık grafiğindeki ilgili etiketler hakkında yardımcı işlevleri ve bilgileri içeren modül uzantısının bağlamı. Bir modül uzantısı oluşturduğunuzda, implementation işlevinin bağımsız değişkeni olarak bir modül_ctx nesnesi alırsınız.

Üyeler

indirme

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.

Parametreler

Parametre Açıklama
url string; veya dizeler yinelenebilir; gerekli
Aynı dosyaya referansta bulunan yansıtma URL'lerinin listesi.
output string; veya Etiket; veya yol; varsayılan ayar ''
yolunu işaret eder.
sha256 string; varsayılan değer: ''
İndirilen dosyanın beklenen SHA-256 karma değeri. Bu değer, 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ı atlamak, derlemenizi hermetik hale getirmez. Geliştirmeyi kolaylaştırmak isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır. Kod deposu önbelleği, sağlanırsa öncelikle verilen karmaya sahip bir dosya için kontrol edilir. İndirme işlemi yalnızca dosya önbellekte bulunmazsa denenir. İndirme işlemi başarılı olduktan sonra dosya önbelleğe eklenir.
executable bool; varsayılan değer: False
Oluşturulan dosyada yürütülebilir bayrağı 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 mesajı iletmek 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. Önbelleğe alma varsayılan olarak sağlama toplamını (sha256 veya integrity) kullanır.
auth dict; varsayılan değer: {}
Bazı URL'lerin kimlik doğrulama bilgilerini belirten isteğe bağlı bir metin.
headers dict; varsayılan değer: {}
Tüm URL'ler için http üstbilgilerini belirten isteğe bağlı bir ifade.
integrity string; varsayılan değer: ''
İndirilen dosyanın, Alt Kaynak Bütünlüğü biçiminde beklenen sağlama toplamı. Bu değer, 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ı atlamak, derlemenizi hermetik hale getirmez. Geliştirmeyi kolaylaştırmak isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır. Kod deposu önbelleği sağlanmışsa önce sağlanan sağlama toplamına sahip bir dosya olup olmadığı kontrol edilir. İndirme işlemi yalnızca dosya önbellekte bulunmazsa denenir. İndirme işlemi başarılı olduktan sonra dosya önbelleğe eklenir.
block bool; varsayılan değer: True
False (yanlış) değerine ayarlanırsa çağrı hemen geri döner ve normal döndürülen değer yerine tek bir yönteme sahip (bekle) yöntemini döndürür. Bu yöntem, indirmenin tamamlanmasını engeller ve normal döndürülen değeri döndürür ya da her zamanki gibi atar.

download_and_extract

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

Sağlanan URL'nin çıkış yoluna bir dosya indirir, dosyayı ayıklar ve success 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ında dosyanın karmasını oluşturur.

Parametreler

Parametre Açıklama
url string; veya dizeler yinelenebilir; gerekli
Aynı dosyaya referansta bulunan yansıtma URL'lerinin listesi.
output string; veya Etiket; veya yol; varsayılan ayar ''
Arşivin paketinin açılacağı dizine giden yol (kod deposu dizinine göre).
sha256 string; varsayılan değer: ''
İndirilen dosyanın beklenen SHA-256 karma değeri. Bu değer, 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ı atlamak, derlemenizi hermetik hale getirmez. Geliştirmeyi kolaylaştırmak isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır. Kod deposu önbelleği, sağlanırsa öncelikle verilen karmaya sahip bir dosya için kontrol edilir. İndirme işlemi yalnızca dosya önbellekte bulunmazsa denenir. İndirme işlemi başarılı olduktan 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ına göre belirlenir. Dosyanın uzantısı yoksa, açık bir şekilde "zip", "jar", "war", "aar", "tar", "tar.gz", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".tbz", ".deb" veya ".debz" değerlerini belirtebilirsiniz. burayı tıklayın.
stripPrefix string; varsayılan değer: ''
Ayıklanan dosyalardan alınacak dizin ön eki. Birçok arşiv, arşivdeki tüm dosyaları içeren üst düzey bir dizin içerir. Bu ön eki build_file içinde tekrar tekrar belirtmek yerine bu alan, ayıklanan dosyalardan onu ayırmak için kullanılabilir.
allow_fail bool; varsayılan değer: False
Ayarlanırsa, başarısız indirmeler için hata mesajı iletmek 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, sağlama toplamını kullanır" (sha256 veya integrity).
auth dict; varsayılan değer: {}
Bazı URL'lerin kimlik doğrulama bilgilerini belirten isteğe bağlı bir metin.
headers dict; varsayılan değer: {}
Tüm URL'ler için http üstbilgilerini belirten isteğe bağlı bir ifade.
integrity string; varsayılan değer: ''
İndirilen dosyanın, Alt Kaynak Bütünlüğü biçiminde beklenen sağlama toplamı. Bu değer, 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ı atlamak, derlemenizi hermetik hale getirmez. Geliştirmeyi kolaylaştırmak isteğe bağlıdır ancak gönderimden önce ayarlanmalıdır. Kod deposu önbelleği sağlanmışsa önce sağlanan sağlama toplamına sahip bir dosya olup olmadığı kontrol edilir. İndirme işlemi yalnızca dosya önbellekte bulunmazsa denenir. İndirme işlemi başarılı olduktan 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 dikt. Bir anahtarla tam olarak eşleşen adlara sahip arşiv girişleri, herhangi bir dizin öneki ayarlamasından önce değer olarak yeniden adlandırılır. Bu komut, Unicode olmayan dosya adları veya büyük/küçük harfe duyarlı olmayan dosya sistemlerinde aynı yola çıkarılacak dosyalara sahip 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ütülme süresi timeout ile sınırlıdır (saniye cinsinden, varsayılan 600 saniye). Bu yöntem, komut çıkışını içeren bir exec_result yapısı döndürür. environment eşlemesi, 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şkenler listesi, ilk öğe yürütülecek programa giden yol 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ılması için ayarlanmasını zorunlu kılın.
quiet bool; varsayılan değer: True
stdout ve stderr'in terminale yazdırılması gerekiyorsa.
working_directory string; varsayılan değer: ""
Komut yürütme için çalışma dizini. Depo kökü veya mutlak ile göreli 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 sequence of dize; veya dize; veya None; varsayılan ayar 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 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 komutunu çalıştırmasını ister.

root_module_direct_deps özelliklerinden biri, uzantı değerlendirildiğinde bir uyarı ve düzeltme komutu yazdırır.

root_module_direct_deps ve root_module_direct_dev_deps özelliklerinden biri belirtilirse diğerinin de belirtilmesi gerekir. Bu iki parametre ile belirtilen listeler ayrı olmalıdır.

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

root_module_direct_dev_deps sequence of dize; veya dize; veya None; varsayılan ayar None
Uzantının, kök modülün doğrudan geliştirici bağımlıları olarak kabul ettiği 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üzeltmesi için kullanıcıdan bazel mod tidy çalıştırmasını ister.

root_module_direct_deps ve root_module_direct_dev_deps özelliklerinden biri belirtilirse diğerinin de belirtilmesi gerekir. Bu iki parametre ile belirtilen listeler ayrı olmalıdır.

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

reproducible bool; varsayılan değer: False
Bu modül uzantısının eksiksiz bir yeniden oluşturulabilirlik sağladığı, bu nedenle kilit dosyasında depolanmaması gerektiğini belirtir.

ayıklama

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

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

Parametreler

Parametre Açıklama
archive string; veya Etiket; veya yol; gerekli
yolu.
output string; veya Etiket; veya yol; varsayılan ayar ''
arşivin paketten çıkarılacağı dizine giden yol.
stripPrefix string; varsayılan değer: ''
ayıklanmış dosyalardan ayırmak için bir dizin öneki. Birçok arşiv, arşivdeki tüm dosyaları içeren üst düzey bir dizin içerir. Bu ön eki build_file içinde tekrar tekrar belirtmek yerine bu alan, ayıklanan dosyalardan onu ayırmak için 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 dikt. Bir anahtarla tam olarak eşleşen adlara sahip arşiv girişleri, herhangi bir dizin öneki ayarlamasından önce değer olarak yeniden adlandırılır. Bu komut, Unicode olmayan dosya adları veya büyük/küçük harfe duyarlı olmayan dosya sistemlerinde aynı yola çıkarılacak dosyalara sahip arşivleri ayıklamak için kullanılabilir.
watch_archive string; varsayılan değer: 'auto'
arşiv dosyasının izlenip izlenmeyeceğini seçebilirsiniz. "Evet", "hayır" veya "otomatik" dizesi olabilir. "Evet" cevabını verin watch() yöntemini hemen çağırmaya eşdeğerdir; "hayır" denme dosyayı izlemeye çalışmaz; "auto" geçen dosyayı yalnızca yasal olduğunda izlemeye çalışır (daha fazla bilgi için watch() dokümanlarına 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 string; veya Etiket; veya yol; gerekli
Oluşturulacak dosyanın, depo dizinine göre belirlenen 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 dosyadaki yürütülebilir işareti varsayılan olarak true olarak ayarlayın.
legacy_utf8 bool; varsayılan değer: True
Dosya içeriğini varsayılan olarak UTF-8 biçiminde kodlayın. 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)

Bir ortam değişkeninin değerini name varsa 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; gerekli
İstenen ortam değişkeninin adı.
default string; veya None; varsayılan değer: None
name bulunamazsa döndürülecek varsayılan değer.
None sonucunu 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 belirtilmeyeceğini döndürür.

Parametreler

Parametre Açıklama
tag bazel_module_tag; zorunlu
bazel_module.tags adresinden 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. Bunların her biri, uzantı için belirttiği tüm etiketleri gösteren bir bazel_module nesnesidir. Bu sözlüğün iterasyon sırasının, kök modülden başlayarak kapsama öncelik veren aramayla aynı olması garanti edilmektedir.

işletim sistemi

repository_os module_ctx.os

Sistemdeki bilgilere erişmek için bir struct.

yol

path module_ctx.path(path)

Bir dize, etiket veya yoldan yol döndürür. Yol göreceliyse, depo dizinine göre çözümlenir. Yol bir etiketse karşılık gelen 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). Yol bir yol ise bu yolu olduğu gibi döndürür. .

Parametreler

Parametre Açıklama
path string; veya Etiket; veya yol; gerekli
Başlangıç noktası olarak yol oluşturmak için string, Label veya path kullanın.

okuma

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

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

Parametreler

Parametre Açıklama
path string; veya Etiket; veya yol; gerekli
Okumanın kaynaklanacağı dosyanın yolu.
watch string; varsayılan değer: 'auto'
Dosyanın izlenip izlenmeyeceğini belirler. "Evet", "hayır" veya "otomatik" dizesi olabilir. "Evet" cevabını verin watch() yöntemini hemen çağırmaya eşdeğerdir; "hayır" denme dosyayı izlemeye çalışmaz; "auto" geçen dosyayı yalnızca yasal olduğunda izlemeye çalışır (daha fazla bilgi için watch() dokümanlarına 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 işleminin mevcut durumunu açıklıyor.

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'a, belirtilen yoldaki (mevcut değil) veya bir dosya ya da dizin olan değişiklikleri izlemesini söyler. Dosya veya dizinde yapılan herhangi bir değişiklik, bu depo veya modül uzantısını geçersiz kılar ve tekrar getirilmesine veya bir sonraki sefer yeniden değerlendirilmesine neden olur.

"Değişiklikler" dosyanın içeriğinde yapılan değişiklikleri dahil etme (yol bir dosyaysa); yol bir dosyaysa ancak şimdi bir dizinse (veya tam tersi) ve yolun mevcut olup olmadığını görebilirsiniz. Dikkate değer bir nokta, yol bir dizinse dizin altındaki herhangi bir dosyada yapılan değişiklikleri içermez. Bunun için path.readdir() değerini kullanın.

Getirilmekte olan deponun içindeki veya mevcut modül uzantısının çalışma dizinindeki yolları izlemeye çalışırsanız hatayla karşılaşacaksınız. Mevcut Bazel çalışma alanının dışındaki yolu izlemeye çalışan modül uzantıları da hatayla sonuçlanır.

Parametreler

Parametre Açıklama
path string; veya Etiket; veya yol; gerekli
İ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; gerekli
programda bulabilirsiniz.
None sonucunu döndürebilir.