PyPDF2 项目治理

2023-03-30 16:11 更新

本文档描述了如何管理 PyPDF2 项目。它描述了不同的参与者、他们的角色以及他们的责任。

术语

  • 项目是 PyPDF2——一个免费开源的纯 Python PDF 库,能够拆分、合并、裁剪和转换 PDF 文件的页面。它包括GitHub 上的代码、问题和讨论,以及ReadTheDocs 上的文档、 PyPI 上的包和 GitHub 上的网站

  • 维护者是拥有更改项目的一个或多个部分的技术许可的人这是一个被驱动来保持项目运行和改进的人。

  • 贡献者是为项目做出贡献的人。这可以通过编写代码来实现——最好的情况是通过分叉和创建拉取请求,但这取决于维护者。其他贡献者描述问题,帮助就现有问题提出问题,使它们更容易回答,参与讨论,并帮助改进文档。贡献者类似于维护者,但没有技术许可。

  • 用户是将 PyPDF2 导入到他们的代码中的人所有 PyPDF2 用户都是开发人员,但不是了解 PyPDF2 内部结构的开发人员。他们只使用 PyPDF2 的公共接口。他们可能比贡献者对 PDF 的了解更少。

  • 社区就是这一切——用户、贡献者和维护者。

治理、领导和指导 PyPDF2 向前发展

PyPDF2 是一个免费的开源项目,拥有超过 100 名贡献者和可能(方式)超过 1000 名用户。

由于 PyPDF2 与任何公司没有任何正式关系,也没有任何资助,因此社区所做的所有工作都是自愿贡献的。人们没有得到报酬,而是选择利用空闲时间来创建软件,让更多人从中获利。这必须得到尊重和尊重。

尽管有如此庞大的社区,该项目从 2016 年到 2022 年一直处于休眠状态。仍有问题被提出,问题被报告,并且请求请求被创建。但是维护者没有时间推动 PyPDF2 向前发展。在那段时间里,没有其他人站出来成为新的维护者。

出于这个原因,PyPDF2 具有Benevolent Dictator 治理模型。仁慈的独裁者是拥有所有技术权限的维护者——最重要的是在 PyPI 上推送新 PyPDF2 版本的权限。

作为仁慈的,仁慈的独裁者倾听社区的决定,并尽最大努力做出使整个社区受益的决定——当前的和潜在的未来。作为一个独裁者,仁慈的独裁者总是有权力和权利自己做出决定——也可以针对社区的某些成员。

由于 PyPDF2 是免费软件,部分社区可以拆分(分叉代码)并创建一个新社区。这应该会限制一个坏仁慈的独裁者可能造成的伤害。

项目语言

项目语言为(美式)英语。所有文档和问题都必须用英文书写,以确保社区能够理解。

我们理解社区中大部分人的母语不是英语。我们尽力理解他人 - 自动翻译器可能会有所帮助。

期望

社区可以期待以下内容:

  • 仁慈的独裁者尽最大努力做出使整个社区受益的决定。仁慈的独裁者知道他/她的决定可以影响整个社区。一旦仁慈的独裁者注意到她/他没有时间推进 PyPDF2,他/她就会寻找新的仁慈的独裁者。由于预计仁慈的独裁者将在他们选择的某个时间点(希望在他们死前)下台,因此它不是终身仁慈的独裁者(BDFL)。

  • 每个维护者(包括仁慈的独裁者)都知道他们的权限和他们可能造成的伤害。他们重视安全并确保项目不受损害。如果他们不再需要他们,他们会退还他们的技术许可。任何长期贡献者都可以成为维护者。维护者可以——而且应该!- 当他们意识到他们不能再承诺那个时间时,就辞去他们的角色。他们的贡献将载入 PyPDF2 的历史

  • 每个贡献者都知道维护者和仁慈的独裁者的时间是有限的。简短描述已解决问题并进行单元测试的简短拉取请求更有可能很快被合并——仅仅是因为维护者更容易看到贡献不会损害整个项目。他们的贡献记录在 git 历史和公共问题中。让我们知道 您是否会喜欢其他东西!

  • 每个社区成员都使用尊重的语言。我们都是人,我们会对我们关心的事情和我们生活中发生的互联网上可见的事情感到不安。PyPDF2 不支付其贡献者 - 当您与他人互动时请记住所有这些。我们在这里是因为我们想帮助别人。

问题和讨论

一个问题是任何旨在推动 PyPDF2 发展的技术描述:

  • 错误票:因为 PyPDF2 开发人员犯了一个错误,所以出了点问题。

  • 功能请求:PyPDF2 不支持 PDF 规范的所有功能。当然还有一些方便的方法可以帮助用户很多。

  • 稳健性要求:周围有许多损坏的 PDF。在某些情况下,我们可以处理。它是错误通知单和功能请求之间的一种混合体。

  • 性能票:PyPDF2 可能会更快 - 让我们知道您的具体情况。

那些对讨论没有帮助的技术描述中的任何评论都可以删除。对于错误的“我也是”评论或对所需功能的“凹凸”评论尤其如此。人们可以用 👍 / 👎 反应来表达这一点。

讨论是开放的。那里不会删除任何评论 - 除非它们是明显无关的垃圾邮件或只是试图侮辱别人(幸运的是,到目前为止社区非常尊重 🤞)

发布

维护者遵循语义版本控制。最重要的是,这意味着重大更改将有一个主要版本。

请注意,仍然可能会发生无意的破坏性更改。PyPDF2 维护者会尽最大努力及时修复该问题 - 请 报告此类问题

人们

  • 马丁托马自 2022 年 4 月起成为仁慈的独裁者。

  • 维护者:

    • Matthew Stamy (mstamy2) 长期以来一直是仁慈的独裁者。他仍然偶尔会在 GitHub 上转转,并且拥有 PyPI 和 GitHub 的权限。

    • Matthew Peveler (MasterOdin) 是 GitHub 上的维护者。


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号