MODULE.bazel फ़ाइलों में उपलब्ध तरीके.
सदस्य
- archive_override
- bazel_dep
- git_override
- शामिल करें
- local_path_override
- मॉड्यूल
- multiple_version_override
- register_execution_platforms
- register_toolchains
- single_version_override
- use_extension
- use_repo
- use_repo_rule
archive_override
None
archive_override(module_name, urls, integrity='', strip_prefix='', patches=[], patch_cmds=[], patch_strip=0)
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
module_name
|
ज़रूरी है इस बदलाव को लागू करने के लिए, Bazel मॉड्यूल की डिपेंडेंसी का नाम. |
urls
|
string; या string में बदलाव करने की सुविधा हो;
ज़रूरी है संग्रह के यूआरएल; http(s):// या file:// से जुड़े यूआरएल हो सकते हैं. |
integrity
|
डिफ़ॉल्ट रूप से '' सब-सोर्स इंटिग्रिटी फ़ॉर्मैट में, संग्रह फ़ाइल का अनुमानित चेकसम. |
strip_prefix
|
डिफ़ॉल्ट तौर पर '' होता है निकाली गई फ़ाइलों से हटाने के लिए डायरेक्ट्री प्रीफ़िक्स. |
patches
|
स्ट्रिंग का Iterable;
डिफ़ॉल्ट [] है इस मॉड्यूल के लिए लागू करने के लिए, पैच फ़ाइलों पर लेबल की सूची. पैच फ़ाइलें टॉप लेवल प्रोजेक्ट के सोर्स ट्री में मौजूद होनी चाहिए. ये सूची के क्रम में लागू होते हैं. |
patch_cmds
|
स्ट्रिंग का Iterable;
डिफ़ॉल्ट तौर पर [] होता है पैच लागू होने के बाद, Linux/Macos पर लागू किए जाने वाले Bash कमांड का क्रम. |
patch_strip
|
डिफ़ॉल्ट 0 है यह Unix पैच के --strip आर्ग्युमेंट जैसा ही है. |
bazel_dep
None
bazel_dep(name, version='', max_compatibility_level=-1, repo_name='', dev_dependency=False)
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
name
|
ज़रूरी है डायरेक्ट डिपेंडेंसी के तौर पर जोड़े जाने वाले मॉड्यूल का नाम. |
version
|
डिफ़ॉल्ट तौर पर '' होता है मॉड्यूल का वह वर्शन जो सीधे डिपेंडेंसी के तौर पर जोड़ा जाना है. |
max_compatibility_level
|
डिफ़ॉल्ट तौर पर -1 होता है डायरेक्ट डिपेंडेंसी के तौर पर जोड़े जाने वाले मॉड्यूल के लिए, ज़्यादा से ज़्यादा compatibility_level इस्तेमाल किया जा सकता है. मॉड्यूल के वर्शन से पता चलता है कि कम से कम compatibility_level क्या है. साथ ही, अगर इस एट्रिब्यूट की वैल्यू नहीं दी गई है, तो ज़्यादा से ज़्यादा compatibility_level क्या है.
|
repo_name
|
डिफ़ॉल्ट तौर पर, यह '' होता है इस डिपेंडेंसी को दिखाने वाले बाहरी रिपॉज़िटरी का नाम. यह डिफ़ॉल्ट रूप से मॉड्यूल का नाम होता है. |
dev_dependency
|
डिफ़ॉल्ट तौर पर, इसकी वैल्यू False होती है अगर इसकी वैल्यू 'सही' है, तो मौजूदा मॉड्यूल रूट मॉड्यूल न होने या `--ignore_dev_dependency` चालू होने पर, इस डिपेंडेंसी को अनदेखा कर दिया जाएगा. |
git_override
None
git_override(module_name, remote, commit='', patches=[], patch_cmds=[], patch_strip=0, init_submodules=False, strip_prefix='')
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
module_name
|
ज़रूरी है इस बदलाव को लागू करने के लिए, Bazel मॉड्यूल की डिपेंडेंसी का नाम. |
remote
|
ज़रूरी है रिमोट Git रिपॉज़िटरी का यूआरएल. |
commit
|
डिफ़ॉल्ट रूप से, '' होता है वह कमिट जिसे चेक आउट करना है. |
patches
|
स्ट्रिंग का Iterable;
डिफ़ॉल्ट [] है इस मॉड्यूल के लिए लागू करने के लिए, पैच फ़ाइलों पर लेबल की सूची. पैच फ़ाइलें, टॉप लेवल प्रोजेक्ट के सोर्स ट्री में मौजूद होनी चाहिए. ये सूची के क्रम में लागू होते हैं. |
patch_cmds
|
string में बदलाव किया जा सकता है; डिफ़ॉल्ट रूप से [] है. पैच लागू होने के बाद, Linux/Macos पर बैश कमांड का क्रम लागू किया जाता है. |
patch_strip
|
डिफ़ॉल्ट है 0 यह यूनिक्स पैच के --स्ट्रिप आर्ग्युमेंट की तरह है. |
init_submodules
|
डिफ़ॉल्ट तौर पर, यह False होता है इससे यह तय होता है कि फ़ेच किए गए रिपॉज़िटरी में मौजूद git सब-मोड्यूल को बार-बार शुरू किया जाना चाहिए या नहीं. |
strip_prefix
|
डिफ़ॉल्ट तौर पर '' होता है निकाली गई फ़ाइलों से हटाने के लिए डायरेक्ट्री प्रीफ़िक्स. इसका इस्तेमाल, git repo की सबडायरेक्ट्री को टारगेट करने के लिए किया जा सकता है. ध्यान दें कि सबडायरेक्ट्री में अपनी `MODULE.bazel` फ़ाइल होनी चाहिए. साथ ही, मॉड्यूल का नाम भी वही होना चाहिए जो इस `git_override` फ़ंक्शन में पास किए गए `module_name` आर्ग्युमेंट से मेल खाता हो. |
शामिल होते हैं
None
include(label)
include()
इस तरह से काम करता है, जैसे कि शामिल की गई फ़ाइल को include()
कॉल की जगह पर टेक्स्ट के तौर पर रखा गया हो. हालांकि, वैरिएबल बाइंडिंग (जैसे कि use_extension
के लिए इस्तेमाल की जाने वाली) सिर्फ़ उस फ़ाइल में दिखती हैं जिसमें वे मौजूद होती हैं, किसी भी फ़ाइल में शामिल नहीं होती या किसी फ़ाइल में नहीं होती.सिर्फ़ रूट मॉड्यूल में include()
का इस्तेमाल किया जा सकता है. अगर bazel_dep
की MODULE फ़ाइल में include()
का इस्तेमाल किया जाता है, तो यह गड़बड़ी है.
सिर्फ़ मुख्य डेटा संग्रह स्थान में मौजूद फ़ाइलें शामिल की जा सकती हैं.
include()
की मदद से, रूट मॉड्यूल फ़ाइल को कई हिस्सों में बांटा जा सकता है. इससे, बड़ी MODULE.bazel फ़ाइल से बचा जा सकता है या अलग-अलग सेमेंट के लिए ऐक्सेस कंट्रोल को बेहतर तरीके से मैनेज किया जा सकता है.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
label
|
ज़रूरी है शामिल की जाने वाली फ़ाइल का लेबल. लेबल, मुख्य रिपॉज़िटरी में मौजूद किसी फ़ाइल पर ले जाना चाहिए. दूसरे शब्दों में, यह डबल स्लैश ( // ) से शुरू होना चाहिए.
|
local_path_override
None
local_path_override(module_name, path)
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
module_name
|
ज़रूरी है इस बदलाव को लागू करने के लिए, Bazel मॉड्यूल की डिपेंडेंसी का नाम. |
path
|
ज़रूरी है उस डायरेक्ट्री का पाथ जहां यह मॉड्यूल मौजूद है. |
मॉड्यूल
None
module(name='', version='', compatibility_level=0, repo_name='', bazel_compatibility=[])
इसे ज़्यादा से ज़्यादा एक बार ही बुलाया जाना चाहिए. अगर इसे बुलाया जाता है, तो यह MODULE.bazel फ़ाइल में सबसे पहला डायरेक्टिव होना चाहिए. इसे सिर्फ़ तब छोड़ा जा सकता है, जब यह मॉड्यूल रूट मॉड्यूल हो. जैसे, अगर यह किसी दूसरे मॉड्यूल पर निर्भर नहीं है.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
name
|
डिफ़ॉल्ट रूप से, यह '' होता है मॉड्यूल का नाम. इसे सिर्फ़ तब छोड़ा जा सकता है, जब यह मॉड्यूल रूट मॉड्यूल हो. जैसे, अगर यह किसी दूसरे मॉड्यूल पर निर्भर नहीं है. मॉड्यूल के मान्य नाम में: 1) सिर्फ़ अंग्रेज़ी के छोटे अक्षर (a-z), अंक (0-9), बिंदु (.), हाइफ़न (-), और अंडरस्कोर (_) होने चाहिए; 2) नाम की शुरुआत अंग्रेज़ी के छोटे अक्षर से होनी चाहिए; 3) नाम के आखिर में अंग्रेज़ी का छोटा अक्षर या अंक होना चाहिए. |
version
|
डिफ़ॉल्ट रूप से '' होता है मॉड्यूल का वर्शन. इसे सिर्फ़ तब छोड़ा जा सकता है, जब यह मॉड्यूल रूट मॉड्यूल हो. जैसे, अगर यह किसी दूसरे मॉड्यूल पर निर्भर नहीं है. वर्शन, SemVer फ़ॉर्मैट में होना चाहिए. ज़्यादा जानकारी के लिए, दस्तावेज़ देखें. |
compatibility_level
|
डिफ़ॉल्ट तौर पर 0 मॉड्यूल के काम करने के लेवल की जानकारी. जब भी काम करने के तरीके में कोई बड़ा बदलाव किया जाता है, तो इसे बदल दिया जाना चाहिए. SemVer के हिसाब से यह मॉड्यूल का "मुख्य वर्शन" है. हालांकि, इसे वर्शन स्ट्रिंग में एम्बेड नहीं किया गया है, लेकिन यह एक अलग फ़ील्ड के तौर पर मौजूद है. साथ काम करने के अलग-अलग लेवल वाले मॉड्यूल, वर्शन रिज़ॉल्यूशन में इस तरह से काम करते हैं जैसे कि वे अलग-अलग नामों वाले मॉड्यूल हों. हालांकि, आखिरी डिपेंडेंसी ग्राफ़ में एक ही नाम वाले कई मॉड्यूल नहीं हो सकते. हालांकि, इनके साथ काम करने के अलग-अलग लेवल नहीं हो सकते. ऐसा तब तक होता है, जब तक multiple_version_override लागू न हो. ज़्यादा जानकारी के लिए, दस्तावेज़ देखें.
|
repo_name
|
डिफ़ॉल्ट रूप से '' होता है इस मॉड्यूल को दिखाने वाले रिपॉज़िटरी का नाम, जैसा कि मॉड्यूल में दिखता है. डिफ़ॉल्ट रूप से, मॉड्यूल का नाम ही रिपॉज़िटरी का नाम होता है. यह जानकारी उन प्रोजेक्ट के लिए दी जा सकती है जो अपने लिए किसी ऐसे रिपॉज़िटरी का इस्तेमाल कर रहे हैं जो उनके मॉड्यूल के नाम से अलग है. इससे, प्रोजेक्ट को आसानी से माइग्रेट किया जा सकता है. |
bazel_compatibility
|
स्ट्रिंग की सूची, जो दोहराई जा सकती है;
डिफ़ॉल्ट तौर पर [] होता है Bazel के उन वर्शन की सूची जिनसे उपयोगकर्ता यह तय कर सकते हैं कि इस मॉड्यूल के साथ कौनसे Bazel वर्शन काम करते हैं. इससे डिपेंडेंसी रिज़ॉल्यूशन पर कोई असर नहीं पड़ता. हालांकि, bzlmod इस जानकारी का इस्तेमाल करके यह जांच करेगा कि आपका मौजूदा Bazel वर्शन काम करता है या नहीं. इस वैल्यू का फ़ॉर्मैट, कुछ कंस्ट्रेंट वैल्यू की एक स्ट्रिंग है, जिन्हें कॉमा लगाकर अलग किया गया है. तीन तरह की पाबंदियां इस्तेमाल की जा सकती हैं: <=X.X.X: Bazel का वर्शन X.X.X के बराबर या उससे पुराना होना चाहिए. इसका इस्तेमाल तब किया जाता है, जब नए वर्शन में कोई ऐसा बदलाव हो जो काम न करता हो. >=X.X.X: Bazel का वर्शन X.X.X या उसके बाद का होना चाहिए.इसका इस्तेमाल तब किया जाता है, जब आपको कुछ ऐसी सुविधाओं का इस्तेमाल करना हो जो सिर्फ़ X.X.X के बाद से उपलब्ध हैं. -X.X.X: Bazel का वर्शन X.X.X काम नहीं करता. इसका इस्तेमाल तब किया जाता है, जब X.X.X वर्शन में कोई ऐसी गड़बड़ी होती है जिसकी वजह से आपका ऐप्लिकेशन काम नहीं करता. हालांकि, बाद के वर्शन में इस गड़बड़ी को ठीक कर दिया जाता है. |
multiple_version_override
None
multiple_version_override(module_name, versions, registry='')
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
module_name
|
ज़रूरी है इस बदलाव को लागू करने के लिए, Bazel मॉड्यूल की डिपेंडेंसी का नाम. |
versions
|
स्ट्रिंग का Iterable;
ज़रूरी है साफ़ तौर पर उन वर्शन के बारे में बताता है जो एक साथ काम कर सकते हैं. ये वर्शन, डिपेंडेंसी ग्राफ़ के प्री-सिलेक्शन में पहले से मौजूद होने चाहिए. इस मॉड्यूल पर डिपेंडेंसी को काम करने के उसी लेवल पर "अपग्रेड" कर दिया जाएगा जो सबसे नए वर्शन पर काम करता है. वहीं, एक ही लेवल पर स्वीकार किए गए वर्शन से नए वर्शन वाली डिपेंडेंसी की वजह से गड़बड़ी हो सकती है. |
registry
|
डिफ़ॉल्ट तौर पर '' है यह इस मॉड्यूल के लिए रजिस्ट्री को बदल देता है. रजिस्ट्री की डिफ़ॉल्ट सूची से इस मॉड्यूल को ढूंढने के बजाय, दी गई रजिस्ट्री का इस्तेमाल किया जाना चाहिए. |
register_execution_platforms
None
register_execution_platforms(dev_dependency=False, *platform_labels)
@
या //
से शुरू होने वाले पैटर्न. ज़्यादा जानकारी के लिए, टूलचेन रिज़ॉल्यूशन देखें.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
dev_dependency
|
डिफ़ॉल्ट तौर पर, इसकी वैल्यू False होती है अगर इसकी वैल्यू 'सही' है, तो मौजूदा मॉड्यूल रूट मॉड्यूल न होने या `--ignore_dev_dependency` चालू होने पर, प्रोग्राम को चलाने वाले प्लैटफ़ॉर्म रजिस्टर नहीं किए जाएंगे. |
platform_labels
|
string का क्रम;
ज़रूरी है रजिस्टर किए जाने वाले प्लैटफ़ॉर्म के लेबल. |
register_toolchains
None
register_toolchains(dev_dependency=False, *toolchain_labels)
@
या //
से शुरू होना चाहिए). ज़्यादा जानकारी के लिए, टूलचेन रिज़ॉल्यूशन पर जाएं.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
dev_dependency
|
डिफ़ॉल्ट तौर पर, इसकी वैल्यू False होती है अगर इसकी वैल्यू 'सही' है, तो मौजूदा मॉड्यूल रूट मॉड्यूल न होने या `--ignore_dev_dependency` चालू होने पर, टूलचेन रजिस्टर नहीं किए जाएंगे. |
toolchain_labels
|
स्ट्रिंग का क्रम;
ज़रूरी है रजिस्टर करने के लिए टूलचेन के लेबल. लेबल में :all शामिल किया जा सकता है. ऐसे में, पैकेज में टूलचेन उपलब्ध कराने वाले सभी टारगेट, नाम के हिसाब से वर्णमाला के क्रम में रजिस्टर किए जाएंगे.
|
single_version_override
None
single_version_override(module_name, version='', registry='', patches=[], patch_cmds=[], patch_strip=0)
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
module_name
|
ज़रूरी है इस बदलाव को लागू करने के लिए, Bazel मॉड्यूल की डिपेंडेंसी का नाम. |
version
|
डिफ़ॉल्ट तौर पर '' होता है यह डिपेंडेंसी ग्राफ़ में, इस मॉड्यूल के एलान किए गए वर्शन को बदल देता है. दूसरे शब्दों में, इस मॉड्यूल को ओवरराइड किए गए वर्शन में "पिन" किया जाएगा. अगर आपको सिर्फ़ रजिस्ट्री या पैच को बदलना है, तो इस एट्रिब्यूट को छोड़ा जा सकता है. |
registry
|
डिफ़ॉल्ट तौर पर '' है यह इस मॉड्यूल के लिए रजिस्ट्री को बदल देता है. रजिस्ट्री की डिफ़ॉल्ट सूची से इस मॉड्यूल को ढूंढने के बजाय, दी गई रजिस्ट्री का इस्तेमाल किया जाना चाहिए. |
patches
|
स्ट्रिंग का Iterable;
डिफ़ॉल्ट [] है इस मॉड्यूल के लिए लागू करने के लिए, पैच फ़ाइलों पर लेबल की सूची. पैच फ़ाइलें टॉप लेवल प्रोजेक्ट के सोर्स ट्री में मौजूद होनी चाहिए. ये सूची के क्रम में लागू होते हैं. |
patch_cmds
|
string में बदलाव किया जा सकता है; डिफ़ॉल्ट रूप से [] है. पैच लागू होने के बाद, Linux/Macos पर बैश कमांड का क्रम लागू किया जाता है. |
patch_strip
|
डिफ़ॉल्ट 0 है यह Unix पैच के --strip आर्ग्युमेंट जैसा ही है. |
use_extension
module_extension_proxy use_extension(extension_bzl_file, extension_name, *, dev_dependency=False, isolate=False)
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
extension_bzl_file
|
ज़रूरी है मॉड्यूल एक्सटेंशन की जानकारी देने वाली Starlark फ़ाइल का लेबल. |
extension_name
|
ज़रूरी है इस्तेमाल किए जाने वाले मॉड्यूल एक्सटेंशन का नाम. इस नाम वाला सिंबल, Starlark फ़ाइल से एक्सपोर्ट किया जाना चाहिए. |
dev_dependency
|
डिफ़ॉल्ट तौर पर, इसकी वैल्यू False होती है अगर यह वैल्यू 'सही' पर सेट है, तो मौजूदा मॉड्यूल रूट मॉड्यूल न होने या `--ignore_dev_dependency` चालू होने पर, मॉड्यूल एक्सटेंशन के इस इस्तेमाल को अनदेखा कर दिया जाएगा. |
isolate
|
डिफ़ॉल्ट तौर पर, यह False एक्सपेरिमेंटल होता है. इस पैरामीटर को अभी आज़माया जा रहा है और इसमें किसी भी समय बदलाव किया जा सकता है. कृपया इस पर भरोसा न करें. इसे एक्सपेरिमेंट के तौर पर चालू किया जा सकता है. इसके लिए, ---experimental_isolated_extension_usages को सेट करें. अगर यह 'सही' पर सेट है, तो मॉड्यूल एक्सटेंशन के इस इस्तेमाल को इस और अन्य मॉड्यूल, दोनों में अन्य सभी इस्तेमाल से अलग कर दिया जाएगा. इस तरह के इस्तेमाल के लिए बनाए गए टैग का असर, अन्य इस्तेमाल पर नहीं पड़ता. साथ ही, इस तरह के इस्तेमाल के लिए एक्सटेंशन से जनरेट की गई रिपॉज़िटरी, एक्सटेंशन से जनरेट की गई अन्य सभी रिपॉज़िटरी से अलग होंगी. फ़िलहाल, यह पैरामीटर एक्सपेरिमेंट के तौर पर उपलब्ध है. यह सिर्फ़ फ़्लैग |
use_repo
None
use_repo(extension_proxy, *args, **kwargs)
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
extension_proxy
|
ज़रूरी हैuse_extension कॉल से लौटाया गया मॉड्यूल एक्सटेंशन प्रॉक्सी ऑब्जेक्ट.
|
args
|
ज़रूरी इंपोर्ट किए जाने वाले रिपॉज़िटरी के नाम. |
kwargs
|
ज़रूरी है मौजूदा मॉड्यूल के स्कोप में अलग-अलग नामों से इंपोर्ट करने के लिए, कुछ डेटा संग्रह स्थान तय करता है. कुंजियों में मौजूद नाम, मौजूदा दायरे में इस्तेमाल किए जाने वाले नाम होने चाहिए. वहीं, वैल्यू में मॉड्यूल एक्सटेंशन से एक्सपोर्ट किए गए ओरिजनल नाम होने चाहिए. |
use_repo_rule
repo_rule_proxy use_repo_rule(repo_rule_bzl_file, repo_rule_name)
name
एट्रिब्यूट का इस्तेमाल करके बताए गए नाम के तहत दिखते हैं. प्रॉक्सी पर, इंप्लिसिट बूलियन dev_dependency
एट्रिब्यूट का इस्तेमाल भी किया जा सकता है. इससे यह पता चलता है कि किसी खास रिपॉज़िटरी को सिर्फ़ तब बनाया जाना है, जब मौजूदा मॉड्यूल रूट मॉड्यूल हो.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
repo_rule_bzl_file
|
ज़रूरी है Starlark फ़ाइल का वह लेबल जो रेपो के नियम को बताता है. |
repo_rule_name
|
ज़रूरी है इस्तेमाल किए जाने वाले रेपो नियम का नाम. इस नाम वाला सिंबल, Starlark फ़ाइल से एक्सपोर्ट किया जाना चाहिए. |