Use stubtest 0.920 (#6589)

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Co-authored-by: Sebastian Rittau <srittau@rittau.biz>
Co-authored-by: Akuli <akuviljanen17@gmail.com>
This commit is contained in:
Shantanu
2021-12-17 03:58:11 -08:00
committed by GitHub
parent 5f850af3ba
commit 2ad00c9664
17 changed files with 121 additions and 56 deletions

View File

@@ -110,9 +110,7 @@ jobs:
- name: Update pip
run: python -m pip install -U pip
- name: Install dependencies
# Temporarily hard-code the mypy version used for stubtest
# run: pip install $(grep tomli== requirements-tests.txt) (grep mypy== requirements-tests.txt)
run: pip install mypy==0.910
run: pip install $(grep tomli== requirements-tests.txt) $(grep mypy== requirements-tests.txt)
- name: Run stubtest
run: python tests/stubtest_stdlib.py

View File

@@ -6,7 +6,6 @@ pymysql.cursors.Cursor.__del__
# DictCursorMixin changes method types of inherited classes, but doesn't contain much at runtime
pymysql.cursors.DictCursorMixin.__iter__
pymysql.cursors.DictCursorMixin.fetch[a-z]*
pymysql.err.ER
pymysql.escape_dict
pymysql.escape_sequence
pymysql.escape_string

View File

@@ -0,0 +1,3 @@
# In the stub we alias to OrderedDict, but it has positional-only differences
babel.util.odict.fromkeys
babel.util.odict.setdefault

View File

@@ -2,3 +2,7 @@ hdbcli.dbapi.Error.errorcode
hdbcli.dbapi.Error.errortext
hdbcli.dbapi.Warning.errorcode
hdbcli.dbapi.Warning.errortext
# Similar issues to builtins.memoryview
hdbcli.dbapi.BINARY.__iter__
hdbcli.dbapi.BINARY.cast
hdbcli.dbapi.BINARY.__contains__

View File

@@ -1,2 +1,3 @@
# Misnamed first argument in implementation
html5lib._inputstream.EncodingBytes.__new__
html5lib._tokenizer.attributeMap.get

View File

@@ -1,8 +1 @@
MySQLdb.Connection
MySQLdb.connections
MySQLdb.constants.CLIENT
MySQLdb.constants.CR
MySQLdb.constants.ER
MySQLdb.constants.FLAG
MySQLdb.converters
MySQLdb.cursors

View File

@@ -3,25 +3,11 @@ paramiko.Transport.open_x11_channel
paramiko.Transport.send_ignore
paramiko.Transport.start_server
paramiko._winapi
paramiko.py3compat.builtins.bytearray.pop
paramiko.py3compat.builtins.bytearray.remove
paramiko.py3compat.builtins.classmethod.__get__
paramiko.py3compat.builtins.copyright
paramiko.py3compat.builtins.credits
paramiko.py3compat.builtins.dict.get
paramiko.py3compat.builtins.ellipsis
paramiko.py3compat.builtins.exit
paramiko.py3compat.builtins.function
paramiko.py3compat.builtins.help
paramiko.py3compat.builtins.license
paramiko.py3compat.builtins.memoryview.__contains__
paramiko.py3compat.builtins.memoryview.__iter__
paramiko.py3compat.builtins.memoryview.cast
paramiko.py3compat.builtins.object.__init__
paramiko.py3compat.builtins.property.__get__
paramiko.py3compat.builtins.quit
paramiko.py3compat.builtins.staticmethod.__get__
paramiko.py3compat.input
paramiko.py3compat.BytesIO.readlines
paramiko.py3compat.BytesIO.seek
paramiko.py3compat.StringIO.seek
paramiko.py3compat.StringIO.truncate
paramiko.sftp_server.SFTPServer.__init__
paramiko.transport.Transport.open_x11_channel
paramiko.transport.Transport.send_ignore

View File

@@ -5,6 +5,12 @@ requests.Session.options
requests.Session.patch
requests.Session.post
requests.Session.put
requests.adapters.HTTPResponse.__init__
requests.adapters.PoolManager.connection_from_host
requests.adapters.PoolManager.connection_from_url
requests.adapters.PoolManager.urlopen
requests.adapters.Retry.is_forced_retry
requests.adapters.Retry.sleep
requests.api.delete
requests.api.get
requests.api.head
@@ -13,12 +19,28 @@ requests.api.patch
requests.api.post
requests.api.put
requests.api.request
requests.compat.OrderedDict.fromkeys
requests.compat.OrderedDict.setdefault
requests.delete
requests.get
requests.head
requests.models.RequestField.__init__
requests.models.RequestField.from_tuples
requests.options
requests.packages.VendorAlias
requests.packages.urllib3.HTTPConnectionPool.__init__
requests.packages.urllib3.HTTPConnectionPool.urlopen
requests.packages.urllib3.HTTPResponse.__init__
requests.packages.urllib3.HTTPSConnectionPool.__init__
requests.packages.urllib3.NullHandler
requests.packages.urllib3.PoolManager.connection_from_host
requests.packages.urllib3.PoolManager.connection_from_url
requests.packages.urllib3.PoolManager.urlopen
requests.packages.urllib3.ProxyManager.__init__
requests.packages.urllib3.ProxyManager.connection_from_host
requests.packages.urllib3.ProxyManager.urlopen
requests.packages.urllib3.Retry.is_forced_retry
requests.packages.urllib3.Retry.sleep
requests.packages.urllib3._collections.HTTPHeaderDict.from_httplib
requests.packages.urllib3._collections.HTTPHeaderDict.getlist
requests.packages.urllib3._collections.RLock
@@ -27,12 +49,23 @@ requests.packages.urllib3.connection.HTTPSConnection.__init__
requests.packages.urllib3.connection.VerifiedHTTPSConnection.__init__
requests.packages.urllib3.connection.VerifiedHTTPSConnection.set_cert
requests.packages.urllib3.connectionpool.ConnectionError
requests.packages.urllib3.connectionpool.HTTPConnection.request
requests.packages.urllib3.connectionpool.HTTPConnectionPool.__init__
requests.packages.urllib3.connectionpool.HTTPConnectionPool.urlopen
requests.packages.urllib3.connectionpool.HTTPResponse.__init__
requests.packages.urllib3.connectionpool.HTTPSConnection.__init__
requests.packages.urllib3.connectionpool.HTTPSConnectionPool.__init__
requests.packages.urllib3.connectionpool.ProxyError.__init__
requests.packages.urllib3.connectionpool.RequestMethods.request_encode_url
requests.packages.urllib3.connectionpool.Retry.is_forced_retry
requests.packages.urllib3.connectionpool.Retry.sleep
requests.packages.urllib3.connectionpool.VerifiedHTTPSConnection.__init__
requests.packages.urllib3.connectionpool.VerifiedHTTPSConnection.set_cert
requests.packages.urllib3.exceptions.ProxyError.__init__
requests.packages.urllib3.fields.RequestField.__init__
requests.packages.urllib3.fields.RequestField.from_tuples
requests.packages.urllib3.filepost.RequestField.__init__
requests.packages.urllib3.filepost.RequestField.from_tuples
requests.packages.urllib3.poolmanager.PoolManager.connection_from_host
requests.packages.urllib3.poolmanager.PoolManager.connection_from_url
requests.packages.urllib3.poolmanager.PoolManager.urlopen
@@ -40,8 +73,12 @@ requests.packages.urllib3.poolmanager.ProxyManager.__init__
requests.packages.urllib3.poolmanager.ProxyManager.connection_from_host
requests.packages.urllib3.poolmanager.ProxyManager.urlopen
requests.packages.urllib3.request.RequestMethods.request_encode_url
requests.packages.urllib3.response.HTTPHeaderDict.from_httplib
requests.packages.urllib3.response.HTTPHeaderDict.getlist
requests.packages.urllib3.response.HTTPResponse.__init__
requests.packages.urllib3.response.PY3
requests.packages.urllib3.util.Retry.is_forced_retry
requests.packages.urllib3.util.Retry.sleep
requests.packages.urllib3.util.connection.poll
requests.packages.urllib3.util.connection.select
requests.packages.urllib3.util.retry.Retry.is_forced_retry
@@ -52,6 +89,8 @@ requests.patch
requests.post
requests.put
requests.request
requests.sessions.OrderedDict.fromkeys
requests.sessions.OrderedDict.setdefault
requests.sessions.Session.delete
requests.sessions.Session.get
requests.sessions.Session.head
@@ -62,3 +101,5 @@ requests.sessions.Session.put
requests.sessions.SessionRedirectMixin.resolve_redirects
requests.structures.LookupDict.__getattr__
requests.structures.LookupDict.get
requests.utils.OrderedDict.fromkeys
requests.utils.OrderedDict.setdefault

View File

@@ -9,14 +9,6 @@ waitress.channel.HTTPChannel.error_task_class
waitress.channel.HTTPChannel.parser_class
waitress.channel.HTTPChannel.request
waitress.channel.HTTPChannel.task_class
waitress.channel.wasyncore.compat.qualname
waitress.channel.wasyncore.compat.reraise
waitress.channel.wasyncore.compat.set_nonblocking
waitress.channel.wasyncore.compat.text_
waitress.channel.wasyncore.compat.tobytes
waitress.channel.wasyncore.compat.tostr
waitress.channel.wasyncore.compat.unquote_bytes_to_wsgi
waitress.channel.wasyncore.dispatcher_with_send.handle_write
waitress.compat.PY2
waitress.compat.PY3
waitress.compat.ResourceWarning
@@ -40,20 +32,6 @@ waitress.server.WSGIServer
waitress.task.ErrorTask.content_length
waitress.task.ThreadedTaskDispatcher.start_new_thread
waitress.task.WSGITask.content_length
waitress.trigger.wasyncore.compat.qualname
waitress.trigger.wasyncore.compat.reraise
waitress.trigger.wasyncore.compat.set_nonblocking
waitress.trigger.wasyncore.compat.text_
waitress.trigger.wasyncore.compat.tobytes
waitress.trigger.wasyncore.compat.tostr
waitress.trigger.wasyncore.compat.unquote_bytes_to_wsgi
waitress.trigger.wasyncore.dispatcher_with_send.handle_write
waitress.wasyncore.compat.qualname
waitress.wasyncore.compat.reraise
waitress.wasyncore.compat.set_nonblocking
waitress.wasyncore.compat.text_
waitress.wasyncore.compat.tobytes
waitress.wasyncore.compat.tostr
waitress.wasyncore.compat.unquote_bytes_to_wsgi
waitress.wasyncore.dispatcher_with_send.handle_write
waitress.rfc7230.BWS
waitress.wasyncore.map
waitress.wasyncore.dispatcher_with_send.handle_write

View File

@@ -36,6 +36,10 @@ msvcrt
winreg
winsound
# Aliases for OSError
posix.error.characters_written
resource.error.characters_written
# NamedTuple like, but not actually NamedTuples (PyStructSequence)
posix.[a-z]+_(param|result)._(asdict|make|replace)

View File

@@ -31,6 +31,8 @@ asyncio.futures.Future.__init__ # Usually initialized from c object
asyncio.futures.Future._callbacks # Usually initialized from c object
builtins.dict.get
contextvars.Context.__init__ # Default C __init__ signature is wrong
contextlib.AbstractAsyncContextManager.__class_getitem__
contextlib.AbstractContextManager.__class_getitem__
dataclasses.field
dataclasses.KW_ONLY
enum.Enum._generate_next_value_
@@ -40,6 +42,8 @@ functools.partialmethod.__get__
functools.singledispatchmethod.__call__
gettext.install
gettext.translation
hashlib.sha3_\d+ # Can be a class or a built-in function
hashlib.shake_\d+ # Can be a class or a built-in function
hmac.new # Stub is a white lie; see comments in the stub
http.server.SimpleHTTPRequestHandler.__init__ # *args is expanded
importlib.abc.Traversable.__init__ # Inherits __init__ from typing.Protocol
@@ -106,8 +110,11 @@ _collections_abc.Generator.send
_collections_abc.Generator.throw
contextvars.ContextVar.reset
contextvars.ContextVar.set
contextlib.AbstractAsyncContextManager.__aexit__
contextlib.AbstractContextManager.__exit__
io.IncrementalNewlineDecoder.setstate
typing.SupportsRound.__round__
types.DynamicClassAttribute..* # In the stub we pretend it's an alias for property, but it has positional-only differences
# These enums derive from (str, Enum). See comment in py3_common.txt
pstats.SortKey.__new__

View File

@@ -43,24 +43,24 @@ typing.AsyncGenerator.ag_await
typing.AsyncGenerator.ag_code
typing.AsyncGenerator.ag_frame
typing.AsyncGenerator.ag_running
typing.ChainMap.fromkeys
typing.Coroutine.cr_await
typing.Coroutine.cr_code
typing.Coroutine.cr_frame
typing.Coroutine.cr_running
typing.Generator.__new__
typing.Generator.gi_code
typing.Generator.gi_frame
typing.Generator.gi_running
typing.Generator.gi_yieldfrom
typing.GenericMeta.__new__
typing.IO.closed # Incorrect definition in CPython, fixed in bpo-39493
typing.Mapping.get
typing.NamedTuple.__new__
typing.NamedTuple._asdict
typing.NamedTuple._make
typing.NamedTuple._replace
typing.Sequence.index
typing.Text.maketrans
typing.runtime_checkable
typing\.\w+\.__new__
unittest._log # New in Python 3.9
unittest.async_case # Added in Python 3.8
uuid.UUID.int
@@ -72,6 +72,14 @@ tkinter.EventType.__new__
builtins.memoryview.__iter__ # C type that implements __getitem__
builtins.memoryview.cast # inspect.signature is incorrect about shape being kw-only
sqlite3.dbapi2.Binary.__iter__ # C type that implements __getitem__
sqlite3.dbapi2.Binary.cast # inspect.signature is incorrect about shape being kw-only
sqlite3.Binary.__iter__ # C type that implements __getitem__
sqlite3.Binary.cast # inspect.signature is incorrect about shape being kw-only
sqlite3.OptimizedUnicode.maketrans
sqlite3.dbapi2.OptimizedUnicode.maketrans
collections.Coroutine.cr_await
collections.Coroutine.cr_code
collections.Coroutine.cr_frame

View File

@@ -51,6 +51,7 @@ typing.NamedTuple._replace
typing._SpecialForm.__init__
typing._SpecialForm.__new__
typing.runtime_checkable
typing.Text.maketrans
unittest._log # New in Python 3.9
unittest.async_case # Added in Python 3.8
uuid.UUID.int
@@ -65,6 +66,14 @@ tkinter.EventType.__new__
builtins.memoryview.__iter__ # C type that implements __getitem__
builtins.memoryview.cast # inspect.signature is incorrect about shape being kw-only
sqlite3.dbapi2.Binary.__iter__ # C type that implements __getitem__
sqlite3.dbapi2.Binary.cast # inspect.signature is incorrect about shape being kw-only
sqlite3.Binary.__iter__ # C type that implements __getitem__
sqlite3.Binary.cast # inspect.signature is incorrect about shape being kw-only
sqlite3.OptimizedUnicode.maketrans
sqlite3.dbapi2.OptimizedUnicode.maketrans
collections.Coroutine.cr_await
collections.Coroutine.cr_code
collections.Coroutine.cr_frame

View File

@@ -82,6 +82,10 @@ tkinter.EventType.__new__
builtins.memoryview.__iter__ # C type that implements __getitem__
builtins.memoryview.cast # inspect.signature is incorrect about shape being kw-only
sqlite3.dbapi2.Binary.__iter__ # C type that implements __getitem__
sqlite3.dbapi2.Binary.cast # inspect.signature is incorrect about shape being kw-only
sqlite3.Binary.__iter__ # C type that implements __getitem__
sqlite3.Binary.cast # inspect.signature is incorrect about shape being kw-only
collections.Coroutine.cr_await
collections.Coroutine.cr_code
collections.Coroutine.cr_frame

View File

@@ -29,6 +29,8 @@ collections.ItemsView.__reversed__
collections.KeysView.__reversed__
collections.ValuesView.__reversed__
contextvars.Context.__init__ # Default C __init__ signature is wrong
contextlib.AbstractAsyncContextManager.__class_getitem__
contextlib.AbstractContextManager.__class_getitem__
dataclasses.field
enum.Enum._generate_next_value_
fractions.Fraction.__new__ # overload is too complicated for stubtest to resolve
@@ -37,6 +39,8 @@ functools.partialmethod.__get__
functools.singledispatchmethod.__call__
gettext.install
gettext.translation
hashlib.sha3_\d+
hashlib.shake_\d+
hmac.new # Stub is a white lie; see comments in the stub
http.server.SimpleHTTPRequestHandler.__init__ # *args is expanded
importlib.abc.Traversable.__init__ # Inherits __init__ from typing.Protocol
@@ -94,6 +98,10 @@ tkinter.EventType.__new__
builtins.memoryview.__iter__ # C type that implements __getitem__
builtins.memoryview.cast # inspect.signature is incorrect about shape being kw-only
sqlite3.dbapi2.Binary.__iter__ # C type that implements __getitem__
sqlite3.dbapi2.Binary.cast # inspect.signature is incorrect about shape being kw-only
sqlite3.Binary.__iter__ # C type that implements __getitem__
sqlite3.Binary.cast # inspect.signature is incorrect about shape being kw-only
collections.Coroutine.cr_await
collections.Coroutine.cr_code
collections.Coroutine.cr_frame

View File

@@ -14,6 +14,7 @@ _csv.Dialect.__init__ # C __init__ signature is inaccurate
_socket.*
_threading_local.local.__new__
_typeshed.* # Utility types for typeshed, doesn't exist at runtime
_weakref.ref.__call__
abc.abstractclassmethod # Deprecated, unsupported by mypy, hard to fix. #6552
abc.abstractstaticmethod # Deprecated, unsupported by mypy, hard to fix. #6552
abc.ABCMeta.__new__ # pytype wants the parameter named cls and not mcls
@@ -42,6 +43,8 @@ builtins.classmethod.__get__ # this function can accept no value for the type p
builtins.ellipsis # type is not exposed anywhere
builtins.function
builtins.memoryview.__contains__ # C type that implements __getitem__
sqlite3.dbapi2.Binary.__contains__ # C type that implements __getitem__
sqlite3.Binary.__contains__ # C type that implements __getitem__
builtins.object.__init__ # default C signature is incorrect
builtins.property.__get__ # this function can accept no value for the type parameter.
builtins.staticmethod.__get__ # this function can accept no value for the type parameter.
@@ -163,6 +166,8 @@ numbers.Number.__hash__ # typeshed marks this as abstract but code just sets th
optparse.Values.__getattr__ # Some attributes are set in __init__ using setattr
pickle.Pickler.persistent_id # C pickler persistent_id is an attribute
pickle.Unpickler.persistent_load # C unpickler persistent_load is an attribute
pickle._Unpickler\..* # Best effort typing for undocumented internals
pickle._Pickler\..* # Best effort typing for undocumented internals
poplib.POP3_SSL.stls # bad declaration of inherited function. See poplib.pyi
select.poll # Depends on configuration
selectors.DevpollSelector # Depends on configuration
@@ -184,7 +189,12 @@ tempfile.SpooledTemporaryFile.seekable
tempfile.SpooledTemporaryFile.writable
threading.Condition.acquire # Condition functions are exported in __init__
threading.Condition.release # Condition functions are exported in __init__
multiprocessing.dummy.Condition.acquire
multiprocessing.dummy.Condition.release
threading.Lock # A factory function that returns 'most efficient lock'. Marking it as a function will make it harder for users to mark the Lock type.
threading.RLock # Similar to above
multiprocessing.dummy.Lock # Similar to above
multiprocessing.dummy.RLock # Similar to above
tkinter.Misc.grid_propagate # The noarg placeholder is a set value list
tkinter.Misc.pack_propagate # The noarg placeholder is a set value list
tkinter.Misc.grid_columnconfigure # an empty dict literal is actually a valid default for a TypedDict(total=False) parameter
@@ -211,6 +221,7 @@ weakref.ReferenceType.__call__ # C function default annotation is wrong
weakref.WeakKeyDictionary.get
weakref.WeakKeyDictionary.update
weakref.WeakValueDictionary.get
weakref.ref.__call__
webbrowser.UnixBrowser.remote_action # always overridden in inheriting class
webbrowser.UnixBrowser.remote_action_newtab # always overridden in inheriting class
webbrowser.UnixBrowser.remote_action_newwin # always overridden in inheriting class
@@ -233,6 +244,13 @@ builtins.reveal_locals
builtins.reveal_type
# GetSetDescriptor that always raises AttributeError
builtins.OSError.characters_written
# Aliases for OSError
builtins.EnvironmentError.characters_written
builtins.IOError.characters_written
dbm.dumb.error.characters_written
os.error.characters_written
select.error.characters_written
socket.error.characters_written
collections.abc.* # Types are re-exported from _collections_abc, so errors should be fixed there
distutils.command.check.SilentReporter # only defined if docutils in installed
hmac.HMAC.blocksize # use block_size instead

View File

@@ -9,6 +9,10 @@ locale.nl_langinfo # Function that should be moved to _locale and re-exported c
# Allowlist entries that cannot or should not be fixed
# ==========
# Aliases for OSError
builtins.WindowsError.characters_written
winreg.error.characters_written
# Modules that do not exist on Windows systems
_curses
_posixsubprocess