开发者页面¶
本页解释如何通过提交补丁、统计测试、新模型或示例来为 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?以下是您需要采取的步骤。
- Fork statsmodels 存储库 在 Github 上。 
- 创建新的功能分支。每个分支都必须是独立的,包含单个新功能或错误修复。 
- 确保测试套件通过。这包括在 Python 3 上进行测试。最简单的方法是创建拉取请求并让机器人为您检查。这可能很慢,如果您不确定修复程序或增强功能,最好在本地运行 pytest。 
拉取请求在被接受到代码库之前会经过彻底审查。如果您的拉取请求过时,请将您的拉取请求重新设置到中央存储库中的最新版本。
邮件列表¶
关于开发的对话发生在 statsmodels 邮件列表 上。
许可证¶
statsmodels 根据 修改后的 (3 条款) BSD 许可证 发布。