रिलीज़ की नीति

Bazel ने लॉन्ग टर्म सपोर्ट (एलटीएस) रिलीज़ मॉडल का इस्तेमाल किया है, जिसमें मेजर वर्शन हर नौ महीने में रिलीज़ किए जाते हैं. साथ ही, छोटे वर्शन हर महीने रिलीज़ किए जाते हैं. इस पेज पर Bazel की रिलीज़ से जुड़ी नीति के बारे में जानकारी मिलती है. इसमें रिलीज़ उम्मीदवारों की सूची, टाइमलाइन, एलान, और टेस्टिंग से जुड़ी जानकारी भी शामिल है.

Bazel रिलीज़, GitHub पर मिल सकती हैं.

रिलीज़ उम्मीदवार

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

रिलीज़ के उम्मीदवारों की सूचना bazel-discuss पर दी जाती है. अगले कुछ दिनों तक, Bazel की टीम, कम्यूनिटी गड़बड़ी की रिपोर्ट पर नज़र रखती है. इस रिपोर्ट में, उम्मीदवारों के किसी भी रिग्रेशन पर नज़र रखी जाती है.

रिलीज़ हो रहा है

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

नई सुविधाओं को काटे जाने के बाद, रिलीज़ कैंडिडेट में नहीं चुना जाता. इसके अलावा, अगर किसी नई सुविधा में गड़बड़ी है, तो उस सुविधा को किसी रिलीज़ कैंडिडेट से रोल बैक किया जा सकता है. रिलीज़ कैंडिडेट से काटे जाने के बाद, सिर्फ़ उन गड़बड़ियों को तय किया जाता है जो रिलीज़ कैंडिडेट में बहुत ज़्यादा असर डाल सकती हैं या उसे रिलीज़ कर सकती हैं.

रिलीज़ सिर्फ़ उस दिन रिलीज़ की जाती है जब अगला दिन कामकाजी दिन होता है.

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

टेस्ट करना

ci.bazel.build पर चल रहे सभी प्रोजेक्ट का एक रात में चलने वाला बिल्ड चलता है, जिसमें सबसे ऊपर बनी Bazel बाइनरी और रिलीज़ बाइनरी इस्तेमाल होती हैं. किसी बड़े बदलाव की वजह से जिन प्रोजेक्ट पर असर होगा उन्हें इसकी सूचना दी जाती है.

जब रिलीज़ कैंडिडेट जारी किए जाते हैं, तो TensorFlow जैसे दूसरे Google प्रोजेक्ट की जांच उनके पूरे टेस्ट सुइट पर की जाती है. ऐसा रिलीज़ कैंडिडेट बाइनरी का इस्तेमाल करके किया जाता है. अगर आपके पास Bazel का इस्तेमाल करने वाला कोई ज़रूरी प्रोजेक्ट है, तो हमारा सुझाव है कि आप एक ऑटोमेटेड टेस्टिंग प्रोसेस बनाएं, जो रिलीज़ के मौजूदा उम्मीदवार को ट्रैक करे और किसी भी रिग्रेशन की रिपोर्ट करे.