मॉड्यूल_टैब

किसी समस्या की शिकायत करें सोर्स देखें Nightly · 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

मॉड्यूल एक्सटेंशन का कॉन्टेक्स्ट, जिसमें हेल्पर फ़ंक्शन और डिपेंडेंसी ग्राफ़ में काम के टैग की जानकारी शामिल होती है. मॉड्यूल एक्सटेंशन बनाते समय, आपको implementation फ़ंक्शन में आर्ग्युमेंट के तौर पर एकModul_ctx ऑब्जेक्ट मिलता है.

सदस्य

डाउनलोड करें

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

दिए गए यूआरएल के आउटपुट पाथ पर एक फ़ाइल डाउनलोड करता है और success वाला एक स्ट्रक्चर देता है. यह एक फ़्लैग होता है, जो डाउनलोड पूरा होने पर true होता है. साथ ही, sha256 और integrity फ़ील्ड वाली फ़ाइल का हैश करता है. जब sha256 या integrity को उपयोगकर्ता तय करता है, तो साफ़ तौर पर canonical_id सेट करने का सुझाव दिया जाता है. उदाहरण के लिए, get_default_canonical_id

पैरामीटर

पैरामीटर ब्यौरा
url string; या string में बदलाव करने की सुविधा हो; ज़रूरी है
एक ही फ़ाइल का रेफ़रंस देने वाले डुप्लीकेट यूआरएल की सूची.
output स्ट्रिंग; या लेबल; या पाथ; डिफ़ॉल्ट रूप से ''
होता है रिपॉज़िटरी डायरेक्ट्री के हिसाब से, आउटपुट फ़ाइल का पाथ.
sha256 string; डिफ़ॉल्ट वैल्यू ''
है. डाउनलोड की गई फ़ाइल का हैश SHA-256 होना चाहिए. यह डाउनलोड की गई फ़ाइल के SHA-256 हैश से मेल खाना चाहिए. रिमोट फ़ाइलों में बदलाव हो सकता है. इसलिए, SHA-256 को हटा देना सुरक्षा के लिहाज़ से जोखिम भरा हो सकता है. इस फ़ील्ड को छोड़ने से आपका बिल्ड नॉन-हर्मेटिक हो जाएगा. डेवलपमेंट को आसान बनाने के लिए, इसे सेट करना ज़रूरी नहीं है. हालांकि, इसे शिपिंग से पहले सेट करना चाहिए. अगर हैश दिया गया है, तो पहले रिपॉज़िटरी कैश में उस हैश वाली फ़ाइल की जांच की जाएगी. अगर फ़ाइल कैश में नहीं मिली, तो ही उसे डाउनलोड करने की कोशिश की जाएगी. डाउनलोड होने के बाद, फ़ाइल को कैश मेमोरी में जोड़ दिया जाएगा.
executable bool; डिफ़ॉल्ट रूप से False
होता है बनाई गई फ़ाइल पर, 'चलाया जा सकता है' फ़्लैग सेट करें. यह डिफ़ॉल्ट रूप से गलत होता है.
allow_fail bool; डिफ़ॉल्ट तौर पर False
पर सेट होता है अगर यह सेट है, तो डाउनलोड न हो पाने की गड़बड़ी दिखाने के बजाय, रिटर्न वैल्यू में गड़बड़ी की जानकारी दें.
canonical_id स्ट्रिंग; डिफ़ॉल्ट रूप से ''
होता है अगर यह सेट है, तो कैश मेमोरी में हिट होने की संख्या को उन मामलों तक सीमित करें जहां फ़ाइल को कैश मेमोरी में उसी कैननिकल आईडी के साथ जोड़ा गया था. डिफ़ॉल्ट रूप से, कैश मेमोरी में डेटा सेव करने के लिए चेकसम (sha256 या integrity) का इस्तेमाल किया जाता है.
auth dict; डिफ़ॉल्ट तौर पर {}
होता है यह एक वैकल्पिक डायक्शनरी है, जिसमें कुछ यूआरएल की पुष्टि करने से जुड़ी जानकारी होती है.
headers dict; डिफ़ॉल्ट तौर पर {}
होता है सभी यूआरएल के लिए एचटीटीपी हेडर की जानकारी देने वाला वैकल्पिक डायक्शनरी.
integrity स्ट्रिंग; डिफ़ॉल्ट रूप से ''
होता है सब-सोर्स इंटिग्रिटी फ़ॉर्मैट में, डाउनलोड की गई फ़ाइल का अनुमानित चेकसम. यह डाउनलोड की गई फ़ाइल के चेकसम से मेल खाना चाहिए. चेकसम को हटाना सुरक्षा के लिहाज़ से जोखिम भरा है, क्योंकि रिमोट फ़ाइलों में बदलाव हो सकता है. इस फ़ील्ड को हटाने पर, आपका बिल्ड पूरी तरह से सुरक्षित नहीं रहेगा. डेवलपमेंट को आसान बनाना ज़रूरी नहीं है. हालांकि, इसे शिपिंग से पहले सेट किया जाना चाहिए. अगर यह दिया जाता है, तो सबसे पहले दिए गए चेकसम वाली फ़ाइल के लिए रिपॉज़िटरी कैश मेमोरी की जांच की जाएगी. कैश मेमोरी में फ़ाइल न मिलने पर ही डाउनलोड की कोशिश की जाएगी. डाउनलोड हो जाने के बाद, फ़ाइल को कैश मेमोरी में जोड़ दिया जाएगा.
block bool; डिफ़ॉल्ट रूप से True पर सेट है
अगर 'गलत' पर सेट किया जाता है, तो कॉल तुरंत वापस आ जाता है. साथ ही, सामान्य रिटर्न वैल्यू के बजाय, यह सिर्फ़ एक तरीके, weather() वाला टोकन दिखाता है. यह डाउनलोड पूरा होने तक ब्लॉक होता है और सामान्य रिटर्न वैल्यू दिखाता है या हमेशा की तरह थ्रो करता है.

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

