Skip to main content

又一个 Linter 聚合器

项目描述

建造 连体工作服 编解码器 古板 问题时间

派皮 下载

YALA 结合了许多 linter 来提高代码的质量。您可能会想到其他项目,但有人拥有以下所有功能吗?

适用于最新的 linter

Yala 使用 linter 的输出,并且在其 API 更改时不会中断。

相同的默认值

对 linter 的默认配置没有更改。

易于配置

在 setup.cfg 中为任何 linter(甚至 pylint!)设置任何命令行选项。

快速地

并行运行 linter。

当前状态

目前支持的 Python 工具:

安装

使用 Python >= 3.6 测试。您可以指定多个用逗号分隔的 linter:

  • yala安装 isort、pycodestyle 和 pylint(最小安装);

  • yala[all]添加了mypypydocstylepyflakesradon

  • yala[all,flake8]还添加flake8

# Minimal: isort, pycodestyle and pylint
sudo pip3 install --upgrade yala
# OR (almost) all supported linters
sudo pip3 install --upgrade yala[all]
# OR choose your linters (+isort, pycodestyle and pylint)
sudo pip3 install --upgrade yala[mypy,radon]

如果您愿意破解 yala 的代码,请在此 README 文件夹中运行以下命令:

# Use pip
sudo pip3 install --editable .[all,dev]
# OR pipenv
pipenv sync --dev

用法

只需调用yala,然后调用要 lint 的文件和/或文件夹。

配置

除了每个 linter 的标准配置文件(如其文档中所示)外,您还可以使用 yala 在setup.cfg中指定任何命令行选项。

在setup.cfg中为linter编写命令行参数对pylint特别有用,因为它忽略setup.cfg并要求您编写额外的文件。现在,您不必这样做。

默认配置文件位于yala/setup.cfg中。您可以将其复制到项目的根文件夹并对其进行自定义。如果您需要对嵌套目录进行其他配置,只需在那里创建另一个文件。

短绒的选项

例如,要禁用特定的 pylint 警告并为氡可维护性指数输出等级 C 和更低(默认为 D 或更差),请将以下内容添加到setup.cfg

[yala]
pylint args = <s>--disable=TODO</s>
radon mi args = <s>--min C</s>

除了pylint ,您还可以为isortpycodestylepydocstyle等定义 CLI 选项(名称与命令行中的名称完全相同)。

选择短绒

默认情况下启用所有支持和安装的 linter。

您可以通过以下任一方式自定义 setup.cfg 中的linter

[yala]
linters = <s>isort, pycodestyle</s>

或者

[yala]
linters =
  isort
  pycodestyle

甚至两者兼而有之:多行中的多个 linter。

例子

运行 pydocstyle 和 pylint 而不会出现缺少文档字符串的错误(除了默认安装的 isort、pycodestyle 和 pylint):

pip install --upgrade yala[pydocstyle]
[pydocstyle]
add-ignore = <s>D1</s>

[yala]
pylint args = <s>--disable=C0114,C0115,C0116</s>

如果您将黑色isortpycodestyleflake8一起使用,请确保设置不会冲突的选项,例如:

[isort]
profile=<s>black</s>

[pycodestyle]
max-line-length = <s>88</s>

[flake8]
max-line-length = <s>88</s>

黑客:添加一个 linter

检查文件yala/linters.py并随时寻求帮助。

下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

yala-3.1.0.tar.gz (13.1 kB 查看哈希

已上传 source

内置分布

yala-3.1.0-py3-none-any.whl (12.4 kB 查看哈希

已上传 py3