贡献者快速入门指南#

从 GitHub 获取源代码之后,开始贡献有三个步骤

  1. 设置开发环境

    使用mamba,或者任何其他形式的虚拟环境管理工具,你可以确保开发版本的 SciPy 不会干扰你机器上任何其他的 SciPy 本地安装。

  2. 构建 SciPy

    SciPy 为了速度使用编译代码,这意味着你可能需要额外的依赖项来完成此步骤,具体取决于你的系统 - 请参阅从源代码构建

  3. 执行开发任务

    这些可以包括你想要对源代码进行的任何更改,运行测试,构建文档,运行基准测试等。

基本工作流程#

注意

我们**强烈**建议使用用户激活的环境设置,例如 conda 或虚拟环境。

由于 SciPy 包含用 C,C++ 和 Fortran 编写的部分,需要在使用前进行编译,请确保你已安装必要的编译器和 Python 开发头文件。 如果你正在使用mamba,这些将自动安装。 如果你正在使用pip,请检查你可能需要的系统级依赖项

首先,在 GitHub 上将主 SciPy 存储库的分支复制到你自己的帐户中,然后通过以下方式创建本地存储库

git clone git@github.com:YOURUSERNAME/scipy.git scipy
cd scipy
git submodule update --init
git remote add upstream https://github.com/scipy/scipy.git

接下来,设置你的开发环境。 **安装好**系统级依赖项**后**,请执行从源代码构建中的说明。

有关如何测试更改的详细信息,请参阅开发工作流程中更完整的设置演练。

其他工作流程#

设置开发环境有很多可能的方法。 有关更详细的说明,请参阅SciPy 贡献者指南

注意

如果你在从源代码构建 SciPy 或设置本地开发环境时遇到问题,你可以尝试使用 GitHub Codespaces 构建 SciPy。 它允许你在浏览器中创建正确的开发环境,从而减少安装本地开发环境和处理不兼容依赖项的需要。

如果你具有良好的互联网连接并且想要临时设置,那么在 Codespaces 环境中处理 SciPy 通常会更快。 有关如何开始使用 Codespaces 的文档,请参阅Codespaces 文档。 当为scipy/scipy存储库创建代码空间时,默认的 2 核机器类型即可工作; 4 核将更快地构建和工作(但当然代价是使你的免费使用时间减半)。 代码空间启动后,你可以运行conda activate scipy-dev,你的开发环境就完全设置好了 - 然后你可以按照 SciPy 文档的相关部分构建,测试,开发,编写文档并为 SciPy 做出贡献。

另一种选择是使用 Gitpod。 我们不再维护此解决方案,但可以在我们之前版本的文档中找到一些信息。