对Flake8起作用

有很多方法可以为 Flake8 ,我们鼓励他们:

  • 提供错误报告和功能请求

  • 贡献文件(包括本文件)

  • 检查并分类错误和合并请求

在你继续说下去之前,请允许我向你保证,我确实想 your 贡献。如果你认为你的贡献可能没有价值,我向你保证,你可以提供任何帮助 is 很有价值。

行为守则

Flake8 坚持 Python Code Quality Authority's Code of Conduct . 任何违反行为准则的行为都应向伊恩•斯台普顿•科达斯科(graffatcolmingov)报告 [at] gmail [dot] 通信)。

建立开发环境

贡献 Flake8 您只需要:

  • Python(我们支持的版本之一)

  • tox

    我们建议安装如下:

    pip install --user tox
    

    python<version> -m pip install --user tox
    
  • 你最喜欢的编辑器

归档错误

当对 Flake8 ,请填写由提供给您的问题模板 GitLab . 如果你的bug是关于 Flake8 默认情况下报告,请不要将其报告给 Flake8 除非 Flake8 是在做什么来阻止支票运行还是你有理由相信 Flake8 抑制了检查的有效性。

在打开新的错误报告之前,请搜索已关闭和打开的错误报告。

所有关于检查的错误报告都应该转到各自的项目:

  • 错误代码以开头 EW 应向 pycodestyle .

  • 错误代码以开头 F 应向 pyflakes

  • 错误代码以开头 C 应向 mccabe

请求新功能

在中请求新功能时 Flake8 ,请填写问题模板。还请注意,如果有任何现有的替代品,您的新功能,无论是通过插件,或结合命令行选项。请提供示例用例。例如,不要要求这样的功能:

为了我的工作需要。

而是问:

我需要 Flake8 因为我的团队希望这些文件 Flake8 目前没有泡沫他们。我们试着用 --filename 但我们无法创造出一个有效的模式。

你解释得越多 why 您需要一个功能,我们就越有可能了解您的需求并尽我们所能帮助您。

贡献文件

贡献 Flake8 的文档中,您可能需要先阅读一点有关RestructedText或Sphinx的信息。 Flake8 有一个 guide of best practices 为我们的文档提供帮助。在大多数情况下,您应该很好地遵循其余部分的结构和样式 Flake8 的文档。

所有的 Flake8 的文档是用RestructedText编写的,由Sphinx呈现。源(structuredText)位于 docs/source/ . 要以持续集成的方式构建文档,请运行:

tox -e docs

要在本地查看文档,还可以运行:

tox -e serve-docs

您可以在单独的终端中运行后者,并不断地重新运行文档生成和刷新正在处理的文档。

注解

我们像处理代码一样对文档进行lint处理。您还应该运行:

tox -e linters

在进行更改之后,在推动它们以确保它们通过我们的CI测试之前。

贡献代码

Flake8 发展发生在 GitLab . 代码贡献应该在那里提交。

合并请求应:

  • 解决一个问题,把它修好

    解决这个问题,但不要包括无关的重构或代码重新格式化。换言之,保持diff的简短,但必须尽可能短,以适当地修复错误并在其周围添加足够的测试。只要它包含的所有内容对于合并请求的目的都是必需的,那么长的差异就可以了。

  • 有描述性的标题和描述

    当合并请求得到很好的描述时,搜索旧的合并请求会变得更容易。

  • 具有遵循此样式的提交:

    Create a short title that is 50 characters long
    
    Ensure the title and commit message use the imperative voice. The
    commit and you are doing something. Also, please ensure that the
    body of the commit message does not exceed 72 characters.
    
    The body may have multiple paragraphs as necessary.
    
    The final line of the body references the issue appropriately.
    
  • 遵循中的指南 为Flake8编写代码

  • 避免 .gitignore 在你的个人资料里存档

    改变到 .gitignore 很少被接受。

    如果需要将文件添加到 .gitignore 你有多种选择

    • 创建全局 .gitignore 文件

    • 创建/更新 .git/info/exclude 文件。

    这两个选项都有详细说明 here

审阅和筛选问题并合并请求

当审查其他人的合并请求和问题时,请 尤其地 注意你所选的词是如何被别人读出来的。我们致力于专业的代码审查,不侮辱贡献者的智力或污辱他们的性格。代码评审应该集中在代码、代码的有效性以及它是否适合于 Flake8 .

如果您有能力编辑问题或合并请求的标签,请这样做以使搜索和优先级排序更容易。

Flake8 对问题和合并请求使用里程碑。这为其他贡献者提供有关何时传递问题或合并请求的指导。