接下来该去哪里-为Biopython做出贡献
错误报告+功能请求
获取有关Biopython模块的反馈对我们来说非常重要。像这样的开源项目从反馈、错误报告(和补丁!)中受益匪浅来自各种贡献者。
讨论功能请求和潜在错误的主要论坛是 Biopython mailing list 并在GitHub上发出或拉取请求。
此外,如果您认为发现了新错误,可以将其提交到我们的问题跟踪器https://github.com/biopython/biopython/issues(这取代了旧的开放生物信息学基金会托管的RedMine跟踪器)。这样,它就不会被埋葬在任何人的收件箱中并被遗忘。
邮寄名单并帮助新人
我们鼓励所有用户注册主要Biopython邮件列表。一旦您掌握了Biopython的某个领域,我们鼓励您帮助回答初学者的问题。毕竟,你曾经是初学者。
贡献文档
我们很乐意通过错误报告或邮件列表接受反馈或贡献。在阅读本教程时,您可能注意到一些您感兴趣的主题缺失或没有明确解释。还有Biopython的内置文档(文档字符串,这些也是 online ),您也许可以帮助填写任何空白。
贡献食谱示例
正如第章所解释的那样 食谱-很酷的事情与它有关 ,Biopython现在有一个用户贡献的“食谱”示例的维基收集,http://biopython.org/wiki/Category:Cookbook-也许您可以添加到其中?
维护平台的分发
我们目前通过https://github.com/biopython/biopython-wheels提供源代码档案(适合任何操作系统,如果您安装了正确的构建工具)和预编译轮,以涵盖主要操作系统。
大多数主要的Linux发行版都有志愿者来获取这些源代码版本,并将它们编译成包,供Linux用户轻松安装(照顾依赖项等)。这真的很棒,我们当然非常感激。如果您想为这项工作做出贡献,请了解有关您的Linux发行版如何处理此问题的更多信息。由于conda-forge团队,通过https://github.com/conda-forge/biopython-feedstock对conda包裹也有类似的流程。
以下是某些平台的一些技巧,可以让人们开始提供帮助:
- Windows
– You must first make sure you have a C compiler on your Windows computer, and that you can compile and install things (this is the hard bit - see the Biopython installation instructions for info on how to do this).
- RPMs
– RPMs are pretty popular package systems on some Linux platforms. There is lots of documentation on RPMs available at http://www.rpm.org to help you get started with them. To create an RPM for your platform is really easy. You just need to be able to build the package from source (having a C compiler that works is thus essential) – see the Biopython installation instructions for more info on this.
要创建RPM,您只需执行以下操作:
$ python setup.py bdist_rpm
这将为您的特定平台创建一个RP,并在目录中创建一个源RP
dist
.这个RPM应该是好的,准备去,所以这是所有你需要做的!又好又简单。- Macintosh
– Since Apple moved to Mac OS X, things have become much easier on the Mac. We generally treat it as just another Unix variant, and installing Biopython from source is just as easy as on Linux. The easiest way to get all the GCC compilers etc installed is to install Apple’s X-Code. We might be able to provide click and run installers for Mac OS X, but to date there hasn’t been any demand.
获得包后,请在您的系统上测试它,以确保它以良好的方式安装所有内容并且似乎可以正常工作。一旦您对此感觉良好,请在GitHub上提出拉取请求并写信至我们的 Biopython mailing list .你做到了。谢谢!
贡献单元测试
即使您没有任何新功能可添加到Biopython,但您想编写一些代码,也请考虑扩展我们的单元测试覆盖范围。我们已经投入了所有章节 Biopython测试框架 到这个话题。
贡献代码
除了有兴趣在Python中创建生物相关代码之外,加入Biopython代码开发没有任何障碍。表达兴趣的最佳地点是Biopython邮件列表-只需让我们知道您对编码感兴趣以及您想从事什么样的工作即可。通常,我们会在编码模块之前尝试对模块进行一些讨论,因为这有助于产生好的想法-然后就可以立即开始编码了!
Biopython的主要版本试图相当统一和互操作,以使用户更容易使用。您可以在http://biopython.org/wiki/Contributing的贡献文档中阅读我们尝试在Biopython中使用的一些(相当非正式的)编码风格指南。我们还尝试将代码和测试一起添加到发行版中(请参阅第章 Biopython测试框架 有关回归测试框架的更多信息)和文档,以便一切都可以尽可能地保持可操作和良好的文档(包括文档字符串)。当然,这是最理想的情况,在许多情况下,您都可以找到列表上的其他人,他们愿意在您的代码可用后帮助添加文档或进行更多测试。因此,要像上一段一样结束这一段,请随时开始工作!
请注意,要做出代码贡献,您必须拥有贡献代码并根据Biopython许可证对其进行许可的合法权利。如果这一切都是您自己写的,并且不是基于任何其他代码,那么这应该不是问题。然而,如果您想贡献衍生作品,就会出现问题-例如,基于IPL或LPGL许可代码的内容将与我们的许可不兼容。如果您对此有任何疑问,请在邮件列表或GitHub上讨论该问题。
对Biopython进行任何添加的另一个问题是任何构建时或运行时依赖性。一般来说,编写代码以与独立工具(例如AMPS、CLASS或CustalW)交互并不会带来大问题。然而,对另一个库的任何依赖--甚至是Python库(尤其是像NumPy这样编译和安装Biopython所需的库)都需要进一步讨论。
此外,如果您有您认为不适合该发行版但希望提供的代码,我们会维护Script Central(http://biopython.org/wiki/Writtcentral),其中包含指向Python中免费可用代码的指针用于生物信息学。
希望这篇文档能让你对Biopython有足够的兴趣来尝试它(最重要的是,贡献!)。感谢您一路阅读!