PyLint 仅在存在错误时返回非零代码错误

问题描述 投票:0回答:2

我正在尝试运行 PyLint 并需要一个设置,只有在 SEVERITY='ERROR' 时才会失败,并且我仍然希望在所有严重级别消息中查看和记录。我尝试了

--fail-on=E
但仍然失败。我运行以下命令:

pipenv run python3 -m pylint --fail-on=E src/app src/backend --output-format=teamcity.pylint_reporter.TeamCityReporter

目前我收到此错误:

Error 28

有没有办法实现这个目标?

python logging teamcity lint pylint
2个回答
1
投票

pylint 退出代码根据引发的内容进行字节编码:

Fatal (1)
Error (2)
Warning (4)
Convention (8)
Refactor (16)
Information (NA)

参见 https://pylint.readthedocs.io/en/latest/user_guide/messages/index.html

这意味着在您的情况下,好的输出将是 4(仅警告)、8(仅约定)、12(警告和约定)、16(仅重构)、20(警告和重构)、24(约定和重构)、或 28(约定重构和警告)。


0
投票

打印其他消息时仍然可能失败,因为所有消息都会降低分数。默认行为是:如果分数小于 10,退出代码将为非零 — 请参阅

--fail-under
:

指定分数阈值,低于该阈值程序将错误退出。

默认:10

要使其仅因错误而失败,但仍显示其他消息,请尝试以下操作:

pylint src/app --fail-under 5 --fail-on E
© www.soinside.com 2019 - 2024. All rights reserved.