贡献者快速入门指南#

从 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 仓库创建 codespace 时,默认的 2 核机器类型即可工作;4 核机器构建和运行会稍快一些(当然,代价是免费使用时间减半)。一旦您的 codespace 启动,您可以运行 conda activate scipy-dev,您的开发环境就完全设置好了——然后您可以按照 SciPy 文档的相关部分进行构建、测试、开发、编写文档并为 SciPy 做出贡献。

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