Bazel, खास दिलचस्पी वाले ग्रुप (एसआईजी) होस्ट करता है. इससे, खास क्षेत्रों में साथ मिलकर काम करने पर फ़ोकस किया जा सकता है. साथ ही, Bazel के मालिकों,
रखरखाव करने वालों, और योगदान देने वालों के बीच बातचीत और तालमेल बनाए रखने में मदद मिलती है. यह नीति
, bazelbuild पर लागू होती है.
एसआईजी, सार्वजनिक तौर पर काम करते हैं. एसआईजी के लिए, अच्छी तरह से तय किया गया डोमेन सबसे सही होता है. इसमें, ज़्यादातर लोग कम्यूनिटी से हिस्सा लेते हैं. एसआईजी, bazelbuild में कम्यूनिटी के रखरखाव वाले रिपॉज़िटरी (जैसे, भाषा के नियम) पर फ़ोकस कर सकते हैं. इसके अलावा, वे Bazel रिपॉज़िटरी में कोड के क्षेत्रों (जैसे, रिमोट एक्ज़ीक्यूशन) पर भी फ़ोकस कर सकते हैं.
ऐसा हो सकता है कि सभी एसआईजी में एक जैसी ऊर्जा, स्कोप की चौड़ाई या गवर्नेंस मॉडल न हों. हालांकि, इस बात के काफ़ी सबूत होने चाहिए कि कम्यूनिटी के सदस्य, दिलचस्पी वाले ग्रुप के बनने पर उसमें शामिल होने और योगदान देने के लिए तैयार हैं. शामिल होने से पहले, ग्रुप के काम की समीक्षा करें. इसके बाद, एसआईजी के लीडर से संपर्क करें. हर एसआईजी के लिए, सदस्यता की नीतियां अलग-अलग होती हैं.
Bazel के एसआईजी की पूरी सूची देखें .
लक्ष्य नहीं: एसआईजी क्या नहीं है
एसआईजी, शेयर किए गए काम पर साथ मिलकर काम करने की सुविधा देने के लिए बनाए जाते हैं. इसलिए, एसआईजी:
- सहायता फ़ोरम नहीं है: मेलिंग सूची और एसआईजी, एक ही चीज़ नहीं है
- तुरंत ज़रूरी नहीं है: किसी प्रोजेक्ट की शुरुआत में, यह पता नहीं होता कि आपके पास शेयर किया गया काम है या सहयोगी
- मुफ़्त में काम करने की जगह नहीं है: साथ मिलकर काम को आगे बढ़ाने और उसमें तालमेल बनाए रखने के लिए, ऊर्जा की ज़रूरत होती है
Bazel के मालिक, एसआईजी बनाने के लिए सोच-समझकर फ़ैसला लेते हैं. GitHub पर प्रोजेक्ट शुरू करना आसान है. इसलिए, एसआईजी की ज़रूरत के बिना भी साथ मिलकर काम करने के कई तरीके हैं.
एसआईजी का लाइफ़साइकल
इस सेक्शन में, एसआईजी बनाने का तरीका बताया गया है.
रिसर्च करना और सलाह लेना
नया एसआईजी ग्रुप बनाने का सुझाव देने के लिए, सबसे पहले मंज़ूरी के लिए सबूत इकट्ठा करें. इसके बारे में यहां बताया गया है. कुछ संभावित तरीके:
- ऐसी समस्या या समस्याओं का सेट जिसे ग्रुप हल करेगा
- कम्यूनिटी के उन सदस्यों से सलाह लेना जिन्हें फ़ायदा होगा. साथ ही, फ़ायदे और उनके योगदान देने की इच्छा का आकलन करना
- मौजूदा प्रोजेक्ट के लिए, समस्याओं और पीआर से सबूत इकट्ठा करना. इससे पता चलता है कि योगदान देने वालों को इस विषय में दिलचस्पी है
- ग्रुप के लिए संभावित लक्ष्य
- ग्रुप को चलाने के लिए ज़रूरी संसाधन
भले ही, एसआईजी की ज़रूरत साफ़ तौर पर दिखती हो, लेकिन ग्रुप की सफलता के लिए रिसर्च करना और सलाह लेना ज़रूरी है.
नया ग्रुप बनाना
नए ग्रुप को, चार्टरिंग के लिए यहां दिया गया प्रोसेस फ़ॉलो करना चाहिए. खास तौर पर, उसे यह दिखाना होगा कि:
- Bazel के लिए, साफ़ तौर पर तय किया गया मकसद और फ़ायदा (सब-प्रोजेक्ट या ऐप्लिकेशन के क्षेत्र के हिसाब से)
- दो या उससे ज़्यादा योगदान देने वाले लोग, ग्रुप के लीड के तौर पर काम करने के लिए तैयार हैं. साथ ही, अन्य योगदान देने वाले लोग मौजूद हैं. इसके अलावा, ग्रुप की मांग के सबूत भी मौजूद हैं
- हर ग्रुप को, कम से कम एक ऐसी मेलिंग सूची का इस्तेमाल करना होगा जिसे सार्वजनिक तौर पर ऐक्सेस किया जा सकता है. एसआईजी सार्वजनिक सूचियों में से किसी एक का फिर से इस्तेमाल कर सकता है. जैसे, bazel-discuss. इसके अलावा, @bazel.build के लिए सूची का अनुरोध किया जा सकता है या अपनी सूची बनाई जा सकती है
- एसआईजी को शुरुआत में किन संसाधनों की ज़रूरत होती है (आम तौर पर, मेलिंग सूची और नियमित वीडियो कॉल.)
- एसआईजी, अपनी डायरेक्ट्री में मौजूद दस्तावेज़ और फ़ाइलें उपलब्ध करा सकते हैं
bazelbuild/communityया अपनी रिपॉज़िटरी से, जोbazelbuildGitHub संगठन में मौजूद है. अगर एसआईजी,bazelbuildGitHub संगठन के बाहर अपना काम व्यवस्थित करने का विकल्प चुनते हैं, तो वे बाहरी संसाधनों से लिंक कर सकते हैं - Bazel के मालिक, एसआईजी के ऐप्लिकेशन को स्वीकार या अस्वीकार करते हैं. साथ ही, ज़रूरत पड़ने पर अन्य स्टेकहोल्डर से सलाह लेते हैं
प्रोसेस के औपचारिक हिस्सों में शामिल होने से पहले, आपको Bazel की प्रॉडक्ट टीम से सलाह लेनी चाहिए. इसके लिए, product@bazel.build पर संपर्क करें. ज़्यादातर एसआईजी को मंज़ूरी मिलने से पहले, बातचीत और दोहराव की ज़रूरत होती है.
नए ग्रुप के लिए औपचारिक अनुरोध,
bazelbuild/community में पीआर के तौर पर चार्टर सबमिट करके किया जाता है.
साथ ही, नीचे दिए गए टेंप्लेट
के मुताबिक, पीआर पर टिप्पणियों में अनुरोध शामिल किया जाता है. मंज़ूरी मिलने पर, ग्रुप के लिए पीआर को मर्ज कर दिया जाता है और ज़रूरी संसाधन बना दिए जाते हैं.
नए एसआईजी के लिए अनुरोध का टेंप्लेट
नए एसआईजी का अनुरोध करने के लिए, कम्यूनिटी रिपो में मौजूद टेंप्लेट का इस्तेमाल करें: SIG-request-template.md.
चार्टरिंग
किसी ग्रुप को बनाने के लिए, आपके पास चार्टर होना चाहिए. साथ ही, आपको Bazel के आचार संहिता का पालन करना होगा. ग्रुप के संग्रह, सार्वजनिक तौर पर उपलब्ध होंगे. सदस्यता, बिना मंज़ूरी के सभी के लिए उपलब्ध हो सकती है. इसके अलावा, अनुरोध करने पर भी सदस्यता मिल सकती है. हालांकि, इसके लिए ग्रुप के एडमिन की मंज़ूरी ज़रूरी है.
चार्टर में, किसी एडमिन को नॉमिनेट करना ज़रूरी है. ग्रुप में, एडमिन के अलावा कम से कम एक व्यक्ति को लीड के तौर पर शामिल करना ज़रूरी है. ऐसा हो सकता है कि ये दोनों व्यक्ति एक ही हों. यह व्यक्ति, Bazel की प्रॉडक्ट टीम के साथ ज़रूरत के मुताबिक तालमेल बनाए रखने के लिए, संपर्क के तौर पर काम करता है.
ग्रुप बनाने वाले लोगों को, ग्रुप की मेलिंग सूची में अपना चार्टर पोस्ट करना होगा. Bazel GitHub संगठन में मौजूद कम्यूनिटी रिपॉज़िटरी, ऐसे दस्तावेज़ों और नीतियों को संग्रहित करती है. ग्रुप को अपनी नीतियों और तरीकों में बदलाव करने पर, उन्हें कम्यूनिटी रिपॉज़िटरी के काम के हिस्से में अपने चार्टर अपडेट करने चाहिए.
साथ मिलकर काम करना और शामिल करना
यह ज़रूरी नहीं है, लेकिन ग्रुप को मीटिंग करने के लिए, तय समय पर होने वाली कॉन्फ़्रेंस कॉल या चैट चैनलों के ज़रिए साथ मिलकर काम करने की सुविधा का इस्तेमाल करना चाहिए. ऐसी किसी भी मीटिंग के बारे में, मेलिंग सूची में जानकारी दी जानी चाहिए. साथ ही, मीटिंग के बाद मेलिंग सूची में नोट पोस्ट किए जाने चाहिए. नियमित मीटिंग से, एसआईजी में जवाबदेही और प्रोग्रेस को बढ़ावा मिलता है.
Bazel की प्रॉडक्ट टीम के सदस्य, ग्रुप की गतिविधियों पर नज़र रख सकते हैं. साथ ही, ज़रूरत के मुताबिक ग्रुप को चर्चा और कार्रवाई करने के लिए बढ़ावा दे सकते हैं.
एसआईजी लॉन्च करना
ज़रूरी गतिविधियां:
- Bazel के सामान्य चर्चा वाले ग्रुप (bazel-discuss, bazel-dev) को सूचना देना.
ज़रूरी नहीं गतिविधियां:
- Bazel के ब्लॉग के लिए कोई ब्लॉग पोस्ट बनाना
एसआईजी की स्थिति और उन्हें बंद करना
Bazel के मालिक, एसआईजी की स्थिति को बेहतर बनाए रखने की पूरी कोशिश करते हैं. Bazel के मालिक, एसआईजी के काम की रिपोर्ट देने के लिए, कभी-कभी एसआईजी के लीड से अनुरोध करते हैं. इससे, Bazel की पूरी कम्यूनिटी को ग्रुप की गतिविधि के बारे में जानकारी मिलती है.
अगर एसआईजी का कोई मकसद नहीं है या कम्यूनिटी के लोगों की दिलचस्पी नहीं है, तो उसे संग्रहित किया जा सकता है और उसका काम बंद किया जा सकता है. Bazel की प्रॉडक्ट टीम के पास, ऐसे एसआईजी को संग्रहित करने का अधिकार है जो काम नहीं कर रहे हैं. इससे, प्रोजेक्ट की स्थिति को बेहतर बनाए रखने में मदद मिलती है. हालांकि, यह कम ही होता है. एसआईजी, अपने काम की समयसीमा खत्म होने पर, उसे बंद करने का विकल्प भी चुन सकता है.
नोट
इस कॉन्टेंट को, Tensorflow के एसआईजी प्लेबुक से लिया गया है. इसमें कुछ बदलाव किए गए हैं.