Django プロジェクトの組織

原則

Django プロジェクトは、3 つの目標を追求するボランティアチームによって管理されています。

  • Django ウェブフレームワークの開発を推進すること、
  • Django 関連ソフトウェアのエコシステムを育成すること、
  • Django コミュニティーを Django Code of Conduct に記載されている価値観に従って率いること。

Django プロジェクトは法人ではありません。 Django Software Foundation (非営利団体)が、Django プロジェクトに関連する財務および法的事項を扱います。それ以外では、Django Software Foundation は Django プロジェクトが Django フレームワーク、そのエコシステム、およびそのコミュニティの開発を管理することを許可しています。

マージャー

役割

Mergers は、 Django Git repository へのプルリクエストをマージする少数の人々で構成されています。

特権

マージャーは以下の特権を持っています:

  • minor change (小さすぎて DEP process の使用を必要としない変更)としてのどんなプルリクエストでもマージできます。マージャーはそのマージャー自身によって主に作成された変更をマージしてはなりません。ただし、下記の人によってプルリクエストが承認された場合を除きます:
  • 適切な場での軽微な変更の議論を開始し、議論が進行する間、他のマージャーがそれをマージすることを控えるように要請できます。
  • 議論が合意に達していないとマージャーが判断した場合、マイナーチェンジに関して運営委員会に投票を要請できます。
  • 運営委員会に対して投票を要求する場合は、major change (DEP process の使用を必要とするほど重要) が実装のマイルストーンの1つに到達し、マージを目指すときです。

メンバーシップ(資格)

The steering council は、作業負荷を分散させ、個々のマージャーに過度な負担や燃え尽き症候群を引き起こさないように、彼らの数を最低 3 人に保つために必要に応じて Mergers を選出します。マージャーの数に上限はありません。

マージャーが Django フェローである必要はありませんが、Django ソフトウェア財団には、マージャーの役割を持続可能にする方法として、フェローのポジションの資金提供を利用する権限があります。

マージャーの役割には、以下の制限が適用されます:

  • 運営委員会のメンバーを同時に務めることはできません。マージャーが運営委員会に選出された場合、運営委員会のメンバーとしての職務を引き受けた時点で、直ちにマージャーとしての役割を終了します。
  • リリース担当者とマージャーの役割は同時に務めることができます。

空席が発生した場合や、運営委員会がそのような役割に追加の人選が必要だと判断した場合の選考プロセスは、以下の通りです:

  • 適切なディスカッションの場の優良な会員であれば誰でも、あるいは Django Software Foundation の理事会が DSF の Fellowship 委員会の意見を聞いて、検討すべき人物を提案することができます。
  • 運営協議会は提出された提案を検討し、その後、運営協議会のいずれかのメンバーが正式に候補者を推薦します。
  • 運営委員会が候補者の投票を行います。

マージャーはいつでもその役割を辞めることができますが、後任を選ぶことができるよう、事前に通知するよう努めなければなりません。Django Software Foundation が Django Fellow の契約を終了すると、運営委員会がその人の指名について投票できるようになるまで、その人のマージャーとしての役割は一時的に停止されます。

それ以外に、マージャーは以下によって解任することができます:

  • 運営委員会の選出による資格の喪失。
  • Django Software Foundation の行動規範委員会の措置により資格を失った場合。
  • 運営委員会の投票。

リリース担当者 (Releasers)

役割

Releasers とは、Django のパッケージリリースを Python Package Indexdjangoproject.com ウェブサイトにアップロードする権限を持つ人々の小さな集団です。

特権

ReleasersDjango のリリースをビルドしPython Package Indexdjangoproject.com ウェブサイトにアップロードします。

メンバーシップ(資格)

The steering council は、作業負荷を分散させ、個々のリリース担当者に過度な負担や燃え尽き症候群を引き起こさないように、彼らの数を最低 3 人に保つために必要に応じて Releasers を選出します。リリース担当者の数に上限はありません。

リリース担当者が Django フェローである必要はありませんが、Django ソフトウェア財団には、リリース担当者の役割を持続可能にする方法として、フェローのポジションの資金提供を利用する権限があります。

リリース担当者とマージャーの役割は同時に務めることができます。

空席が発生した場合や、運営委員会がそのような役割に追加の人選が必要だと判断した場合の選考プロセスは、以下の通りです:

  • 適切なディスカッションの場の優良な会員であれば誰でも、あるいは Django Software Foundation の理事会が DSF の Fellowship 委員会の意見を聞いて、検討すべき人物を提案することができます。
  • 運営協議会は提出された提案を検討し、その後、運営協議会のいずれかのメンバーが正式に候補者を推薦します。
  • 運営委員会が候補者の投票を行います。

リリース担当者はいつでもその役割を辞めることができますが、後任を選ぶことができるよう、事前に通知するよう努めなければなりません。Django Software Foundation が Django Fellow の契約を終了すると、運営委員会がその人の指名について投票できるようになるまで、その人のリリース担当者としての役割は一時的に停止されます。

それ以外に、リリース担当者は以下によって解任することができます:

  • Django Software Foundation の行動規範委員会の措置により資格を失った場合。
  • 運営委員会の投票。

運営委員会

役割

