mypy and django: error: Library stubs not installed for "six" (or incompatible with Python 3.9)

mypy and django: error: Library stubs not installed for "six" (or incompatible with Python 3.9)

我已经为 django 项目设置了 mypy

[mypy]
# The mypy configurations: https://mypy.readthedocs.io/en/latest/config_file.html
python_version = 3.9

check_untyped_defs = True
# disallow_any_explicit = True
disallow_any_generics = True
disallow_untyped_calls = True
disallow_untyped_decorators = True
ignore_errors = False
ignore_missing_imports = True
implicit_reexport = False
strict_optional = True
strict_equality = True
no_implicit_optional = True
warn_unused_ignores = True
warn_redundant_casts = True
warn_unused_configs = True
warn_unreachable = True
warn_no_return = True
mypy_path = /home/user/app/backend_django/src

plugins =
  mypy_django_plugin.main,
  mypy_drf_plugin.main

[mypy.plugins.django-stubs]
django_settings_module = project.settings

现在我得到了

settings.py:21: error: Library stubs not installed for "six" (or incompatible with Python 3.9)

settings.py 我正在导入 six

那么如何解决这个错误。

我安装了django-stubs

在将 types-six 添加到您的环境后尝试 运行 mypy:

pip install types-six

参见 the note in the mypy docs。从 mypy>=0.9.

开始,存根的行为发生了变化