Bazelisk का इस्तेमाल करके, Bazel को इंस्टॉल / अपडेट करना

Bazel इंस्टॉल करना

Ubuntu, Windows, और macOS पर Bazel इंस्टॉल करने के लिए, Bazelisk का इस्तेमाल करने का सुझाव दिया जाता है. यह Bazel का सही वर्शन अपने-आप डाउनलोड और इंस्टॉल करता है. अगर आपको मौजूदा वर्किंग डायरेक्ट्री के हिसाब से Bazel के अलग-अलग वर्शन के बीच स्विच करना है या Bazel को हमेशा नए वर्शन पर अपडेट रखना है, तो Bazelisk का इस्तेमाल करें.

ज़्यादा जानकारी के लिए, आधिकारिक README देखें.

Bazel को अपडेट करना

Bazel में पिछले वर्शन के साथ काम करने की नीति है. अगर आप किसी बदलाव के लेखक हैं, तो पिछले वर्शन के साथ काम न करने वाले बदलावों को रोल आउट करने के बारे में दिशा-निर्देश देखें. उस पेज पर, सबसे सही तरीकों के बारे में खास जानकारी दी गई है. इनमें, आने वाले समय में होने वाले ऐसे बदलावों के साथ अपने प्रोजेक्ट की जांच करने और उसे माइग्रेट करने का तरीका बताया गया है जो काम नहीं करेंगे. साथ ही, ऐसे बदलाव करने वाले लोगों को सुझाव/राय देने या शिकायत करने का तरीका भी बताया गया है.

Bazelisk की मदद से Bazel के वर्शन मैनेज करना

Bazelisk की मदद से, Bazel के वर्शन मैनेज किए जा सकते हैं.

Bazelisk ये काम कर सकता है:

  • Bazel को एलटीएस या रोलिंग रिलीज़ के नए वर्शन पर अपने-आप अपडेट करें.
  • .bazelversion फ़ाइल में बताए गए Bazel वर्शन का इस्तेमाल करके, प्रोजेक्ट बनाएं. उस फ़ाइल को वर्शन कंट्रोल में सेव करें, ताकि यह पक्का किया जा सके कि आपके बिल्ड को फिर से बनाया जा सकता है.
  • उन बदलावों के लिए अपने प्रोजेक्ट को माइग्रेट करने में मदद करता है जो काम नहीं करते (ऊपर देखें)
  • रिलीज़ कैंडिडेट को आसानी से आज़माएं

माइग्रेट करने का सुझाया गया तरीका

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

एक मेजर वर्शन से दूसरे मेजर वर्शन पर माइग्रेट करने के लिए, यह प्रोसेस अपनाएं:

  1. अगले वर्शन पर माइग्रेट करने के बारे में सलाह पाने के लिए, रिलीज़ नोट पढ़ें.
  2. ऐसे मुख्य बदलावों के लिए --incompatible_* फ़्लैग और GitHub से जुड़ी समस्या होनी चाहिए जो काम नहीं करते:
    • माइग्रेशन से जुड़ी गाइड, GitHub की इस समस्या से जुड़ी जानकारी में उपलब्ध है.
    • ऐसे बदलावों को माइग्रेट करने के लिए टूल उपलब्ध हैं जो काम नहीं करते. उदाहरण के लिए, buildifier.
    • माइग्रेशन से जुड़ी समस्याओं की शिकायत करने के लिए, GitHub पर इससे जुड़ी समस्या पर टिप्पणी करें.

माइग्रेट करने के बाद, अगली बड़ी रिलीज़ तक, आपको बैकवर्ड-कंपैटिबिलिटी की चिंता किए बिना अपने प्रोजेक्ट बनाने की सुविधा मिलती रहेगी.