Django 项目的组织¶
原则¶
Django 项目由一组志愿者管理,追求三个目标:
推动 Django Web 框架的开发,
促进与 Django 相关的软件生态系统,
根据 Django 行为准则 中描述的价值观,领导 Django 社区。
Django 项目并不是一个法律实体。非营利性组织 Django Software Foundation 负责处理与 Django 项目相关的财务和法律事务。除此之外,Django Software Foundation 让 Django 项目管理 Django 框架的开发、生态系统和社区。
合并者¶
角色¶
Mergers 是一小组人,他们将拉取请求合并到 Django Git 仓库 中。
权利¶
合并者拥有以下 prerogatives:
成员资格¶
管理委员会 会根据需要选择 Mergers,以保持其数量至少为三人,以分散工作负荷,避免过度负担或使个别合并者超负荷工作。合并者的数量没有上限。
合并者不必是 Django Fellow 的要求,但 Django 软件基金会有权将 Fellow 职位的资金用作确保合并者角色的可持续性的方式。
合并者角色受到以下限制:
一个人不能同时担任管理委员会的成员。如果一个合并者被选为管理委员会成员,他们在加入管理委员会后立即停止成为合并者。
一个人可以同时担任发布者和合并者的角色。
当出现空缺或管理委员会认为有必要选择额外的人员担任此角色时,选择流程如下:
任何在适当的讨论场合中保持良好地位的成员,或者在 DSF 的 Fellowship 委员会提供意见的情况下,Django 软件基金会董事会都可以提议考虑某个人。
管理委员会考虑提出的建议,然后管理委员会的任何成员正式提名一个候选人担任该角色。
管理委员会对提名者进行投票。
合并者可以随时辞去他们的角色,但应该尽力提前通知,以便选择替代者。Django 软件基金会终止 Django Fellow 的合同会暂时暂停该人的合并者角色,直到管理委员会能够对他们的提名进行投票为止。
否则,合并者可以被移除:
因被选为管理委员会成员而被取消资格。
因 Django 软件基金会的行为守则委员会采取的行动而被取消资格。
管理委员会的投票。
发布者¶
角色¶
Releasers 是一小组具有权力上传 Django 打包发布到 Python Package Index 和 djangoproject.com 网站的人员。
权利¶
Releasers构建 Django 发布版 并上传到 Python Package Index 和 djangoproject.com 网站。
成员资格¶
管理委员会 会根据需要选择发布者,以保持其数量至少为三人,以分散工作负荷,避免过度负担或使个别发布者超负荷工作。发布者的数量没有上限。
发布者不必是 Django Fellow 的要求,但 Django 软件基金会有权将 Fellow 职位的资金用作确保发布者角色的可持续性的方式。
一个人可以同时担任发布者和合并者的角色。
当出现空缺或管理委员会认为有必要选择额外的人员担任此角色时,选择流程如下:
任何在适当的讨论场合中保持良好地位的成员,或者在 DSF 的 Fellowship 委员会提供意见的情况下,Django 软件基金会董事会都可以提议考虑某个人。
管理委员会考虑提出的建议,然后管理委员会的任何成员正式提名一个候选人担任该角色。
管理委员会对提名者进行投票。
发布者可以随时辞去他们的角色,但应该尽力提前通知,以便选择替代者。Django 软件基金会终止 Django Fellow 的合同会暂时暂停该人的发布者角色,直到管理委员会能够对他们的提名进行投票为止。
否则,发布者可以被移除:
因 Django 软件基金会的行为守则委员会采取的行动而被取消资格。
管理委员会的投票。
管理委员会¶
角色¶
管理委员会是一组经验丰富的贡献者,他们:
提供 Django 的开发和发布流程监督,
协助设定功能开发和发布方向,
选择合并者和发布者,并且
在其他决策过程失败时具有决定性的投票权。
他们的主要关注点是维护 Django Web 框架的质量和稳定性。
权利¶
管理委员会拥有以下 prerogatives:
对于任何关于 Django 技术更改的问题做出具有约束力的决定。
否决将任何特定代码合并到 Django 中或命令撤销任何特定合并或提交。
宣布关于 Django 未来技术方向的提案和想法的征集。
选择和移除合并者和发布者。
在被视为适当时参与撤销管理委员会成员。
在管理委员会认为适当的时候,在不自动触发的情况下召集管理委员会选举。
参与修改 Django 的治理方式(参见 改变组织)。
拒绝对管理委员会认为不适合做出具有约束力决定的问题进行投票,或者管理委员会认为超出其权力范围的问题。
负责管理 Django 开源项目内的其他技术团队的治理,并相应地管理这些团队。
成员资格¶
管理委员会 是一个由五位经验丰富的贡献者组成的选举团队,他们展示:
对 Django 或 Django 生态系统做出实质性贡献的历史。此历史必须至少在个人成为指导委员会候选人前 18 个月开始,并且包括以下至少两个要点中的实质性贡献:
对 Django 项目或 Django 生态系统中的主要第三方包的代码贡献
审查拉取请求和/或分类 Django 项目工单
文档、教程或博客文章
Discussions about Django on the Django Forum
组织 Django 相关活动或用户组
对 Django 的方向和未来的参与历史。这不需要是最近的,但在过去三年内没有参与的候选人仍必须展示对这三年内 Django 的变化和方向的理解。
每个 Django 的发布周期后都会选举一个新的管理委员会。选举过程如下:
The steering council directs one of its members to notify the Secretary of the Django Software Foundation, in writing, of the triggering of the election, and the condition which triggered it. The Secretary post to the appropriate venue -- the Django Forum to announce the election and its timeline.
一旦选举被宣布,DSF 董事会 开始选民登记期。所有 DSF 的个人会员 都会自动注册,无需明确注册。所有其他认为自己有资格投票但尚未注册投票的人可以向 DSF 董事会申请投票权。投票者注册表格和投票人名册由 DSF 董事会维护。DSF 董事会可以对那些它认为以不诚实的方式注册或者认为虚构了自己的资格或者以其他方式不具备资格的选民的注册提出质疑并拒绝注册。
选民登记在选举宣布一周后关闭。此时开始候选人的注册。任何有资格的人都可以注册为候选人。候选人注册表格和候选人名册由 DSF 董事会维护,候选人必须在注册时提供资格证明。DSF 董事会可以对那些它认为不符合管理委员会成员资格的候选人的注册提出质疑并拒绝注册,或者认为他们是以不诚实的方式注册的。
Registration of candidates close one week after it has opened. One week after registration of candidates closes, the Secretary of the DSF publishes the roster of candidates to the Django Forum, and the election begins. The DSF Board provides a voting form accessible to registered voters, and is the custodian of the votes.
投票采用包含候选人名册和有关候选人的任何相关材料的秘密投票方式,名单顺序是随机的。每个选民可以在选票上投最多五个候选人。
The election conclude one week after it begins. The DSF Board then tally the votes and produce a summary, including the total number of votes cast and the number received by each candidate. This summary is ratified by a majority vote of the DSF Board, then posted by the Secretary of the DSF to the Django Forum. The five candidates with the highest vote totals immediately become the new steering council.
管理委员会成员可以被撤职:
因 Django 软件基金会的行为守则委员会采取的行动而被取消资格。
确定他们没有管理委员会成员的资格。这一决定必须由管理委员会的其他成员和 DSF 董事会 共同做出。有效的不合格裁定要求管理委员会的所有其他成员和 DSF 董事会的所有可以投票的成员(如果受影响的人是 DSF 董事会成员,则不能投票)在是否认为该人不合格的动议上投票 "是"。