Bazel 舉辦特別興趣小組 (SIG) 活動,著重於特定領域的協作,並支援 Bazel 擁有者、維護人員和貢獻者之間的通訊和協調。這項政策適用於 bazelbuild
。
SIG 會公開作業。SIG 的理想範圍涵蓋明確定義的領域,且大部分參與者來自社群。SIG 可能會專注於 bazelbuild
中由社群維護的存放區 (例如語言規則),或 Bazel 存放區中的程式碼區域 (例如 Remote Execution)。
雖然並非所有 SIG 的能量、範圍廣度或管理模式都相同,但應有充分證據顯示,如果成立興趣群組,社群成員願意參與並貢獻。加入前,請先查看群組的工作,然後與 SIG 領導人聯絡。會員政策會因 SIG 而異。
請參閱 Bazel SIG 的完整清單。
非目標:SIG 不是什麼
SIG 的目的是促進共同作業。因此,SIG 是:
- 並非支援論壇:郵寄清單和 SIG 並不相同
- 不需立即提供:在專案初期,您可能不知道自己是否共用工作或協作者
- 並非免費勞力:成長和協調工作需要能量
Bazel 擁有者對 SIG 建立採取保守做法,因為在 GitHub 上啟動專案非常容易,因此有許多合作途徑不需要 SIG。
SIG 生命週期
本節說明如何建立 SIG。
研究與諮詢
如要提議成立新的 SIG 群組,請先收集核准證據,如下所述。你可以考慮以下幾種做法:
- 群組要解決的明確問題或一組問題
- 與受益社群成員諮詢,評估效益和投入意願
- 如果是現有專案,請提供問題和 PR 的證據,證明貢獻者關心該主題
- 群組可能達成的目標
- 執行群組所需的資源
即使 SIG 的需求顯而易見,研究和諮詢對於團隊的成功仍至關重要。
建立新群組
新群組應遵循下列章程制定程序。特別是,必須證明:
- 明確指出 Bazel 的用途和優點 (無論是針對子專案或應用程式領域)
- 兩名以上願意擔任群組領導人的貢獻者、其他貢獻者,以及群組需求證據
- 每個群組都必須使用至少一個可公開存取的郵寄清單。SIG 可以重複使用公開清單,例如 bazel-discuss,要求 @bazel.build 的清單,或建立自己的清單
- SIG 最初需要的資源 (通常是郵寄清單和定期視訊通話)。
- SIG 可以從
bazelbuild/community
目錄或bazelbuild
GitHub 機構的自有存放區提供文件和檔案。如果 SIG 選擇在bazelbuild
GitHub 機構以外的地方整理工作,可以連結至外部資源 - Bazel 擁有者會核准或拒絕 SIG 申請,並視需要諮詢其他利害關係人
在進入正式程序之前,請先透過 product@bazel.build 諮詢 Bazel 產品團隊。大多數 SIG 都需要經過對話和反覆討論,才能獲得核准。
如要正式要求成立新群組,請將章程以 PR 形式提交至 bazelbuild/community
,並在 PR 的註解中加入要求,格式如下列範本所示。核准後,系統會合併群組的 PR,並建立必要資源。
新 SIG 的範本要求
如要申請新的 SIG,請使用社群 repo 中的範本: SIG-request-template.md。
包機
如要成立群組,您必須遵守章程和 Bazel 行為準則。群組的封存內容將會公開。成員資格可開放所有人加入,不需經過核准,也可開放申請,但須等待群組管理員核准。
章程必須指派管理員。除了管理員之外,群組也必須至少有一位領導者 (可以是同一人),負責與 Bazel 產品團隊協調聯絡事宜。
群組建立者必須將章程發布至群組郵寄清單。Bazel GitHub 機構的社群存放區會封存這類文件和政策。隨著群組的實務做法和慣例不斷演進,他們應在社群存放區的相關部分更新章程。
協作與包容
雖然並非強制規定,但建議小組選擇透過排定的電話會議或即時通訊管道進行會議,任何這類會議都應在郵寄清單上宣傳,並在會後將會議記錄發布到郵寄清單。定期會議有助於推動 SIG 的問責制和進展。
Bazel 產品團隊成員可能會主動監控群組,並視情況鼓勵討論和採取行動。
成立 SIG
必要活動:
- 通知 Bazel 一般討論群組 (bazel-discuss、bazel-dev)。
選用活動:
- 為 Bazel 網誌撰寫網誌文章
SIG 的健康狀態和終止
Bazel 擁有者會盡力確保 SIG 運作正常。Bazel 擁有者偶爾會要求 SIG 領導人回報 SIG 的工作,讓更廣泛的 Bazel 社群瞭解該群組的活動。
如果 SIG 不再有實用目的或感興趣的社群,則可能會封存並停止運作。為維護專案的整體健康狀態,Bazel 產品團隊有權封存這類閒置 SIG,但這並非理想結果。如果 SIG 認為已完成任務,也可以選擇解散。
注意事項
這項內容採用自 TensorFlow 的 SIG 劇本,並經過修改。