SKIP 1 — scikit-image 管理與決策#
- 作者:
Juan Nunez-Iglesias <juan.nunez-iglesias@monash.edu>
- 作者:
Stéfan van der Walt <stefanv@berkeley.edu>
- 作者:
Josh Warner
- 作者:
François Boulogne
- 作者:
Emmanuelle Gouillart
- 作者:
Mark Harfouche
- 作者:
Lars Grüter
- 作者:
Egor Panfilov
- 作者:
Marianne Corvellec
- 狀態:
最終
- 類型:
流程
- 建立時間:
2019-07-02
- 已解決時間:
2019-09-25
- 決議:
- skimage 版本:
0.16
- 修訂時間:
2024-06-09
摘要#
本文的目的是將 scikit-image 專案使用的管理流程正式化,以釐清決策是如何制定的,以及我們社群的各個要素是如何互動的。
這是一個基於共識的社群專案。任何對專案感興趣的人都可以加入社群、貢獻於專案設計,並參與決策過程。本文說明如何參與、如何達成共識,以及如何解決僵局。
角色與職責#
社群#
scikit-image 社群由任何以任何方式使用或參與專案的人組成。
貢獻者#
社群成員可以透過以下具體方式直接與專案互動,成為貢獻者,例如
透過 GitHub pull request 提出程式碼變更;
在我們的 GitHub 問題頁面報告問題;
以及其他可能性。任何社群成員都可以成為貢獻者,並鼓勵所有人這樣做。透過對專案做出貢獻,社群成員可以直接幫助塑造其未來。
鼓勵貢獻者閱讀貢獻指南。
核心開發者#
核心開發者是透過持續貢獻展現對專案持續投入的社群成員。他們已證明他們可以被信任以謹慎的方式維護 scikit-image。成為核心開發者允許貢獻者合併已批准的 pull request、對合併 pull request 投贊成票或反對票,並參與決定 API 的重大變更,從而更輕鬆地繼續進行他們與專案相關的活動。核心開發者會以組織成員身分出現在 scikit-image GitHub 組織中。核心開發者應在審閱程式碼貢獻時遵守核心開發者指南。
新的核心開發者可以由任何現有的核心開發者提名。關於新核心開發者提名的討論是該專案的私人管理清單上進行的少數活動之一。邀請新核心開發者的決定必須透過「惰性共識」做出,這表示所有回覆的現有核心開發者都一致同意。邀請必須在最初提名後至少一週進行,以便讓現有成員有時間表達任何反對意見。
指導委員會#
指導委員會 (SC) 成員是具有額外職責以確保專案順利運作的核心開發者。SC 成員應參與策略規劃、批准治理模式的變更,並針對授予專案本身的資金做出決策。(提供給社群成員的資金由他們自行追求和管理。)SC 的目的是確保從大方向的角度來看進展順利。影響整個專案的變更需要根據對專案和更廣泛生態系統的長期經驗來進行分析。當核心開發者社群(包括 SC 成員)在合理的時間範圍內未能達成共識時,SC 就是解決問題的實體。
指導委員會的成員人數固定為五名。未來可能會擴編。scikit-image 的初始指導委員會由 Stéfan van der Walt、Juan Nunez-Iglesias、Emmanuelle Gouillart、Josh Warner 和 Zachary Pincus 組成。SC 成員資格會在每年一月重新審視。不積極參與 SC 職務的 SC 成員應辭職。新成員由核心開發者提名加入。被提名者應已展現對專案及其價值觀的長期持續投入。提名將導致討論,討論時間不得超過一個月,然後經共識同意加入 SC。
可以透過 skimage-steering@groups.io 與 scikit-image 指導委員會聯絡。
決策流程#
關於專案未來的決策是透過與社群所有成員的討論來制定的。所有非敏感的專案管理討論都在專案開發者論壇和問題追蹤器上進行。有時,敏感的討論可能會在私人清單上進行。
決策應符合 scikit-image 專案的使命、願景和價值觀。
Scikit-image 使用「尋求共識」的流程來制定決策。該群組會嘗試找到一個在核心開發者之間沒有公開反對意見的解決方案。核心開發者應區分對提案的基本反對意見和他們可以接受的次要瑕疵,並且不應為了後者而阻礙決策流程。如果找不到沒有反對意見的選項,則會將決策升級到 SC,SC 本身會使用尋求共識來達成決議。在不太可能發生仍然出現僵局的情況下,如果提案獲得 SC 的簡單多數支持,則該提案將向前推進。任何投票都必須有scikit-image 提案 (SKIP)的支持。
決策(除了以上所述的增加核心開發者和 SC 成員資格之外)是根據以下規則制定的
次要文件變更,例如錯字修正或新增/更正句子(但不包括 scikit-image.org 首頁或「關於」頁面的變更),需要核心開發者的批准且核心開發者在問題或 pull request 頁面上沒有不同意或要求變更(惰性共識)。如果核心開發者不確定其他人會同意,則應等待一兩天讓其他人發表意見。
程式碼和主要文件變更以及 API 變更需要兩位核心開發者同意且核心開發者在問題或 pull request 頁面上沒有不同意或要求變更(惰性共識)。如果出現不同意或要求變更的情況,如果核心開發者不確定其他人會同意,則應等待至少 5 天讓其他人發表意見。
API 原則的變更需要 SKIP,並遵循以上概述的決策流程。但是,在這種情況下,反對期限應為一個月。
對此治理模式或我們的使命、願景和價值觀的變更需要 SKIP,並遵循以上概述的決策流程,除非核心開發者一致同意變更。
如果在惰性共識中提出反對意見,提案者可以向社群和核心開發者申訴,並且可以透過升級到 SC 來批准或拒絕變更,必要時可以提出 SKIP(見下文)。
改進提案 (SKIPs)#
對於所有投票,必須在投票前公開提出並討論正式提案。在進行討論後,提案的主要倡導者必須建立一份整合文件,總結討論內容,稱為 SKIP,核心團隊將對其進行投票。SKIP 0 — 目的與流程中詳細說明了 SKIP 的生命週期。
所有現有 SKIP 的清單可在此處取得這裡。
版權#
本文件基於 scikit-learn 治理文件,並置於公共領域。