为flake8提供更强大的配置。
项目描述
flake8-ruler
CLI工具,用于从更优雅、现代、更强大的flake8 (setup.cfg
) 配置文件生成flakehell(与100%兼容)的配置文件(pyproject.toml)。
功能
- TOML:类型安全的、语法高亮的、标准化良好的配置格式。
- 强大的插件代码配置。
- 全局模式。
- 扩展和合并多个配置,共享配置。
- 远程配置。
- 预定义的针对错误、安全、风格指南的配置。
入门
安装
python3 -m pip install flake8-ruler
创建pyproject.toml
# you can add in this section any options supported by flake8
[tool.flake8_ruler]
max_line_length = 90
[tool.flake8_ruler.plugins]
# include everything in pyflakes except F401
pyflakes = ["+*", "-F401"]
# enable only codes from S100 to S199
flake8-bandit = ["-*", "+S1??"]
# enable everything that starts from `flake8-`
"flake8-*" = ["+*"]
# explicitly disable a plugin
flake8-docstrings = ["-*"]
将pyproject.toml
转换为setup.cfg
python3 -m flake8_ruler
完成!现在,您只需运行flake8
,它将自动使用新生成的配置。
插件
在pyproject.toml
中,您可以指定[tool.flake8_ruler.plugins]
表。它是flake8插件及其相关规则的键值对。
键可以是确切的插件名称或通配符模板。例如"flake8-commas"
或"flake8-*"
。如果可能,工具将为每个插件选择最长匹配。在前面的示例中,flake8-commas
将匹配第一个模式,flake8-bandit
和flake8-bugbear
将匹配第二个模式,而pycodestyle
将不会匹配任何模式。
值是一个用于此插件的错误代码模板列表。每个模板中的第一个符号必须是+
(包含)或-
(排除)。匹配的最新模式获胜。例如,["+*", "-F*", "-E30?", "-E401"]
表示“包含所有内容,除了所有以F
开头的检查,检查从E301
到E310
以及E401
”。
代码
只有当以下条件匹配时,错误代码才会添加到生成的setup.cfg
- 插件安装在与flake8-ruler相同的环境中。
- 代码由flake8-codes检测。如果没有,请贡献。
- 代码在
[tool.flake8_ruler.plugins]
中启用。
使用flake8-codes查找插件支持的错误代码
python3 -m pip install flake8-codes
python3 -m flake8_codes
继承
选项base
允许指定要继承此配置的基本配置。它可以是本地配置的路径或远程URL。您可以指定一个路径或路径列表。例如
base = [
"https://raw.githubusercontent.com/orsinium-labs/flake8-ruler/master/pyproject.toml",
".flake8-ruler.toml",
]
max_line_length = 90
在这个例子中,flake8-ruler将读取远程配置、本地配置(.flake8-ruler.toml
)以及当前配置。因此,即使基本配置中指定了max_line_length
,它也将被当前配置中的max_line_length = 90
覆盖。
您可以在./configs/目录中找到一些预定义的配置。
资源
- ./configs/ - 为flake8-ruler准备好的基本配置。
- flake8 文档.
- flake8-codes - 用于提取已安装插件及其错误代码的库。
- awesome-flake8-extensions - flake8插件的列表。
- wemake-python-styleguide - 最大的flake8插件。
项目详情
下载文件
为您的平台下载文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分发
构建分发
flake8_ruler-0.1.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e3cd0698ffc16eb61a4bef5c3c96277032170ce71d67368297c23ff1b0b80728 |
|
MD5 | 4c76883395b187f4df39591b25bc5212 |
|
BLAKE2b-256 | 2cb4052ef23e560df60f45a917de01e69c4c3ee2aed7728e9f8885c2022c6679 |
flake8_ruler-0.1.0-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | dcff2ed873dcb5a35c661c2fb1068ceca0ef75b7d5b5d3cf4073db2ad6c43263 |
|
MD5 | ae33a3613d5128e528378019710d24b1 |
|
BLAKE2b-256 | 6d950ce49a81f9363025c2f03827304f03c5605d506af49eca9c56a0e9bee866 |