perlgov - Perl 治理規則
我們正在為 Perl 程式語言的開發建立一個治理系統。
治理的範圍包括語言定義、其實作、其測試套件、其文件,以及其開發和維護的政策和程序。
治理系統包括對決策團體的定義、這些團體的組成和變更規則,以及這些治理團體活動的列舉權力和約束。
在建立治理系統時,我們尋求達成以下目標
我們想要一個具有功能性的系統。這表示管理小組可能會決定進行重大變更,或者他們可能會決定採取保守行動,但他們會在需要時採取行動並進行明確的溝通,而不是無法達成決策。
我們想要一個值得信賴的系統。這表示 Perl 的合理貢獻者可能會不同意管理小組做出的決策,但會接受這些決策是善意地做出,並諮詢了管理小組以外相關的社群。
我們想要一個具有永續性的系統。這表示它有自我修改的條款,包括向管理小組新增成員、讓成員在變得不活躍時得以存活,以及在需要時修正治理規則本身的方法。
我們想要一個透明的系統。這表示它會優先採用在公開場合管理一般事務的政策,而且會優先在有限的情況下保密。
我們想要一個尊重的系統。這表示它會建立文明論述的標準,允許健康的意見分歧,但避免社群中出現憤恨和敵意,因為這是它的責任。
Perl 語言治理應致力於
維護 Perl 語言和解釋器的品質、穩定性和連續性
引導 Perl 語言和解釋器的演進
建立並監督政策、程序、系統和機制,讓 Perl 語言和解釋器的貢獻者社群得以運作
鼓勵貢獻者之間的討論和共識,優先於治理小組的正式決策
促進貢獻者與更廣泛 Perl 生態系統中的外部利害關係人之間的溝通
本文說明了治理中涉及的三個角色
以下各節說明每個角色。
核心小組是由參與 Perl 語言和解釋器持續開發的一群值得信賴的志工組成。他們不必是語言開發人員或提交者。
"投票規則"一節說明了特定投票的參考。
除了對 Perl 語言的貢獻之外,核心小組制定 Perl 治理規則,決定誰參與治理的哪個角色,並將大量的決策權委派給指導委員會。
具體來說
他們選舉指導委員會,並有權罷免指導委員會成員。
他們與指導委員會共同管理核心小組成員資格。
他們與指導委員會共同有權修改 Perl 治理規則。
核心小組對與開發和發布語言本身無關的 Perl 生態系統部分沒有任何權限。這些包括,但不限於
Perl 基金會
CPAN 管理和 CPAN 作者
perl.org、metacpan.org 和其他由社群維護的網站和服務
Perl 會議和活動,但核心團隊直接組織的活動除外
Perl 相關的智慧財產權由第三方合法擁有,但適用的授權或協議允許的情況除外
當此文件首次通過時,將指定最初的核心團隊成員。
任何核心團隊成員都可以提名某人加入核心團隊,方法是將提名寄送給指導委員會。指導委員會必須核准或拒絕提名。如果核准,指導委員會將組織會員變更投票以通過加入。
核心團隊成員應展示
建設性和幫助性的良好記錄
以任何形式對專案目標做出重大貢獻
願意花一些時間來改善 Perl
貢獻不限於程式碼。以下是考慮加入核心團隊時可能會考慮的領域的不完整清單
從事社群管理和外展
在郵件清單、IRC 或其他論壇上提供支援
分類問題單
撰寫補丁(程式碼、文件或測試)
審查補丁(程式碼、文件或測試)
參與設計討論
提供特定領域的專業知識(安全性、i18n 等)
管理 Perl 基礎架構(網站、CI、文件等)
維護 Perl 生態系統中的重要專案
建立視覺設計
核心團隊成員資格承認持續且有價值的努力,這些努力與 Perl 專案的理念和目標非常一致。
預期核心團隊成員將作為社群的榜樣和專案的保管人,代表社群和所有依賴 Perl 的人。
核心團隊成員任職直到他們被移除。
核心團隊成員可以隨時辭去職位。
在特殊情況下,可能需要在他們不願意的情況下將某人從核心團隊中移除,例如公然或重複違反行為準則。任何核心團隊成員都可以向指導委員會發送召回請求,指名要移除的個人。指導委員會必須核准或拒絕召回請求。如果核准,指導委員會將組織會員變更投票以通過移除。
如果被移除的成員也在指導委員會中,那麼他們也會從指導委員會中被移除。
鼓勵已停止貢獻的核心團隊成員宣布自己「不活躍」。不活躍的成員不提名或投票。不活躍的成員可以在任何時候宣布自己活躍,但提議投票且尚未結束時除外。提名或投票資格將由投票管理員決定。
為了記錄和表彰他們的貢獻,不活躍的核心團隊成員將繼續與活躍成員一起列出。
核心團隊可以透過不信任投票移除單一指導委員會成員或整個指導委員會。
當核心團隊成員在適當的專案溝通管道上公開要求不信任投票,且另一位核心團隊成員附議提案時,就會觸發不信任投票。
如果一項不信任投票移除所有指導委員會成員,那麼不信任投票的投票管理員將管理一場選舉,以選出新的指導委員會。
任何核心團隊成員都可以透過向指導委員會發送提案來提議修改 Perl 治理規則。指導委員會必須決定核准或拒絕該提案。如果核准,指導委員會將組織一場修正案投票。
成員變更、修正案和不信任投票需要獲得核心團隊成員 2/3 的參與投票才能通過。
必須按照「投票管理員」部分中的規則選出投票管理員。
投票分兩個步驟進行
投票管理員說明正在投票的提案。然後,核心團隊可以在投票前討論此事。
活躍的核心團隊成員投票支持或反對該提案。投票是匿名進行的。
對於成員變更投票,每個階段將持續一週。對於修正案和不信任投票,每個階段將持續兩週。
指導委員會是一個由核心團隊選出的 3 人委員會。候選人不必是核心團隊成員。如果非成員候選人在選舉中獲勝,則會像成員變更投票一樣加入核心團隊。
「選舉規則」部分中說明了特定選舉的參考資料。
指導委員會擁有廣泛的權限,可以對 Perl 語言、直譯器以及所有其他組件、系統和流程做出決策,這些決策會導致語言直譯器的新版本。
例如,它可以
管理新版本發布的時間表和流程
建立提出、討論和決定語言變更的程序
將權力委派給指導委員會內部或外部的個人
指導委員會的決策將由委員會中非空缺席位的多數票決定。
指導委員會應設法盡可能少地使用這些權力。與其投票,不如尋求共識。與其對個別案例做出裁決,不如定義適用於所有案例的標準和流程。
與核心團隊一樣,指導委員會對與開發和發布語言本身無關的 Perl 生態系統部分沒有任何權限。
指導委員會無權修改 Perl 治理規則,除非「修改 Perl 治理規則」一節中有規定。
每次穩定功能版本發布(即變更為 PERL_REVISION
或 PERL_VERSION
)後或兩年後(以較早者為準),將通過任期選舉選出新的指導委員會。任期選舉將在觸發事件發生後的兩週內組織。除非委員會成員被免職,否則他們將任職至下一次任期選舉結束。
指導委員會成員可以隨時辭去其職位。
每當指導委員會出現空缺時,委員會將在空缺發生後的一週內組織特別選舉。如果整個指導委員會都空缺,則將舉行任期選舉。
指導委員會可以將特別選舉推遲長達十二週。他們這樣做的意圖必須公開聲明給核心團隊。如果任何活躍的核心團隊成員在一週內提出異議,則必須在兩週內組織特別選舉。指導委員會可以隨時選擇取消延期並立即開始組織特別選舉。
如果指導委員會成員死亡,或失聯且一個月或更長時間無法聯繫,則委員會的其他成員可以投票宣布其席位空缺。如果缺席成員在做出此聲明後返回,他們不會自動恢復職位,但可以在特別選舉中競選以填補空缺。
否則,指導委員會成員只能在任期結束前通過核心團隊的不信任投票被免職。
任期和特別選舉是排名選擇投票,用於建立候選人的有序清單,以填補指導委員會的空缺。
必須按照「投票管理員」部分中的規則選出投票管理員。
任期選舉和特別選舉都分為兩個階段
候選人宣告其服務意願。候選人必須由一位積極的核心團隊成員提名。自薦亦可。獲提名的候選人可以與核心團隊分享其候選人聲明。
如果候選人數少於空缺席次,則無需投票。提名期結束時,候選人將被宣布獲勝。
否則,積極的核心團隊成員將透過對所有候選人進行排名的方式投票。投票匿名進行。投票完成後,將使用 Condorcet 網路投票服務的比例代表制模式對候選人進行排名。如果出現平手,則可以透過平手候選人之間的相互協議解決,否則將由投票管理員透過隨機選擇解決平手。
任何被投票踢出核心團隊的人員,除非重新加入核心團隊,否則無資格成為指導委員會候選人。
對於任期選舉,每個階段將持續兩週。在第二階段結束時,排名最高的三人將當選為新的指導委員會。
對於特別選舉,每個階段將持續一週。在第二階段結束時,將從候選人排序清單中填補空缺,直到沒有空缺為止。
第一屆指導委員會的選舉將是任期選舉。Ricardo Signes 將擔任初始任期選舉的投票管理員,除非他本人是候選人,否則他將選擇一位非候選人管理員來取代他。
每場選舉或投票都需要一位投票管理員,負責管理溝通、收集秘密選票以及完成投票程序所需的所有其他活動。
除非另有規定,否則由指導委員會選擇投票管理員。
投票管理員不得是指導委員會成員、候選人或投票對象。投票管理員可以是核心團隊成員,如果是,則可以在擔任管理員的同時投票。如果投票管理員在選舉投票期間成為候選人,他們將任命一位非候選人替補。
如果整個指導委員會出缺或成為不信任投票的對象,則核心團隊將透過共識選擇一位投票管理員。如果一周內無法達成共識,Perl 基金會主席將選擇一位投票管理員。
以下清單列出指導委員會和核心團隊成員,他們負責建立發布此文件所附帶的 Perl。
不過請記住,如果您正在閱讀與 Perl 一起安裝的此文件的副本,則很可能已經過時了。由於每次新的穩定功能發布都會觸發選舉,因此您最好查看 此文件的最新副本,位於 Perl 的 git 儲存庫的 blead 分支中。由於它是 git,您還可以查看成員資格如何隨著時間而改變。
保羅·埃文斯
菲利普·布魯哈特
里卡多·西涅斯
Perl 核心團隊的現任成員是