@@ -5,6 +5,7 @@ from _asyncio import (
5
5
_set_running_loop as _set_running_loop ,
6
6
get_event_loop as get_event_loop ,
7
7
get_running_loop as get_running_loop ,
8
+ _TaskCompatibleCoro ,
8
9
)
9
10
from _typeshed import FileDescriptorLike , ReadableBuffer , StrPath , Unused , WriteableBuffer
10
11
from abc import ABCMeta , abstractmethod
@@ -67,8 +68,21 @@ _ExceptionHandler: TypeAlias = Callable[[AbstractEventLoop, _Context], object]
67
68
_ProtocolFactory : TypeAlias = Callable [[], BaseProtocol ]
68
69
_SSLContext : TypeAlias = bool | None | ssl .SSLContext
69
70
70
- class _TaskFactory (Protocol ):
71
- def __call__ (self , loop : AbstractEventLoop , factory : _CoroutineLike [_T ], / ) -> Future [_T ]: ...
71
+ if sys .version_info >= (3 , 13 , 2 ):
72
+ class _TaskFactory (Protocol ):
73
+ def __call__ (
74
+ self ,
75
+ loop : AbstractEventLoop ,
76
+ coro : _TaskCompatibleCoro [_T_co ],
77
+ / ,
78
+ * ,
79
+ name : str | None = ...,
80
+ context : Context | None = None ,
81
+ eager_start : bool = False ,
82
+ ) -> Task [_T ]: ...
83
+ else :
84
+ class _TaskFactory (Protocol ):
85
+ def __call__ (self , loop : AbstractEventLoop , coro : _CoroutineLike [_T ], / ) -> Task [_T ]: ...
72
86
73
87
class Handle :
74
88
_cancelled : bool
@@ -165,7 +179,12 @@ class AbstractEventLoop:
165
179
@abstractmethod
166
180
def create_future (self ) -> Future [Any ]: ...
167
181
# Tasks methods
168
- if sys .version_info >= (3 , 11 ):
182
+ if sys .version_info >= (3 , 13 , 2 ):
183
+ @abstractmethod
184
+ def create_task (
185
+ self , coro : _TaskCompatibleCoro [_T ], * , name : str | None = None , context : Context | None = None , eager_start : bool | None = None
186
+ ) -> Task [_T ]: ...
187
+ elif sys .version_info >= (3 , 11 ):
169
188
@abstractmethod
170
189
def create_task (
171
190
self , coro : _CoroutineLike [_T ], * , name : str | None = None , context : Context | None = None
0 commit comments