यह फ़ंक्शन, दिए गए यूआरएल की फ़ाइल को आउटपुट पाथ में डाउनलोड करता है, उसे निकालता है, और success वाला स्ट्रक्चर दिखाता है. यह एक फ़्लैग होता है, जो true होता है, अगर डाउनलोड पूरा हो जाता है. अगर डाउनलोड पूरा हो जाता है, तो sha256 और integrity फ़ील्ड के साथ फ़ाइल का हैश दिखाया जाता है. जब sha256 या integrity को उपयोगकर्ता तय करता है, तो साफ़ तौर पर canonical_id सेट करने का सुझाव दिया जाता है. उदाहरण के लिए, get_default_canonical_id

पैरामीटर

पैरामीटर ब्यौरा
url स्ट्रिंग या स्ट्रिंग की Iterable वैल्यू; ज़रूरी है
एक ही फ़ाइल का रेफ़रंस देने वाले मिरर यूआरएल की सूची.
output स्ट्रिंग; या लेबल; या पाथ; डिफ़ॉल्ट रूप से ''
रिपॉज़िटरी डायरेक्ट्री के हिसाब से, उस डायरेक्ट्री का पाथ जहां संग्रह को अनपैक किया जाएगा.
sha256 string; डिफ़ॉल्ट वैल्यू ''
है. डाउनलोड की गई फ़ाइल का हैश SHA-256 होना चाहिए. यह डाउनलोड की गई फ़ाइल के SHA-256 हैश से मेल खाना चाहिए. SHA-256 को हटाना सुरक्षा के लिहाज़ से जोखिम भरा है, क्योंकि रिमोट फ़ाइलों में बदलाव हो सकता है. इस फ़ील्ड को हटाने पर, आपका बिल्ड पूरी तरह से सुरक्षित नहीं रहेगा. डेवलपमेंट को आसान बनाने के लिए, इसे सेट करना ज़रूरी नहीं है. हालांकि, इसे शिपिंग से पहले सेट करना चाहिए. अगर हैश दिया गया है, तो पहले रिपॉज़िटरी कैश में उस हैश वाली फ़ाइल की जांच की जाएगी. अगर फ़ाइल कैश में नहीं मिली, तो ही उसे डाउनलोड करने की कोशिश की जाएगी. डाउनलोड हो जाने के बाद, फ़ाइल को कैश मेमोरी में जोड़ दिया जाएगा.
type string; डिफ़ॉल्ट तौर पर ''
डाउनलोड की गई फ़ाइल का संग्रह टाइप होता है. डिफ़ॉल्ट रूप से, संग्रह का टाइप, यूआरएल के फ़ाइल एक्सटेंशन से तय होता है. अगर फ़ाइल का कोई एक्सटेंशन नहीं है, तो यहां "zip", "jar", "war", "aar", "nupkg", "tar", "tar.gz", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".tbz", ".ar" या ".deb" में से कोई एक एक्सटेंशन डालें.
strip_prefix string; डिफ़ॉल्ट तौर पर ''
होता है निकाली गई फ़ाइलों से हटाने के लिए डायरेक्ट्री प्रीफ़िक्स. कई संग्रहों में एक टॉप-लेवल डायरेक्ट्री होती है, जिसमें संग्रह की सभी फ़ाइलें होती हैं. build_file में इस प्रीफ़िक्स को बार-बार बताने के बजाय, इस फ़ील्ड का इस्तेमाल करके, उसे निकाली गई फ़ाइलों से हटाया जा सकता है.

