@codacy/tools-pylint-4 (英语)
目录
概览
Python 静态分析器 Py 二进制. 使用 CLI 执行策略 —— 将 pylint 安装到一个专用的 venv 中, 通过 spawnTool(),并解析其 JSON2 输出.
| 财产 | 数值 |
|---|---|
| 工具标识 | PyLintPython3 |
| 编码 UUID | 31677b6d-4ae0-4f56-8041-606a8d7a8e61 |
| 战略 | 国 际 |
| 语文 | 蟒 |
| 二进制 | pylint |
| 文件图案 | **/*.py |
| 图案计数 | ~340 时 |
| 先决条件 | Py 3.10+ |
更新图案
# Re-fetch pattern metadata from the Codacy API
pnpm prefetch
# Commit the result
git add src/patterns.json
模式 ID 遵循格式 PyLintPython3_C0114, (中文(简体) ), PyLintPython3_E0602等 (中文(简体) ).
更新 Pylint 版本
- 更新
PREFERRED_VERSION编辑pylint==X.Y.Z输入PIP_PACKAGES内src/adapter.ts - 运行
pnpm prefetch以检查新的/撤消的规则 - 运行
pnpm test以验证兼容性 - 如果主要版本更改,请创建新的适配软件包(
pylint-4/(中文(简体) )
发展
pnpm build # Build with tsup
pnpm test # Run tests (requires pylint in PATH or auto-installed)
为本地开发手动安装 pylint :
pip install pylint
或者让适配器自动装入一个阴道:
codacy-analysis analyze . --install-dependencies
适配器将这些软件包安装到 venv 中:
pylint==4.0.8pylint-djangopylint-flaskpylint-celerypylint-commonpylint-beampylint-pytestSaltPyLint
维护者的注释
- JSON2 输出格式:适配器使用
--output-format=json2产出{ "messages": [...], "statistics": {...} }。这是现代格式(Pylint 3.x+). - 0个分栏: Pylint 报告栏目为 0 基. 适配器会增加1来转换为Codacy使用的以1为基础的模型.
- 可负端 Line/ 末端颜色: 这些字段可以是
null在平林特输出。 适配器在无效时会从"发行"对象中省略. - 退出代码位图: Pylint 使用位掩码退出. Bit 5(值32)表示使用错误(差错配置/args). 比特0-4(值1-31)表示正常的发现. 适配器检查
exitCode & 32以区分错误和正常结果. - E0401 过滤编号:
E0401(import-error)模式被永久过滤,因为沙箱环境无法解决第三方进口. 这符合现有的Codacy包装器行为. - 插件支持:适配器将同Codacy包装器(pylint-django,pylint-flask,pylint-celery,pylint-common,pylint-beam,pylint-pytest,SaltPyLint)相同的插件捆绑.
- 模式参数:一些模式接受参数(例如:.
max-line-length(单位:千美元),max-locals为R0914. 这些作为--{param}={value}CLI论点. - Py 3.10+: 第4页掉了3.9,所以
install通过>=3.10.0改为ensurePython(年长者) system Python,例如苹果3.9/usr/bin/python3,则跳出并下载了便携式3.12) 转至ensureVenv(在3.9上建的更早安装的venv是重建的,而不是再利用的). - 阴道隔离: Pylint 及其插件安装在一个专用的 venv 上
~/.codacy/runtimes/PyLintPython3/venv/以避免依赖性与其他 Python 工具相冲突。 路径在稳定的工具ID而不是包文件夹名上被键入,因此一个大起落会使venv保持并升级到原地而不用孤儿化. - 配置文件:适配器报告
pylintrc或者说.pylintrc(按此顺序)作为本地配置文件,没有其它内容. 科达西·云只接受这两个名字 所以pyproject.toml, (中文(简体) ),setup.cfg, (中文(简体) ),tox.ini财务报告和审定财务报表pylintrc.toml从不计数,即使有皮林特部分。 Pylint仍然在运行时读取其其他设置.