Mypy使用绝对路径检测文件时未显示错误的技术问询
Mypy使用绝对路径检测时忽略错误的问题
使用绝对路径调用Mypy检测文件时,Mypy会忽略至少部分错误。原本以为是项目自身问题,但在基础环境中可轻松复现该问题,目前因此无法在VSCode中使用Mypy linting功能。
命令执行示例
$ .venv/bin/mypy --strict /home/mike/Documents/deleteMe/pipenv_testing/sample.py Success: no issues found in 1 source file $ .venv/bin/mypy --strict ./sample.py sample.py:4: error: Function is missing a type annotation [no-untyped-def] Found 1 error in 1 file (checked 1 source file)
复现步骤
- 创建包含Mypy错误的文件(需开启
--strict才会触发错误),示例代码:def do_a_thing(invar): return invar + 1 - 安装Mypy:使用pipenv创建虚拟环境并执行
pipenv install mypy - 使用相对路径执行Mypy检测,验证错误正常显示,例如:
.venv/bin/mypy --strict ./sample.py - 使用绝对路径重复检测,发现无错误报告,例如:
.venv/bin/mypy --strict /home/mike/Documents/deleteMe/pipenv_testing/sample.py
预期行为
无论使用绝对路径还是相对路径,Mypy应返回相同的错误检测结果。
环境信息
- Mypy版本:mypy 0.990(已编译)
- Python版本:Python 3.9.15
- Mypy命令行参数:
--strict - 未使用任何Mypy配置文件(使用绝对路径指定配置文件测试后结果一致)
内容的提问来源于stack exchange,提问作者Michael Reed
相关产品推荐
相关产品推荐

