运行一个或多个linter,但仅在差异有lint问题时输出错误。
lint_diffs的Python项目详细描述
皮棉差异
lintdiffs是一个简单的命令行工具,用于运行一组arbirty linter 关于一组“统一差分”。在
将始终报告差异行上的错误。非差异行上的错误也可能 根据严重程度报告。在
首先需要一些diff,然后通过管道将其传输到lint diff:
git diff -U0 origin/master | lint-diffs
。。。或者在mercurial中:hg outgoing -p | lint-diffs
- 在
对于pylint(.py)、rubocop(.rb)和 叮当(.cpp,.hpp)
在 - 在
flake8、eslint和其他linter需要显式启用(见下文)。在
在
配置
lint-diffs
将从~/.config/lint-diffs
和/或./.lint-diffs
读取配置文件。在
示例:
[pylint]always_report=E.*[flake8]extensions=.py[rubocop]extensions=.rbalways_report=(E.*|W.*)[eslint]extensions=.js[shellcheck]extensions=.sh
在本例中,flake8和pylint在以.py
结尾的每个diff文件上运行。
此外,还启用了ruby、eslint和shell脚本linter。这个
ruby linter已被修改为在任何更改的文件上始终报告警告,
不仅仅是换行。在
添加新的短绒
- 在
接线员必须向stdout报告
在 - 在
linter必须有一个regex来生成一个完整的文件路径,一个行号 和一个错误类
在 - 在
行号和文件路径必须与diff目标文件路径匹配
在
要启用或禁用linter,请更改“extensions”配置。在
目标
- 对许多人来说,运行良好的默认值
- 应该很容易修改任何linter的配置
- 应该很容易与任何风投一起使用
发展
此项目使用Flit来构建其 包装。这也许能回答你的问题,以防你想知道为什么会这样 不是设置.py这里。在
- 项目
标签: