From cf34d5ef934cd73f0cfaeb5fad66b9e03fe66b55 Mon Sep 17 00:00:00 2001 From: hauntsaninja <> Date: Mon, 21 Feb 2022 16:54:53 -0800 Subject: [PATCH] Downgrade stubtest a little Fixes #7344 for now. As discussed in that issue, I think it might make sense to revert the change to check positional-only arguments on dunders for now, since it seems to be mostly busywork and has very little benefit for end users. However, that'll happen on stubtest master, which typeshed isn't yet ready for. --- .github/workflows/stubtest.yml | 2 +- .github/workflows/tests.yml | 2 +- tests/stubtest_allowlists/darwin-py36.txt | 13 +--- tests/stubtest_allowlists/linux-py36.txt | 12 ---- tests/stubtest_allowlists/py36.txt | 87 ----------------------- tests/stubtest_allowlists/py37.txt | 2 - tests/stubtest_allowlists/win32-py36.txt | 8 --- tests/stubtest_third_party.py | 2 +- 8 files changed, 4 insertions(+), 124 deletions(-) diff --git a/.github/workflows/stubtest.yml b/.github/workflows/stubtest.yml index 6a82c3bacab6..708692c62a75 100644 --- a/.github/workflows/stubtest.yml +++ b/.github/workflows/stubtest.yml @@ -39,7 +39,7 @@ jobs: # - get_mypy_req in tests/stubtest_third_party.py # - stubtest-stdlib in .github/workflows/stubtest.yml # - stubtest-stdlib in .github/workflows/tests.yml - run: pip install $(grep tomli== requirements-tests.txt) git+git://github.com/python/mypy@85fc99c99e7e2afc5896de1842d52e6e6cd55197 + run: pip install $(grep tomli== requirements-tests.txt) git+git://github.com/python/mypy@080bb0e04e9d5c4d2513621d1fb62f1d61a573e9 - name: Run stubtest run: python tests/stubtest_stdlib.py diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 802ea19c9064..a6c72dc9f93f 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -114,7 +114,7 @@ jobs: # - get_mypy_req in tests/stubtest_third_party.py # - stubtest-stdlib in .github/workflows/stubtest.yml # - stubtest-stdlib in .github/workflows/tests.yml - run: pip install $(grep tomli== requirements-tests.txt) git+git://github.com/python/mypy@85fc99c99e7e2afc5896de1842d52e6e6cd55197 + run: pip install $(grep tomli== requirements-tests.txt) git+git://github.com/python/mypy@080bb0e04e9d5c4d2513621d1fb62f1d61a573e9 - name: Run stubtest run: python tests/stubtest_stdlib.py diff --git a/tests/stubtest_allowlists/darwin-py36.txt b/tests/stubtest_allowlists/darwin-py36.txt index e88ecb8244c2..2d6707abf504 100644 --- a/tests/stubtest_allowlists/darwin-py36.txt +++ b/tests/stubtest_allowlists/darwin-py36.txt @@ -9,16 +9,5 @@ ntpath.splitunc posix.stat_float_times ssl.OP_ENABLE_MIDDLEBOX_COMPAT ssl.Options.OP_ENABLE_MIDDLEBOX_COMPAT -uuid.lib -# Not "async defs" at runtime -asyncio.SelectorEventLoop.create_unix_connection -asyncio.SelectorEventLoop.create_unix_server -asyncio.open_unix_connection -asyncio.start_unix_server -asyncio.streams.open_unix_connection -asyncio.streams.start_unix_server -asyncio.unix_events.SelectorEventLoop.create_unix_connection -asyncio.unix_events.SelectorEventLoop.create_unix_server -asyncio.unix_events._UnixSelectorEventLoop.create_unix_connection -asyncio.unix_events._UnixSelectorEventLoop.create_unix_server +uuid.lib diff --git a/tests/stubtest_allowlists/linux-py36.txt b/tests/stubtest_allowlists/linux-py36.txt index e88ecb8244c2..a2ca6ef266ca 100644 --- a/tests/stubtest_allowlists/linux-py36.txt +++ b/tests/stubtest_allowlists/linux-py36.txt @@ -10,15 +10,3 @@ posix.stat_float_times ssl.OP_ENABLE_MIDDLEBOX_COMPAT ssl.Options.OP_ENABLE_MIDDLEBOX_COMPAT uuid.lib - -# Not "async defs" at runtime -asyncio.SelectorEventLoop.create_unix_connection -asyncio.SelectorEventLoop.create_unix_server -asyncio.open_unix_connection -asyncio.start_unix_server -asyncio.streams.open_unix_connection -asyncio.streams.start_unix_server -asyncio.unix_events.SelectorEventLoop.create_unix_connection -asyncio.unix_events.SelectorEventLoop.create_unix_server -asyncio.unix_events._UnixSelectorEventLoop.create_unix_connection -asyncio.unix_events._UnixSelectorEventLoop.create_unix_server diff --git a/tests/stubtest_allowlists/py36.txt b/tests/stubtest_allowlists/py36.txt index e55a3e2438f4..2b3413ea7ed8 100644 --- a/tests/stubtest_allowlists/py36.txt +++ b/tests/stubtest_allowlists/py36.txt @@ -103,93 +103,6 @@ collections.Generator.gi_yieldfrom collections.Mapping.get # Adding None to the Union messed up mypy collections.Sequence.index # Supporting None in end is not mandatory -# Not "async def"s at runtime -asyncio.AbstractEventLoop.connect_read_pipe -asyncio.AbstractEventLoop.connect_write_pipe -asyncio.AbstractEventLoop.create_datagram_endpoint -asyncio.AbstractEventLoop.create_unix_connection -asyncio.AbstractEventLoop.create_unix_server -asyncio.AbstractEventLoop.getaddrinfo -asyncio.AbstractEventLoop.getnameinfo -asyncio.AbstractEventLoop.shutdown_asyncgens -asyncio.AbstractEventLoop.subprocess_exec -asyncio.AbstractEventLoop.subprocess_shell -asyncio.AbstractServer.wait_closed -asyncio.BaseEventLoop.connect_accepted_socket -asyncio.BaseEventLoop.connect_read_pipe -asyncio.BaseEventLoop.connect_write_pipe -asyncio.BaseEventLoop.create_datagram_endpoint -asyncio.BaseEventLoop.getaddrinfo -asyncio.BaseEventLoop.getnameinfo -asyncio.BaseEventLoop.shutdown_asyncgens -asyncio.BaseEventLoop.subprocess_shell -asyncio.Condition.wait -asyncio.Condition.wait_for -asyncio.Event.wait -asyncio.Lock.acquire -asyncio.Queue.get -asyncio.Queue.join -asyncio.Queue.put -asyncio.Semaphore.acquire -asyncio.StreamReader.__anext__ -asyncio.StreamReader.read -asyncio.StreamReader.readexactly -asyncio.StreamReader.readline -asyncio.StreamReader.readuntil -asyncio.StreamWriter.drain -asyncio.create_subprocess_exec -asyncio.create_subprocess_shell -asyncio.open_connection -asyncio.sleep -asyncio.start_server -asyncio.wait_for -asyncio.base_events.BaseEventLoop.connect_accepted_socket -asyncio.base_events.BaseEventLoop.connect_read_pipe -asyncio.base_events.BaseEventLoop.connect_write_pipe -asyncio.base_events.BaseEventLoop.create_datagram_endpoint -asyncio.base_events.BaseEventLoop.getaddrinfo -asyncio.base_events.BaseEventLoop.getnameinfo -asyncio.base_events.BaseEventLoop.shutdown_asyncgens -asyncio.base_events.BaseEventLoop.subprocess_shell -asyncio.base_events.Server.wait_closed -asyncio.base_subprocess.BaseSubprocessTransport._connect_pipes -asyncio.base_subprocess.BaseSubprocessTransport._wait -asyncio.events.AbstractEventLoop.connect_read_pipe -asyncio.events.AbstractEventLoop.connect_write_pipe -asyncio.events.AbstractEventLoop.create_datagram_endpoint -asyncio.events.AbstractEventLoop.create_unix_connection -asyncio.events.AbstractEventLoop.create_unix_server -asyncio.events.AbstractEventLoop.getaddrinfo -asyncio.events.AbstractEventLoop.getnameinfo -asyncio.events.AbstractEventLoop.shutdown_asyncgens -asyncio.events.AbstractEventLoop.subprocess_exec -asyncio.events.AbstractEventLoop.subprocess_shell -asyncio.events.AbstractServer.wait_closed -asyncio.locks.Condition.wait -asyncio.locks.Condition.wait_for -asyncio.locks.Event.wait -asyncio.locks.Lock.acquire -asyncio.locks.Semaphore.acquire -asyncio.locks._ContextManagerMixin.__aenter__ -asyncio.locks._ContextManagerMixin.__aexit__ -asyncio.queues.Queue.get -asyncio.queues.Queue.join -asyncio.queues.Queue.put -asyncio.streams.StreamReader.__anext__ -asyncio.streams.StreamReader.read -asyncio.streams.StreamReader.readexactly -asyncio.streams.StreamReader.readline -asyncio.streams.StreamReader.readuntil -asyncio.streams.StreamWriter.drain -asyncio.streams.open_connection -asyncio.streams.start_server -asyncio.subprocess.Process.communicate -asyncio.subprocess.Process.wait -asyncio.subprocess.create_subprocess_exec -asyncio.subprocess.create_subprocess_shell -asyncio.tasks.sleep -asyncio.tasks.wait_for - # Exists at runtime, but missing from stubs _bisect.bisect _bisect.insort diff --git a/tests/stubtest_allowlists/py37.txt b/tests/stubtest_allowlists/py37.txt index e6293ab5d43d..ca4f7a31a954 100644 --- a/tests/stubtest_allowlists/py37.txt +++ b/tests/stubtest_allowlists/py37.txt @@ -3,8 +3,6 @@ _collections_abc.AsyncGenerator.ag_code _collections_abc.AsyncGenerator.ag_frame _collections_abc.AsyncGenerator.ag_running _dummy_threading -asyncio.AbstractEventLoop.run_in_executor # allowed to return a Future, changed in 3.8 -asyncio.events.AbstractEventLoop.run_in_executor asyncio.Future.__init__ # Usually initialized from c object asyncio.Future._callbacks # Usually initialized from c object asyncio.futures.Future.__init__ # Usually initialized from c object diff --git a/tests/stubtest_allowlists/win32-py36.txt b/tests/stubtest_allowlists/win32-py36.txt index b55b11ef334b..768616bdbf80 100644 --- a/tests/stubtest_allowlists/win32-py36.txt +++ b/tests/stubtest_allowlists/win32-py36.txt @@ -18,11 +18,3 @@ os.startfile # Exists at runtime, but missing from stubs asyncio.windows_utils.socketpair venv.EnvBuilder.include_binary - -# Not "async defs" at runtime -asyncio.IocpProactor.connect_pipe -asyncio.ProactorEventLoop.create_pipe_connection -asyncio.ProactorEventLoop.start_serving_pipe -asyncio.windows_events.IocpProactor.connect_pipe -asyncio.windows_events.ProactorEventLoop.create_pipe_connection -asyncio.windows_events.ProactorEventLoop.start_serving_pipe diff --git a/tests/stubtest_third_party.py b/tests/stubtest_third_party.py index 77acdab83188..017558e44dde 100755 --- a/tests/stubtest_third_party.py +++ b/tests/stubtest_third_party.py @@ -22,7 +22,7 @@ def get_mypy_req(): # - get_mypy_req in tests/stubtest_third_party.py # - stubtest-stdlib in .github/workflows/stubtest.yml # - stubtest-stdlib in .github/workflows/tests.yml - return "git+git://github.com/python/mypy@85fc99c99e7e2afc5896de1842d52e6e6cd55197" + return "git+git://github.com/python/mypy@080bb0e04e9d5c4d2513621d1fb62f1d61a573e9" with open("requirements-tests.txt") as f: return next(line.strip() for line in f if "mypy" in line)