1
0
forked from VimPlug/jedi

Update mypy to the latest

This includes updating the ignore comments for things which mypy
now knows about or now complains about, as well as pulling in some
typeshed packages for things outside the standard library.
This commit is contained in:
Peter Law
2023-02-13 19:27:12 +00:00
parent b0025ee6ba
commit 664b10a5c6
6 changed files with 12 additions and 8 deletions

View File

@@ -15,7 +15,7 @@ from jedi.inference.compiled.subprocess import CompiledSubprocess, \
import parso import parso
_VersionInfo = namedtuple('VersionInfo', 'major minor micro') _VersionInfo = namedtuple('VersionInfo', 'major minor micro') # type: ignore[name-match]
_SUPPORTED_PYTHONS = ['3.10', '3.9', '3.8', '3.7', '3.6'] _SUPPORTED_PYTHONS = ['3.10', '3.9', '3.8', '3.7', '3.6']
_SAFE_PATHS = ['/usr/bin', '/usr/local/bin'] _SAFE_PATHS = ['/usr/bin', '/usr/local/bin']
@@ -384,8 +384,7 @@ def _get_executable_path(path, safe=True):
def _get_executables_from_windows_registry(version): def _get_executables_from_windows_registry(version):
# https://github.com/python/typeshed/pull/3794 adds winreg import winreg
import winreg # type: ignore[import]
# TODO: support Python Anaconda. # TODO: support Python Anaconda.
sub_keys = [ sub_keys = [

View File

@@ -5,8 +5,7 @@ from typing import Dict, Optional
from jedi.inference.names import AbstractArbitraryName from jedi.inference.names import AbstractArbitraryName
try: try:
# https://github.com/python/typeshed/pull/4351 adds pydoc_data from pydoc_data import topics
from pydoc_data import topics # type: ignore[import]
pydoc_topics: Optional[Dict[str, str]] = topics.topics pydoc_topics: Optional[Dict[str, str]] = topics.topics
except ImportError: except ImportError:
# Python 3.6.8 embeddable does not have pydoc_data. # Python 3.6.8 embeddable does not have pydoc_data.

View File

@@ -40,7 +40,7 @@ NOT_CLASS_TYPES = (
MethodDescriptorType = type(str.replace) MethodDescriptorType = type(str.replace)
WrapperDescriptorType = type(set.__iter__) WrapperDescriptorType = type(set.__iter__)
# `object.__subclasshook__` is an already executed descriptor. # `object.__subclasshook__` is an already executed descriptor.
object_class_dict = type.__dict__["__dict__"].__get__(object) object_class_dict = type.__dict__["__dict__"].__get__(object) # type: ignore[index]
ClassMethodDescriptorType = type(object_class_dict['__subclasshook__']) ClassMethodDescriptorType = type(object_class_dict['__subclasshook__'])
_sentinel = object() _sentinel = object()

View File

@@ -2,7 +2,7 @@
Utilities for end-users. Utilities for end-users.
""" """
import __main__ # type: ignore[import] import __main__
from collections import namedtuple from collections import namedtuple
import logging import logging
import traceback import traceback

View File

@@ -28,6 +28,9 @@ max-line-length = 100
[mypy] [mypy]
# Exclude our copies of external stubs
exclude = ^jedi/third_party
# Ensure generics are explicit about what they are (e.g: `List[str]` rather than # Ensure generics are explicit about what they are (e.g: `List[str]` rather than
# just `List`) # just `List`)
disallow_any_generics = True disallow_any_generics = True

View File

@@ -45,7 +45,10 @@ setup(name='jedi',
], ],
'qa': [ 'qa': [
'flake8==3.8.3', 'flake8==3.8.3',
'mypy==0.782', # latest version supporting Python 3.6
'mypy==0.971',
# Arbitrary pins, latest at the time of pinning
'types-setuptools==67.2.0.1',
], ],
'docs': [ 'docs': [
# Just pin all of these. # Just pin all of these.