如何成为CPAN贡献者

要成为CPAN贡献者,您不需要编写新的CPAN分发版,您只需要提交对现有分发版的更改,并得到作者的接受。

如果您从未亲自编辑过Perl模块,您可能首先会想:“我是否了解足够的内容来为别人的代码做出贡献?”根据我的经验,您不需要成为专家就可以成为贡献者。对于初学者来说,有很多适合他们的Perl程序员的机会。

举个例子?

在回答这个问题之前,我想向您指出可以寻找贡献的地方。最简单的方法是关注metacpan 最近上传的分发版页面。我推荐初学者这样做,因为新的分发版通常提供了许多贡献的机会。

当您浏览最近上传的分发版时,请检查每个分发版页面的Kwalitee链接,并查看是否有列出任何问题。Kwalitee问题通常是微不足道的,任何初学者都可以帮助解决。

以下是贡献者可以帮助解决的常见问题的例子

  • 代码缺少strict/warnings祈求
  • 分发版缺少META文件
  • Pod语法错误
  • Makefile.PL/Build.PL缺少构建先决条件
  • 缺少许可元数据
  • MANIFEST不完整/列表文件不在分发版中
  • 构建脚本不可执行

如果您很幸运,那么您可能会发现分发版源代码托管在GitHub上。对于您的第一次贡献,我建议您专注于托管在GitHub上的分发版,因为您可能已经有了GitHub账户。要检查分发版是否在GitHub上,请查看分发版metacpan页面的“克隆存储库”链接(示例)。

首先做好准备

到这一点,您应该已经找到了一个有Kwalitee问题并且托管在GitHub上的分发版。在GitHub上分叉存储库,以便您在自己的存储库中有一个分发版源代码的副本。下一步是在本地机器上克隆分叉的存储库。

为您的建议更改创建一个新的分支。给分支起一个有意义的名字,描述您打算进行的贡献的性质(例如,“kwalitee修复”)。在您进行任何更改之前,尝试构建和安装模块,以确保代码可以编译并且测试通过。让我们假设这个分发版是干净的,所有测试都通过,来跟随快乐的路径。

现在采取行动

现在是时候了,您即将进入别人的领域。所以请格外小心警惕。确保您只更改您打算更改的部分。注意您的文本编辑器是否将制表符替换为空格,或者从文件中删除EOF换行符。如果您正在更改代码,请遵循作者的编码风格,以便您的更改与他们的做事方式相匹配。这将使您的贡献更有可能被他们接受。

一旦您做出了必要的更改,提交并推送更改到您的存储库。现在转到您的分叉存储库的GitHub网页,并创建一个拉取请求。再次检查您的提交,确保没有意外包含其他更改。提交拉取请求,描述您的更改以及它们带来的改进。

希望作者能合并你的拉取请求,恭喜你现在是贡献者了!你帮助开源变得更好,应该感到自豪。但如果几天内没有收到回复,不要感到沮丧。你可能几分钟内就会收到回复,但也可能需要几个月。一位作者在一年后才对我的拉取请求做出了回应。在此期间,当你等待回复时,还有很多新的发行版需要你的帮助!

需要帮助?

如果你需要帮助,请随时给我发邮件,如果有必要,我们可以远程配对编程来帮助你开始。我还会在格拉斯哥的Perl会议上讨论这个话题,所以请过来打个招呼。

祝你好运,并祝愿你在CPAN贡献中一切顺利!

标签

Mohammad Sajid Anwar

Mohammad是一位2022年白骆驼奖获得者,也是CPAN 贡献者。他喜欢提交拉取请求并在Perl会议上发言。他运行每周挑战。他还是Perl Weekly通讯的联合编辑。更多关于他的信息可以在他的网站上找到。

浏览他们的文章

反馈

这篇文章有什么问题吗?请在GitHub上创建一个问题或拉取请求来帮助我们。