-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
Closed
Labels
bugmypy got something wrongmypy got something wrongtopic-asyncasync, await, asyncioasync, await, asyncio
Description
When syncing typeshed in #11905, the type of asyncio.sleep was changed from:
def sleep(delay: float, result: _T = ...) -> Future[_T]: ... to async def sleep(delay: float, result: _T = ...) -> _T: ...
This change somehow exposed an issue in type inference.
The test expects the following to reveal Future[list[Any]] in the following, after the typeshed change, the test reveals Future[Any]:
reveal_type(asyncio.gather(*[asyncio.sleep(1), asyncio.sleep(1)]))
While investigating this I noticed something weird. If you add another reveal_type, mypy is once again able to infer the better Future[list[Any]] type. That is, the following shows Future[list[Any]] for the outer reveal_type.
reveal_type(asyncio.gather(*[reveal_type(asyncio.sleep(1)), asyncio.sleep(1)]))
Metadata
Metadata
Assignees
Labels
bugmypy got something wrongmypy got something wrongtopic-asyncasync, await, asyncioasync, await, asyncio