साथ काम करने के लिए, इस पैरामीटर का इस्तेमाल अब काम नहीं करने वाले नाम stripPrefix के तहत भी किया जा सकता है.

allow_fail bool; False डिफ़ॉल्ट तौर पर सेट है
अगर यह नीति सेट की जाती है, तो डाउनलोड न हो पाने वाले डाउनलोड के लिए गड़बड़ी बढ़ाने के बजाय, रिटर्न वैल्यू में गड़बड़ी दिखाएं.
canonical_id स्ट्रिंग; डिफ़ॉल्ट रूप से ''
होता है अगर यह सेट है, तो कैश मेमोरी में हिट होने की संख्या को उन मामलों तक सीमित करें जहां फ़ाइल को कैश मेमोरी में उसी कैननिकल आईडी के साथ जोड़ा गया था. डिफ़ॉल्ट रूप से, कैश मेमोरी में डेटा सेव करने के लिए चेकसम का इस्तेमाल किया जाता है" (sha256 या integrity).
auth dict; डिफ़ॉल्ट तौर पर {}
होता है यह एक वैकल्पिक डायक्शनरी है, जिसमें कुछ यूआरएल की पुष्टि करने से जुड़ी जानकारी होती है.
headers dict; {} डिफ़ॉल्ट है
सभी यूआरएल के लिए एचटीटीपी हेडर तय करने वाला एक वैकल्पिक लिखवाने की सुविधा.
integrity स्ट्रिंग; डिफ़ॉल्ट रूप से ''
होता है सब-सोर्स इंटिग्रिटी फ़ॉर्मैट में, डाउनलोड की गई फ़ाइल का अनुमानित चेकसम. यह डाउनलोड की गई फ़ाइल के चेकसम से मेल खाना चाहिए. चेकसम को हटाना सुरक्षा के लिहाज़ से जोखिम भरा है, क्योंकि रिमोट फ़ाइलों में बदलाव हो सकता है. इस फ़ील्ड को छोड़ने से आपका बिल्ड नॉन-हर्मेटिक हो जाएगा. डेवलपमेंट को आसान बनाना ज़रूरी नहीं है. हालांकि, इसे शिपिंग से पहले सेट किया जाना चाहिए. अगर चेकसम दिया गया है, तो रिपॉज़िटरी के कैश मेमोरी में, दिए गए चेकसम वाली फ़ाइल की जांच की जाएगी. अगर कैश मेमोरी में फ़ाइल नहीं मिली, तो ही उसे डाउनलोड करने की कोशिश की जाएगी. डाउनलोड होने के बाद, फ़ाइल को कैश मेमोरी में जोड़ दिया जाएगा.
rename_files dict; डिफ़ॉल्ट रूप से {}
होता है यह एक वैकल्पिक डायक्शनरी है, जिसमें एक्सट्रैक्ट करने के दौरान फ़ाइलों के नाम बदलने के बारे में बताया गया है. किसी कीवर्ड से पूरी तरह मेल खाने वाले नाम वाली संग्रहित एंट्री का नाम, डायरेक्ट्री के प्रीफ़िक्स में बदलाव करने से पहले, वैल्यू पर बदल दिया जाएगा. इसका इस्तेमाल उन संग्रहों को निकालने के लिए किया जा सकता है जिनमें यूनिकोड फ़ाइल नाम नहीं हैं या जिनमें ऐसी फ़ाइलें हैं जो केस-इनसेंसिटिव फ़ाइल सिस्टम पर एक ही पाथ में निकाली जाएंगी.

