इस पेज में, पुराने सिस्टम के साथ काम करने की सुविधा को मैनेज करने के तरीके के बारे में बताया गया है. इसमें एक रिलीज़ से दूसरी रिलीज़ में माइग्रेट करना और कम्यूनिकेट करने का तरीका शामिल है असंगत बदलाव.
Basel को बेहतर बनाया जा रहा है. एलटीएस मेजरमेंट प्रोग्राम के तहत रिलीज़ किए गए छोटे वर्शन वर्शन पूरी तरह से पुराने सिस्टम के साथ काम करता है. नए मेजर एलटीएस रिलीज़ में ऐसे बदलाव हो सकते हैं जो काम के न हों. इसलिए, इन्हें माइग्रेट करने में कुछ समय लग सकता है. Basel के रिलीज़ मॉडल के बारे में ज़्यादा जानकारी के लिए, कृपया रिलीज़ देखें मॉडल पेज.
खास जानकारी
- बदलावों को लागू करने के लिए,
--incompatible_*
फ़्लैग का इस्तेमाल करने का सुझाव दिया जाता है. - हर
--incompatible_*
फ़्लैग के लिए, GitHub की एक समस्या, के व्यवहार के बारे में बताता है और इसका मकसद माइग्रेशन रेसिपी उपलब्ध कराना है. - इस्तेमाल नहीं किए जा सकने वाले फ़्लैग को नए एलटीएस (लंबे समय तक सहायता) पर वापस ले जाने का सुझाव दिया जाता है डिफ़ॉल्ट रूप से फ़्लैग को चालू किए बिना रिलीज़ करें.
--experimental_*
फ़्लैग की मदद से सुरक्षित किए गए एपीआई और काम करने के तरीके में किसी भी समय बदलाव किया जा सकता है समय.--experimental_*
या--incompatible_*
का इस्तेमाल करके, कभी भी प्रोडक्शन बिल्ड न चलाएं फ़्लैग.
इस नीति का पालन करने का तरीका
- Basel का इस्तेमाल करने वाले लोगों के लिए - Baज़र को अपडेट करने का तरीका
- योगदान देने वालों के लिए - काम न करने वाले बदलावों के लिए सबसे सही तरीके
- रिलीज़ मैनेजर के लिए - समस्या से जुड़े लेबल और रिलीज़ को अपडेट करने का तरीका
स्थिर फ़ंक्शन क्या है?
आम तौर पर, बिना --experimental_...
फ़्लैग वाले एपीआई या व्यवहार को ध्यान में रखा जाता है
बेज़ल और अच्छी तरह काम करने वाली सुविधाएं.
इसमें इस तरह का कॉन्टेंट शामिल है:
- स्टारलार्क लैंग्वेज और एपीआई
- Basel के साथ बंडल किए गए नियम
- Basel API, जैसे कि Remote एक्ज़िक्यूशन एपीआई या बिल्ड इवेंट प्रोटोकॉल
- फ़्लैग और उनके सिमेंटिक्स
डेटा को दूसरी जगह भेजने से जुड़ी रेसिपी और उनमें किए गए बदलाव काम नहीं करते
अपनी नई रिलीज़ में असंगत होने वाले हर बदलाव के लिए, Basel की टीम का लक्ष्य
माइग्रेशन रेसिपी जिससे आप अपना कोड (BUILD
और .bzl
फ़ाइलें,
साथ ही, स्क्रिप्ट में Basel का इस्तेमाल, Basel API का इस्तेमाल वगैरह का इस्तेमाल वगैरह).
जो बदलाव काम नहीं करते उनमें उससे जुड़ा --incompatible_*
फ़्लैग और
GitHub से जुड़ी समस्या है.
असंगत फ़्लैग और प्रासंगिक बदलावों को इस पर बैक-पोर्ट करने का सुझाव दिया जाता है डिफ़ॉल्ट रूप से फ़्लैग को चालू किए बिना, एलटीएस वाली सबसे नई रिलीज़ को अपडेट करना. इससे उपयोगकर्ताओं को के साथ काम न करने वाले बदलावों के साथ माइग्रेट करने के लिए, अगली एलटीएस रिलीज़ होने से पहले उपलब्ध हैं.
असंगत बदलावों के बारे में बताना
काम न करने वाले बदलावों के बारे में जानकारी का मुख्य सोर्स, GitHub की समस्याएं हैं "अनियमित-बदलाव" से मार्क किया गया है लेबल बनाएं.
साथ काम न करने वाले हर बदलाव के लिए, समस्या नीचे दी गई जानकारी देती है:
- काम न करने वाले बदलाव को कंट्रोल करने वाले फ़्लैग का नाम
- बदली गई सुविधा की जानकारी
- डेटा दूसरी जगह भेजने से जुड़ी रेसिपी
जब HEAD पर Basel के साथ माइग्रेशन के लिए कोई असंगत बदलाव तैयार हो
(इसलिए, अगली बेज़ल रोलिंग रिलीज़ के साथ), इसे
migration-ready
लेबल. असंगत बदलाव की समस्या तब बंद होती है जब
असंगत फ़्लैग को HEAD पर फ़्लिप कर दिया गया है.