配置pyproject.toml让bandit排除测试文件时遇toml解析器缺失错误
解决Bandit读取pyproject.toml时的TOML解析器缺失问题
错误原因
Bandit默认安装包不包含TOML解析依赖,无法读取pyproject.toml配置文件,因此触发toml parser not available, reinstall with toml extra错误。
修复步骤
- 重新安装Bandit并添加toml额外依赖:
若使用虚拟环境管理工具,对应命令:pip install bandit[toml]- Pipenv:
pipenv install bandit[toml] --dev - Poetry:
poetry add bandit[toml] --group dev
- Pipenv:
验证操作
依赖安装完成后,重新执行命令:
bandit -c pyproject.toml -r .
配置说明
你当前的pyproject.toml配置逻辑正常:
[tool.bandit]下的exclude_dirs = ["*/test/*"]可匹配任意层级目录下的test文件夹;若仅需排除项目根目录的test文件夹,可改为["test/"][tool.pre-commit-hooks.bandit]的exclude = ["test*"]能配合pre-commit钩子过滤所有以test开头的文件
内容的提问来源于stack exchange,提问作者Aldo Matus
相关产品推荐
相关产品推荐