execute

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

आर्ग्युमेंट की सूची में दिए गए कमांड को लागू करता है. कमांड को लागू करने में timeout सेकंड लग सकते हैं. डिफ़ॉल्ट रूप से, यह समय 600 सेकंड होता है. यह तरीका, exec_result स्ट्रक्चर दिखाता है, जिसमें निर्देश का आउटपुट होता है. environment मैप का इस्तेमाल, कुछ एनवायरमेंट वैरिएबल को बदलने के लिए किया जा सकता है, ताकि प्रोसेस को पास किया जा सके.

पैरामीटर

पैरामीटर ब्यौरा
arguments sequence; ज़रूरी है
आर्ग्युमेंट की सूची, पहला एलिमेंट, प्रोग्राम को चलाने का पाथ होना चाहिए.
timeout int; डिफ़ॉल्ट तौर पर 600
निर्देश की ज़्यादा से ज़्यादा अवधि सेकंड में होती है (डिफ़ॉल्ट अवधि 600 सेकंड होती है).
environment dict; डिफ़ॉल्ट {}
है प्रोसेस में पास करने के लिए, कुछ एनवायरमेंट वैरिएबल को सेट करने के लिए मजबूर करें. एनवायरमेंट वैरिएबल को हटाने के लिए, वैल्यू None हो सकती है.
quiet bool; डिफ़ॉल्ट True है
अगर stdout और stderr को टर्मिनल पर प्रिंट किया जाना चाहिए.
working_directory string; डिफ़ॉल्ट तौर पर ""
होता है निर्देशों को लागू करने के लिए काम करने वाली डायरेक्ट्री. यह रिपॉज़िटरी रूट के हिसाब से या एब्सोलूट हो सकता है. यह डिफ़ॉल्ट रूप से, डेटा स्टोर करने की जगह का रूट होता है.

extension_metadata

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

एक ऐसा ऑब्जेक्ट बनाता है जिसे मॉड्यूल एक्सटेंशन के लागू करने वाले फ़ंक्शन से लौटाया जा सकता है. इससे, Bazel को एक्सटेंशन से जनरेट की गई रिपॉज़िटरी का मेटाडेटा मिलता है.

पैरामीटर

पैरामीटर ब्यौरा
root_module_direct_deps स्ट्रिंग या स्ट्रिंग या None का क्रम; डिफ़ॉल्ट None है
उन रिपॉज़िटरी के नाम जिन्हें एक्सटेंशन, रूट मॉड्यूल की डायरेक्ट डिपेंडेंसी मानता है. अगर रूट मॉड्यूल, अतिरिक्त रिपॉज़िटरी इंपोर्ट करता है या use_repo के ज़रिए इन सभी रिपॉज़िटरी को इंपोर्ट नहीं करता है, तो एक्सटेंशन का आकलन करने पर Bazel एक चेतावनी प्रिंट करेगा. साथ ही, उपयोगकर्ता को use_repo कॉल को अपने-आप ठीक करने के लिए bazel mod tidy चलाने का निर्देश देगा.

अगर root_module_direct_deps में से कोई एक है और एक्सटेंशन का आकलन होते समय, चेतावनी और ठीक करने का निर्देश प्रिंट किया जाएगा.

अगर root_module_direct_deps और root_module_direct_dev_deps में से कोई एक बताया गया है, तो दूसरा भी तय होना चाहिए. इन दोनों पैरामीटर से तय की गई सूचियां अलग-अलग होनी चाहिए.

root_module_direct_deps और root_module_direct_dev_deps में से किसी एक को खास वैल्यू "all" पर सेट किया जा सकता है. इसे वैल्यू के तौर पर, एक्सटेंशन से जनरेट किए गए सभी रिपॉज़िटरी के नामों की सूची माना जाता है.

