核心团队中那些忙碌的小蜜蜂们肩负着许多责任,让 BeeWare 这个蜂巢继续运转。这是一个不断发展的项目,因此本页内容可能会有所变动。

这些包括但不限于回复问题、审查和合并代码、指导新的贡献者以及 BeeWare 项目的整体架构。

有一些人,我们信任他们,让他们做出代码决定;有一些人,我们信任他们,让他们做出代码和组织决定;还有一个人负责引导整个组织的愿景,并在社区无法达成共识时受托做出最终决定。

这些级别可描述如下:

蜜蜂,或工蜂:

  • 任何 BeeWare 社区成员。鉴于我们在 GitHub 上公开工作,任何人都可以对代码提出修改建议,并将其代码合并。对您贡献能力的唯一限制是您的工作需要由有权的团队成员合并。

养蜂人:

  • 被公认为可信赖的贡献者的蜜蜂。在一段时期内,这些蜜蜂在 BeeWare 项目的某一特定部分表现出了能力。这可能是技术层面上(例如 JavaScript、Python、Objective-C 专业知识;GTK+、macOS 知识),或其他层面(社区管理、代码审查)上的能力。养蜂人还可能拥有在它们的专业知识得到认可的项目的 commit 位。

高级养蜂人:

  • 高级养蜂人:拥有 GitHub 的高级访问权限,同时还承担着监督整个项目的责任。他们能够做出架构上的决策,但最终要向 BDFN 回答。

创始养蜂人:Russell Keith-Magee

  • 第一个站在山上发现需要剃毛的牦牛的人
  • 这个角色从来不回改变,一直持续到永远
  • 这个角色与 BDFN 的角色不同

“目前仁慈的独裁者”(BDFN,Be(e-)nevolent Dictator for Now):Russell Keith-Magee

  • 对于终身仁慈独裁者(Benevolent Dictator For Life)概念的改写,BDFN 有责任决定项目的方向与决策。使用“目前”而不是“终身”是对 Django 的不将核心维护者的责任放在一个人的自然生命上的主题的致敬。生活在开源外存在,代码与生活之间平衡与总体幸福感是需要记住的一件重要事情。

方针(非实际规则)

与任何拥有多人提交权的项目一样,团队应遵循一些一般准则:

  • 做项目在更广泛社区的良好代表
  • 尊重对任何 BeeWare 项目的询问和贡献
  • 假定每个人都是出于好意,即使他们用词不当。
  • 假定如果有人用“错误”的方式做了某事,那是因为我们没有沟通好过程
  • 假定任何愤怒或沮丧的表达都是发自内心想使用 BeeWare 工具或库的真实想法
  • 鼓励社区的其他成员在 BeeWare 社区内外的交流中体现这些理念
  • 任何养蜂人都不应 commit 自己的代码
    • 例外:“某处已严重损坏,需要立即修复”
    • 例外情况:BDFN(将来可能会改变)
  • 核心团队成员提交审核的所有代码都应由另一名团队成员审核
    • 例外:BDFN(将来可能会更改)
  • 所有代码在合并前都应通过持续集成(CI)测试
    • 例外:由于其他原因,已知有问题但需要提交的代码
    • 例外:在没有足够 CI 测试的仓库中的代码
    • 例外:工作并已提交总比不完美要好
  • 验收流程应尽可能自动化
    • 这意味着测试、linting、拼写检查、测试覆盖率等等

成为养蜂人

新的养蜂人是否加入团队完全由现有的核心团队决定。虽然目前还没有这方面的明确规则,但一般来说,如果某人对 BeeWare 项目做出了坚实的贡献,则会被邀请成为项目的养蜂人。这也可以扩展到具有特定可能现有团队所缺乏的领域知识(例如,iOS/macOS)的人。这也不一定要基于 commits。任何能证明对整个项目有既得利益的人都可以要求获得向项目 commit 的许可。

All new apiarists will be 'inducted' (for lack of a better word) in the core values and guidelines of the project. A summary of the core values can be found on the about page. Anyone who joins the team will be expected to uphold those values, and contribute to discussions about evolving those values over time.

任何养蜂人,不管是新手还是老手,都没有期望作为任何一个项目的唯一维护者。有很多养蜂人,还有更多的人可以提供帮助、建议和指导。