運営委員会は、下記のことを行う経験豊富なコントリビューターのグループです:

  • Django の開発とリリースプロセスの監督を行い、
  • 機能開発とリリースの方向性を設定するのを支援し、
  • 特定の役割を果たすことに参加し、そして
  • 他の意思決定プロセスが失敗した場合、同点決選投票(議長決裁)を投じることができます。

彼らの主な関心事は、Django Web フレームワークの品質と安定性を維持することです。

特権

運営委員会は以下の権限を有します:

  • Django の技術的な変更に関する質問について、拘束力のある決定を行うこと。
  • Django への特定のコードのマージの拒否権や、特定のマージやコミットの差し戻しの命令。
  • Django の将来の技術的方向性に関する提案とアイデアの募集をアナウンスすること。
  • Django のリリーススケジュールの設定と調整。
  • マージャーとリリース担当者の選任と解任。
  • 適切と判断される場合、運営委員会のメンバーの解任に参加すること。
  • 運営委員会が選挙が適切と判断した場合に、自動的に発動される選挙以外の運営委員会の選挙を呼びかけること。
  • Django のガバナンスの変更に参加すること (組織の変更 を参照)。
  • 運営委員会が拘束力のある決定を下すには時期尚早と判断した案件、または運営委員会の権限の範囲外であると判断した案件について、投票を拒否すること。
  • Django オープンソースプロジェクト内の他の技術チームのガバナンスを担当し、それに従ってそれらのチームを統治すること。

メンバーシップ(資格)

The steering council は、経験豊かな5人のコントリビューターから選出されたグループです:

  • Django または Django エコシステムへの実質的な貢献歴。この履歴は、運営委員会に立候補する 18 ヶ月以上前に始まり、以下の項目のうち少なくとも 2 つに実質的な貢献が含まれていなければなりません: - Django プロジェクトまたは Django エコシステム内の主要なサードパーティパッケージでのコード貢献 - プルリクエストのレビューおよび/または Django プロジェクトチケットのトリアージ - ドキュメンテーション、チュートリアルまたはブログ投稿 - django-developers メーリングリストまたは Django Forum での Django に関する議論 - Django 関連のイベントまたはユーザグループの運営
  • Djangoの方向性と将来への関与の履歴。これは最近のものである必要はありませんが、過去3年間に関与していない候補者は、その3年間のDjangoの変化と方向性を理解していることを証明する必要があります。

Django の各リリースサイクルの後に、新しい委員会が選出されます。選挙プロセスは以下の通りです:

  1. 運営委員会は、メンバーの一人に、Django Software Foundation の書記 (Secretary) に、選挙が始まったことと、そのきっかけとなった状況を文書で通知するよう指示します。書記は適切な場 -- django-developers メーリングリストと Django forum に投稿し、選挙とそのスケジュールを発表します。
  2. 選挙が発表されるとすぐに、DSF理事会 DSF Board は有権者登録の期間を開始します。DSFの個人会員 individual members of the DSF は自動的に登録されますので、特に登録する必要はありません。それ以外のすべての人で、選挙権を有すると思われるが、まだ選挙人登録をしていない人は、DSF理事会に投票権を申請することができます。有権者登録用紙および有権者名簿は、DSF理事会が管理します。DSF理事会は、悪意を持って登録したと思われる有権者、資格を偽って登録したと思われる有権者、またはその他の資格のない有権者に対し、異議を申し立て、登録を拒否することができます。
  3. 有権者の登録は選挙公示の1週間後に締め切られます。その時点で候補者の登録が始まります。有資格者であれば誰でも候補者として登録できます。候補者登録用紙と候補者名簿はDSF理事会が管理し、候補者は登録の際に資格を証明する書類を提出しなければなりません。DSF理事会は、運営委員会のメンバーの資格を満たしていないと判断した候補者、または悪意を持って登録していると判断した候補者の登録に異議を唱え、拒否することができます。
  4. 候補者登録は開始後 1 週間で締め切られます。候補者登録が締め切られてから 1 週間後、DSF の書記は候補者名簿を django-developers メーリングリストと Django forum に公開し、選挙が始まります。DSF 理事会は、登録された投票者がアクセスできる投票フォームを提供し、投票の管理者となります。
  5. 投票は、候補者名簿と候補者に関する関連資料を無作為に並べた無記名投票によって行われます。各投票者は、投票用紙に記載された候補者5名まで投票することができます。
  6. 選挙は開始から 1 週間後に終了します。DSF 理事会は投票を集計し、投票総数と各候補者が獲得した票数を含む 要約を作成します。この要約は DSF 理事会の多数決で承認され、DSF の書記が django-developers メーリングリストと Django Forum に投稿します。投票の合計が最も多かった 5 人の候補者が、即座に新しい運営委員会になります。

運営委員会のメンバーは、以下によって解任することができます:

  • Django Software Foundation の行動規範委員会の措置により資格を失った場合。
  • 運営委員会のメンバーとしての資格を有していないと判断すること。この決定は、運営委員会の他のメンバーと、DSF Board が共同で行わなければなりません。資格なしという有効な決定には、運営委員会の他のメンバー全員と、DSF理事会の投票権を持つメンバー全員(影響を受ける人物は、DSF理事会メンバーの場合は投票権を持たないこと)が、問題の人物を資格なしとする動議に「賛成」票を投じることが必要です。

組織の変更

この文書の変更には、DEP 0010 に記載されている修正を加えた DEP process を適用する必要があります。

Back to Top