root_module_direct_dev_deps स्ट्रिंग या स्ट्रिंग या None का क्रम; डिफ़ॉल्ट तौर पर None
उन रिपॉज़िटरी के नाम जिन्हें एक्सटेंशन, रूट मॉड्यूल की सीधे तौर पर डिवेलपर डिपेंडेंसी मानता है. अगर रूट मॉड्यूल, use_extension(..., dev_dependency = True) से बनाए गए एक्सटेंशन प्रॉक्सी पर use_repo के ज़रिए अतिरिक्त रिपॉज़िटरी इंपोर्ट करता है या इन सभी रिपॉज़िटरी को इंपोर्ट नहीं करता है, तो एक्सटेंशन का आकलन करने पर Bazel एक चेतावनी प्रिंट करेगा. साथ ही, उपयोगकर्ता को use_repo कॉल को अपने-आप ठीक करने के लिए bazel mod tidy चलाने का निर्देश देगा.

अगर root_module_direct_deps और root_module_direct_dev_deps में से किसी एक की वैल्यू दी गई है, तो दूसरे की वैल्यू भी देनी होगी. इन दो पैरामीटर के ज़रिए तय की गई सूचियां अलग-अलग होनी चाहिए.

root_module_direct_deps और root_module_direct_dev_deps में से किसी एक को खास वैल्यू "all" पर सेट किया जा सकता है. इसे वैल्यू के तौर पर, एक्सटेंशन से जनरेट किए गए सभी रिपॉज़िटरी के नामों की सूची माना जाता है.

reproducible bool; डिफ़ॉल्ट तौर पर False
होता है इससे पता चलता है कि इस मॉड्यूल एक्सटेंशन से, पूरी तरह से दोबारा बनाने की सुविधा मिलती है. इसलिए, इसे लॉकफ़ाइल में सेव नहीं किया जाना चाहिए.

एक्सट्रैक्ट

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

संग्रह को डेटा स्टोर करने की जगह की डायरेक्ट्री में निकालें.

पैरामीटर

पैरामीटर ब्यौरा
archive स्ट्रिंग; या लेबल; या पाथ; ज़रूरी है
उस संग्रह का पाथ जिसे अनपैक किया जाएगा. यह पाथ, रिपॉज़िटरी डायरेक्ट्री से जुड़ा होना चाहिए.
output स्ट्रिंग; या लेबल; या पाथ; डिफ़ॉल्ट रूप से ''
वह पाथ जहां संग्रह को अनपैक किया जाएगा. यह पाथ, रिपॉज़िटरी डायरेक्ट्री से लिया जाता है.
strip_prefix string; डिफ़ॉल्ट रूप से ''
होता है यह, निकाली गई फ़ाइलों से हटाने के लिए डायरेक्ट्री का प्रीफ़िक्स होता है. कई संग्रह में एक शीर्ष-स्तरीय निर्देशिका होती है, जिसमें संग्रह की सभी फ़ाइलें होती हैं. build_file में, इस प्रीफ़िक्स को बार-बार बताने के बजाय, इस फ़ील्ड का इस्तेमाल करके, इसे निकाली गई फ़ाइलों से हटाया जा सकता है.

साथ काम करने के लिए, इस पैरामीटर का इस्तेमाल अब काम नहीं करने वाले नाम stripPrefix के तहत भी किया जा सकता है.

rename_files dict; डिफ़ॉल्ट तौर पर {}
यह एक वैकल्पिक डिक्शनरी है, जिसमें एक्सट्रैक्ट करने के दौरान फ़ाइलों का नाम बदला जाता है. किसी कुंजी से पूरी तरह मेल खाने वाले नामों वाली संग्रह एंट्री का नाम बदलकर, वैल्यू के तौर पर सेट कर दिया जाएगा. ऐसा, डायरेक्ट्री प्रीफ़िक्स अडजस्टमेंट से पहले किया जाएगा. इसका इस्तेमाल उन संग्रहों को निकालने के लिए किया जा सकता है जिनमें यूनिकोड फ़ाइल नाम नहीं हैं या जिनमें ऐसी फ़ाइलें हैं जो केस-इनसेंसिटिव फ़ाइल सिस्टम पर एक ही पाथ में निकाली जाएंगी.
watch_archive string; डिफ़ॉल्ट तौर पर यह 'auto'
सेट होता है कि संग्रहित फ़ाइल को देखना है या नहीं. यह 'yes', 'no' या 'auto' स्ट्रिंग हो सकती है. 'yes' का इस्तेमाल करने का मतलब है कि watch() का तरीका तुरंत लागू हो जाएगा. 'no' का इस्तेमाल करने पर, फ़ाइल को देखने की कोशिश नहीं की जाएगी. 'auto' का इस्तेमाल करने पर, फ़ाइल को सिर्फ़ तब देखा जाएगा, जब ऐसा करना कानूनी हो. ज़्यादा जानकारी के लिए, watch() दस्तावेज़ देखें.

