VSCode中Mypy的不稳定行为:如何进行故障排除和解决



我在VSCode中的MyPy一直存在问题。我通常激活我的venv,Pylance作为语言服务器和MyPy扩展(对编辑器更改事件执行检查(。MyPy。

MyPy安装在当前的venv上,已启用,linting已启用,MyPy正在使用活动解释器,在我的settings.json中我有:

{
"python.languageServer": "Pylance",
"python.linting.enabled": true,
"python.linting.mypyEnabled": true,
"mypy.runUsingActiveInterpreter": true
}

MyPy确实抱怨";库存根";未找到,对于未键入的包,它也指出了一些错误,但没有显示一些非常明确的错误。

一个例子:

# file_a.py
def myfunc() -> dict:
return {}
# file_b.py
from file_a import myfunc
from file_z import func_dont_exist 
# No error shown here
abc: bool = myfunc()
xyz: str = func_dont_exist()
# This points to an error, highlight the "1"
abc = "abc" + 1

如果我在根上运行mypy .,也没有错误。我在根目录上有mypy.ini文件,忽略迁移文件夹、.venv和使用SQLMyPy插件。

如果我禁用ignore_errorsmypy,则会指向迁移文件夹上的一组错误(预期(,这告诉我守护进程正在工作。

我已经更新了我的VSCode,尝试禁用我拥有的每个扩展,重新加载,重新启动,检查控制台,什么都没有。

由于没有关于如何调试这个问题的想法,我发现的每一个问题都是:在设置上启用mypy、检查路径、启用linting等,但我已经完成了所有这些。

有什么想法吗?

我过去在mypy方面遇到过麻烦,比如加载mypy插件。当我用正确的python环境激活从终端启动vscode时,它得到了解决

conda activate my-env
cd my/vs-code/project/dir
code .

值得一试

最新更新