开发者页面

本页面解释了您如何通过提交补丁、统计测试、新模型或示例来为statsmodels的开发做出贡献。

statsmodels 是在 Github 上使用 Git 版本控制系统开发的。

提交错误报告

  • 包含一个简短的、自包含的代码片段,重现问题

  • 指定使用的 statsmodels 版本。你可以通过 sm.version.full_version 来实现

  • 如果问题看起来涉及其他依赖项,还需包括 sm.show_versions() 的输出

对代码进行更改

首先,查看使用 statsmodels 代码部分,了解 git 版本控制系统的介绍。

为了使拉取请求被接受,您必须满足以下要求。这大大有助于维护和发布软件的共同工作。

  • 一个分支。一个功能。 分支成本低廉,GitHub使得通过几次点击就能轻松合并和删除分支。尽量避免在开发一个功能时,将一堆不相关的更改混在一起,如果可能的话。这有助于我们在准备发布时跟踪哪些内容发生了变化。

  • 提交信息应清晰简洁。这意味着主题行不超过80个字符,如有必要,空行后跟随提交信息正文。我们有一个 非正式的提交格式标准 我们尽量遵守。您可以通过 git log --oneline -n 10查看实际效果。如果您的提交引用了或关闭了特定问题,您可以在 提交信息中提及它来关闭问题。 (对于维护者:这些建议也适用于合并提交评论。这些部分是发布说明的记录。)

  • 代码提交必须始终包含测试。请参阅我们的测试说明。

  • 每个函数、类、方法和属性都需要使用文档字符串进行文档化。我们遵循numpy 文档字符串标准

  • 如果你正在添加新功能,你需要通过编辑(或创建)docs/source 目录中的相应文件来将其添加到文档中。

  • 确保您的文档更改能够正确解析。进入顶层 docs/ 目录并输入:

    make clean
    make html
    

    检查构建输出是否由于您的更改而没有任何警告。

    生成文档需要额外的依赖项,详情请参见docs/README.md

  • 尽可能遵循 PEP8 风格指南。 通过运行 LINT=true ./lint.sh 来检查代码。

  • 通过运行 git diff upstream/main 将您的更改与主分支中的内容进行比较。

  • 最后,请将您的更改添加到发布说明中。打开包含下一个发布版本号的 docs/source/release/versionX.X.rst 文件,并将您的更改添加到适当的章节中。

如何提交一个拉取请求

所以你想向 statsmodels 提交一个补丁,但不太熟悉 github?以下是你需要采取的步骤。

  1. Fork 在 Github 上的 statsmodels 仓库

  2. 创建一个新的功能分支。 每个分支必须自包含,具有单一的新功能或错误修复。

  3. 确保测试套件通过。这包括在Python 3上进行测试。最简单的方法是创建一个拉取请求,让机器人为你检查。这可能会很慢,如果你对修复或增强不确定,最好在本地运行pytest。

  4. 提交一个拉取请求

拉取请求在合并到代码库之前会经过彻底的审查。 如果你的拉取请求变得过时,请在中央仓库的最新版本上重新建立你的拉取请求。

邮件列表

关于开发的讨论在 statsmodels 邮件列表上进行。

许可证

statsmodels 是在 修改版(3条款)BSD许可证 下发布的。

目录


Last update: Oct 16, 2024