फ़ाइल

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

दिए गए कॉन्टेंट के साथ, रिपॉज़िटरी डायरेक्ट्री में फ़ाइल जनरेट करता है.

पैरामीटर

पैरामीटर ब्यौरा
path string; या Label; या path; ज़रूरी
रिपॉज़िटरी डायरेक्ट्री के मुताबिक बनाई जाने वाली फ़ाइल का पाथ.
content स्ट्रिंग; डिफ़ॉल्ट तौर पर ''
होता है यह उस फ़ाइल का कॉन्टेंट होता है जिसे बनाना है. यह डिफ़ॉल्ट रूप से खाली होता है.
executable bool; डिफ़ॉल्ट रूप से True
पर सेट होता है बनाई गई फ़ाइल पर, 'एक्सीक्यूटेबल' फ़्लैग सेट करें. यह डिफ़ॉल्ट रूप से 'सही' पर सेट होता है.
legacy_utf8 bool; डिफ़ॉल्ट True
है. फ़ाइल के कॉन्टेंट को UTF-8 में एन्कोड करें. यह डिफ़ॉल्ट रूप से 'सही' होता है. आने वाले वर्शन में, डिफ़ॉल्ट पैरामीटर बदल जाएगा और यह पैरामीटर हट जाएगा.

getenv

string module_ctx.getenv(name, default=None)

अगर एनवायरमेंट वैरिएबल name मौजूद है, तो उसकी वैल्यू को स्ट्रिंग के तौर पर दिखाता है. अगर वैरिएबल मौजूद नहीं है, तो default दिखाता है.

धीरे-धीरे डेटा इकट्ठा करते समय, name नाम वाले वैरिएबल की वैल्यू में कोई बदलाव करने पर, इस रिपॉज़िटरी को फिर से फ़ेच किया जाएगा.

पैरामीटर

पैरामीटर ब्यौरा
name string; ज़रूरी है
ज़रूरी एनवायरमेंट वैरिएबल का नाम.
default string; या None; None
name न मिलने पर, यह डिफ़ॉल्ट वैल्यू दिखती है.
None को वापस किया जा सकता है.

is_dev_dependency

bool module_ctx.is_dev_dependency(tag)

यह बताता है कि devDependency = True के साथ use_extension कॉल के नतीजे में, दिया गया टैग तय किया गया था या नहीं.

पैरामीटर

पैरामीटर ब्यौरा
tag basel_module_tag; ज़रूरी
bazel_module.tags से मिला टैग.

मॉड्यूल

list module_ctx.modules

एक्सटर्नल डिपेंडेंसी ग्राफ़ में मौजूद उन सभी Bazel मॉड्यूल की सूची जो इस मॉड्यूल एक्सटेंशन का इस्तेमाल करते हैं. इनमें से हर मॉड्यूल एक bazel_module ऑब्जेक्ट होता है, जो इस एक्सटेंशन के लिए तय किए गए सभी टैग को दिखाता है. इस शब्दकोश के दोहराने का क्रम, रूट मॉड्यूल से शुरू होने वाले वाइड-फ़र्स्ट सर्च के समान होने की गारंटी है.

os

repository_os module_ctx.os

सिस्टम से जानकारी ऐक्सेस करने का निर्देश.

पाथ

path module_ctx.path(path)

किसी स्ट्रिंग, लेबल या पाथ से पाथ दिखाता है. अगर पाथ रिलेटिव है, तो इसे रिपॉज़िटरी डायरेक्ट्री के हिसाब से हल किया जाएगा. अगर पाथ कोई लेबल है, तो वह उससे जुड़ी फ़ाइल के पाथ पर रीडायरेक्ट करेगा. ध्यान दें कि रिमोट रिपॉज़िटरी, विश्लेषण के दौरान लागू किए जाते हैं. इसलिए, ये किसी टारगेट नतीजे पर निर्भर नहीं हो सकते. लेबल, जनरेट नहीं की गई फ़ाइल पर ले जाना चाहिए. अगर पाथ कोई पाथ है, तो वह उस पाथ को वैसा ही दिखाएगा.

