轻松运行多个python linter
multilint的Python项目详细描述
多行
轻松运行多个python linter。
安装和使用
使用pip安装:
pip install multilint
使用:
multilint
支持Python3.5-3.7。
工作原理
我喜欢用一套标准的绒布来保持我的项目整洁。管理他们 结果发现,使用包装器脚本更容易,最后我发现 在它们之间复制粘贴。这个项目使我不再需要复制/粘贴, 集中运行所有这些整洁的工具。
按顺序,它将检查这些绒布是否已安装,如果已安装,请运行它们:
如果其中任何一个都失败了,就停止使用非零退出代码。 否则就成功了!您需要配置将被linted的路径(默认情况下,仅限于 setup.py已起毛)。在setup.cfg中放置一个类似于:
[tool:multilint]paths=my_package tests setup.py
还可以将路径作为参数传递给multilint,后者将重写 settings,例如:
multilint path/my_file.py path/folder1
注意:以前multilint支持运行setup.py check如果 传递了一个setup.py文件。此命令已被删除,因为该命令已被弃用。你 而是应该根据python packaging documentation使用twine check。
与tox
一起使用我通常使用tox运行测试。要使用的示例tox.ini。 multilint在python 3.5-3.7上运行测试并在python上运行linting 3.7看起来像:
[tox]envlist= py{35,36,37}, py37-codestyle[testenv]deps=-rrequirements.txtcommands=pytest[testenv:py37-codestyle]commands=multilint
然后只需放入multilint,再加上希望它运行的棉绒(例如。 flake8)在您的requirements.txt中。
历史记录
待发布
4.0.0(2019-08-11)
删除setup.py check支持,因为twine check是新的,更多 完整的、推荐的检查可分发文件正确性的方法,根据 警告:
warning: Check: This command has been deprecated. Use `twine check` instead: https://packaging.python.org/guides/making-a-pypi-friendly-readme#validating-restructuredtext-markup
multilint无法运行twine check,因为它需要在 dist文件,而不是setup.py文件。
您可以使用额外的命令将其集成到典型的tox设置中 tox dist/*。有关详细信息,请参见twine check documentation和 那个packaging documentation。
3.0.0(2019-05-13)
- 放弃Python2和3.4支持,现在只支持Python3.5+。
- 添加对运行Black的支持, python代码自动格式化程序。
- 放弃对Flake8<;3.0.0的支持。
2.4.0(2018-09-30)
- 支持路径的位置参数。
2.3.0(2018-04-28)
- 更新0.6.1+
- 在多行代码库本身上运行modernize,因此现在需要6个
2.2.1(2018-03-08)
-
当设置不存在时,修复崩溃。CFG不存在。
2.2.0(2017-09-19)
- 添加--skip参数,该参数甚至可以用于跳过特定的linter 尽管已经安装了。
2.1.0(2017-06-02)
- 在setup.py中使用entry_points,而不是scripts
- 支持python -m multilint
2.0.2(2016-12-06)
- 如果没有setup.py,则不要调用python setup.py check。
2.0.1(2016-10-20)
- 删除setup.cfg中路径的默认值。
2.0.0(2016-09-24)
- 在setup.cfg中使用配置头tool:multilint,而不是 multilint,以避免与任何潜在的setup.py命令发生冲突。 您的setup.cfg需要更新。
1.0.2(2016-07-26)
- 使用flake83.0+改变了其main函数的工作方式。
- 修正了在python 2上运行的现代化。
- 在同一个python进程中运行isort,而不是使用subprocess
- 正确地选通flake8和isort,这样它们只有在 安装。
1.0.0(2016-06-19)
- pypi上的第一个版本。