SciPy 贡献者指南#
本指南旨在帮助您在查阅了 贡献方式 或 贡献者快速入门指南 中的入门资料后,快速找到关于 SciPy 开发所需的信息。
你也可以观看 SciPy 开发工作流程,这是一个修复错误并提交拉取请求的五分钟视频示例(注意:此视频来自2018年,因此构建步骤现已不同 - 但整体工作流程仍然相同)。
从源码构建 - 如何设置开发环境,包括安装编译器和SciPy依赖项,在GitHub上克隆SciPy仓库并更新git子模块,以及使用``dev.py``接口进行构建和运行测试。
编辑 SciPy - 如何编辑 SciPy Python 代码,包括找到包含要编辑的 SciPy 功能的模块的技巧,向 SciPy 添加新模块,以及遵守 PEP8 风格标准。
单元测试 - 如何使用 pytest 框架为 SciPy 编写和运行单元测试
文档 - 如何编写符合docstring标准的reStructuredText文档,使用Sphinx在本地构建文档,以及查看在持续集成检查期间构建的文档
基准测试 - 如何使用airspeed velocity对代码进行基准测试
编译代码 - 如何将快速编译的代码添加到SciPy
持续集成 - 我们的持续集成系统如何工作以及如何调试您的PR
编辑 SciPy#
开发工作流程 概述了在开发环境设置完成后需要做的事情
PEP8 和 SciPy 提供了一些确保你的代码符合PEP8标准的建议
开发中的Git 是使用
git
的指南,git
是一个分布式版本控制系统,用于管理来自世界各地对 SciPy 代码所做的更改。SciPy API 包含了一些关于 SciPy 代码组织方式的重要说明,并记录了 SciPy API 的结构;如果你打算导入其他 SciPy 代码,请先阅读此内容。
审核拉取请求 解释了如何在本地审查另一位作者的 SciPy 代码
分类 解释了如何管理和处理问题和PR,以及GitHub团队权限在SciPy中的工作方式。
添加新内容 包含了如何添加新方法、函数和类的信息
代码和文档风格指南 - 缺失的部分 - 代码和文档风格指南
测试#
Testing guidelines 是编写 NumPy 或 SciPy 代码单元测试的权威指南(NumPy 文档的一部分)
在本地运行 SciPy 测试 文档了
dev.py test
,这是在本地构建 SciPy 并运行测试的命令。调试线性代数问题
文档#
Documentation style 包含了关于编写文档字符串所需的所有信息,这些文档字符串通过使用 Sphinx 生成HTML文档(NumPy文档的一部分)。
为 SciPy 文档做贡献 包含了如何为 SciPy 文档贡献信息。
渲染文档 在合并PR之前检查文档更改的渲染效果非常重要;本文档解释了如何做到这一点
基准测试#
使用asv进行基准测试 解释了如何使用 airspeed velocity 向SciPy添加基准测试
编译代码#
添加-cython 使用 Cython 扩展和编译 Python 代码可以显著提高其性能;本文档帮助您入门
其他语言 讨论了在 SciPy 中使用 C、C++ 和 Fortran 代码的情况
公开的Cython API 关于公开Cython API的指南