पैरामीटर

पैरामीटर ब्यौरा
path string; या Label; या path; ज़रूरी है
string, Label या path जिससे पाथ बनाना है.

पढ़ा गया

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

फ़ाइल सिस्टम में मौजूद किसी फ़ाइल का कॉन्टेंट पढ़ता है.

पैरामीटर

पैरामीटर ब्यौरा
path स्ट्रिंग; या लेबल; या पाथ; ज़रूरी है
रीड करने के लिए फ़ाइल का पाथ.
watch स्ट्रिंग; डिफ़ॉल्ट तौर पर 'auto'
होता है फ़ाइल को देखना है या नहीं. यह स्ट्रिंग 'हां', 'नहीं' या 'ऑटो' स्ट्रिंग हो सकती है. 'हां' पास करना watch() विधि को तुरंत शुरू करने के समान है; 'नहीं' में पास करना फ़ाइल को देखने का प्रयास नहीं करता; 'ऑटो' पास करना फ़ाइल को देखने का केवल तभी प्रयास करेगा, जब ऐसा करना कानूनी हो (ज़्यादा जानकारी के लिए watch() दस्तावेज़ देखें.

report_progress

None module_ctx.report_progress(status='')

इस रिपॉज़िटरी या मॉड्यूल एक्सटेंशन को फ़ेच करने की प्रोग्रेस स्टेटस को अपडेट करता है.

पैरामीटर

पैरामीटर ब्यौरा
status स्ट्रिंग; डिफ़ॉल्ट रूप से ''
string, फ़ेच की प्रोग्रेस की मौजूदा स्थिति के बारे में बताता है.

root_module_has_non_dev_dependency

bool module_ctx.root_module_has_non_dev_dependency

क्या रूट मॉड्यूल, इस एक्सटेंशन का इस्तेमाल नॉन-डेवलपर डिपेंडेंसी के तौर पर करता है.

देखें

None module_ctx.watch(path)

Bazel को दिए गए पाथ में हुए बदलावों को देखने के लिए कहता है. भले ही, वह पाथ मौजूद हो या नहीं या वह फ़ाइल हो या डायरेक्ट्री. फ़ाइल या डायरेक्ट्री में कोई भी बदलाव करने पर, इस रिपॉज़िटरी या मॉड्यूल एक्सटेंशन को अमान्य कर दिया जाएगा. साथ ही, अगली बार इसे फिर से फ़ेच किया जाएगा या इसका फिर से आकलन किया जाएगा.

"बदलाव" में, फ़ाइल के कॉन्टेंट में किए गए बदलाव शामिल होते हैं (अगर पाथ एक फ़ाइल है); अगर पाथ एक फ़ाइल था, लेकिन अब वह डायरेक्ट्री है या अब पाथ है, लेकिन मौजूदा पाथ शुरू या बंद होता है. ध्यान दें कि अगर पाथ कोई डायरेक्ट्री है, तो इसमें डायरेक्ट्री में मौजूद किसी भी फ़ाइल में किए गए बदलाव शामिल नहीं होते. इसके लिए, path.readdir() का इस्तेमाल करें.

ध्यान दें कि फ़ेच किए जा रहे मौजूदा रिपॉज़िटरी या मौजूदा मॉड्यूल एक्सटेंशन की वर्किंग डायरेक्ट्री में मौजूद पाथ देखने की कोशिश करने पर, गड़बड़ी का मैसेज दिखेगा. अगर कोई मॉड्यूल एक्सटेंशन, मौजूदा Bazel फ़ाइल फ़ोल्डर के बाहर का कोई पाथ देखने की कोशिश करता है, तो भी गड़बड़ी का मैसेज दिखेगा.

पैरामीटर

पैरामीटर ब्यौरा
path स्ट्रिंग; या लेबल; या पाथ; ज़रूरी है
वीडियो देखने के लिए, फ़ाइल का पाथ.

कौनसा

path module_ctx.which(program)

यह उस प्रोग्राम का path दिखाता है. अगर पाथ में ऐसा कोई प्रोग्राम नहीं है, तो यह None दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
program स्ट्रिंग; ज़रूरी है
पाथ में ढूंढने के लिए प्रोग्राम.
None को वापस किया जा सकता है.