बज़ेल में योगदान

Bazel प्रोजेक्ट और इसके इकोसिस्टम में कई तरीकों से योगदान दिया जा सकता है.

सुझाव दें

Bazel का इस्तेमाल करते समय, आपको ऐसी चीज़ें मिल सकती हैं जिन्हें बेहतर बनाया जा सकता है. इन स्थितियों में समस्याओं की शिकायत करके, हमारी मदद करें:

  • Bazel क्रैश हो जाता है या आपको कोई ऐसी गड़बड़ी मिलती है जिसे सिर्फ़ bazel clean का इस्तेमाल करके ठीक किया जा सकता है.
  • दस्तावेज़ में दी गई जानकारी अधूरी है या समझ में नहीं आ रही है. इसके अलावा, जिस पेज को देखा जा रहा है उस पर मौजूद समस्याओं की शिकायत भी की जा सकती है. इसके लिए, पेज के सबसे ऊपर दाएं कोने में मौजूद "समस्या बनाएं" लिंक का इस्तेमाल करें.
  • गड़बड़ी के मैसेज को बेहतर बनाया जा सकता है.

कम्यूनिटी से जुड़ी गतिविधियों में हिस्सा लें

Bazel कम्यूनिटी से जुड़ने के लिए, ये काम किए जा सकते हैं:

  • Stack Overflow पर सवालों के जवाब देकर.
  • Slack पर अन्य उपयोगकर्ताओं की मदद करना.
  • दस्तावेज़ को बेहतर बनाना या उदाहरणों का योगदान करना.
  • अपने अनुभव या सुझावों को शेयर करना. उदाहरण के लिए, किसी ब्लॉग या सोशल मीडिया पर.

कोड में योगदान करना

Bazel एक बड़ा प्रोजेक्ट है और Bazel के सोर्स कोड में बदलाव करना मुश्किल हो सकता है.

Bazel के नेटवर्क में इन तरीकों से योगदान दिया जा सकता है:

  • पुल अनुरोधों का योगदान देकर, नियमों को बनाए रखने वालों की मदद करना.
  • नए नियम बनाना और उन्हें ओपन-सोर्स करना.
  • Bazel से जुड़े टूल में योगदान करना. उदाहरण के लिए, माइग्रेशन टूल.
  • Bazel को अन्य आईडीई और टूल के साथ बेहतर तरीके से इंटिग्रेट करना.

बदलाव करने से पहले, GitHub पर कोई समस्या दर्ज करें या bazel-discuss@ पर ईमेल भेजें.

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

बदलाव सबमिट करने का तरीका जानने के लिए, पैच स्वीकार करने की प्रोसेस देखें.

Bazel के कोड की जानकारी

Bazel में एक बड़ा कोडबेस है. इसमें कई जगहों पर कोड मौजूद है. ज़्यादा जानकारी के लिए, कोडबेस गाइड देखें.

Bazel को इस तरह व्यवस्थित किया जाता है:

  • क्लाइंट कोड src/main/cpp में है और कमांड-लाइन इंटरफ़ेस उपलब्ध कराता है.
  • प्रोटोकॉल बफ़र src/main/protobuf में हैं.
  • सर्वर कोड, src/main/java और src/test/java में है.
    • कोर कोड, जिसमें ज़्यादातर SkyFrame और कुछ यूटिलिटी शामिल होती हैं.
    • अंतर्निहित नियम, com.google.devtools.build.lib.rules और com.google.devtools.build.lib.bazel.rules में मौजूद होते हैं. सबसे पहले, नियम लिखने से जुड़ी चुनौतियों के बारे में पढ़ें.
  • Java नेटिव इंटरफ़ेस, src/main/native में होते हैं.
  • भाषा के लिए सहायता देने वाले अलग-अलग टूल के बारे में, Bazel को कंपाइल करना सेक्शन में दी गई सूची में बताया गया है.

Bazel के सोर्स कोड को खोजना

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