22
33import asyncio
44from dataclasses import dataclass
5- from typing import TYPE_CHECKING , Any , Generic , Protocol , TypeVar
6- from typing_extensions import dataclass_transform , overload
5+ from typing import TYPE_CHECKING , Final , cast
6+ from typing_extensions import (
7+ Any ,
8+ Protocol ,
9+ TypeVar ,
10+ dataclass_transform ,
11+ overload ,
12+ )
713
814if TYPE_CHECKING :
915 from collections .abc import Callable , Coroutine , Mapping
@@ -20,9 +26,7 @@ def frozen(_cls: type[_T]) -> type[_T]: ...
2026else :
2127 frozen = dataclass (slots = True )
2228
23- _In_contra = TypeVar ("_In_contra" , contravariant = True )
24-
25- _EMPTY_DICT : dict [str , Any ] = {}
29+ _EMPTY_DICT : Final = cast ("dict[str, Any]" , {})
2630
2731
2832@frozen
@@ -36,9 +40,7 @@ def labels(self) -> Mapping[str, str]:
3640
3741 @property
3842 def name (self ) -> str :
39- if (name := self ._name ) is not None :
40- return name
41- return "<unnamed>"
43+ return name if (name := self ._name ) is not None else "<unnamed>"
4244
4345 @staticmethod
4446 def extend (
@@ -70,14 +72,14 @@ class FnCall:
7072 annotations : OpAnnotations
7173
7274
73- class StreamObserver (Protocol , Generic [ _In_contra ] ):
74- def on_next (self , log_offset : int , value : _In_contra , / ) -> None : ...
75+ class StreamObserver (Protocol ):
76+ def on_next (self , log_offset : int , value : object , / ) -> None : ...
7577 def on_close (self , log_offset : int , error : Exception | None , / ) -> None : ...
7678
7779
7880@frozen
7981class StreamCreate :
80- observer : StreamObserver [ Any ] | None
82+ observer : StreamObserver | None
8183 dtype : TypeHint [Any ]
8284 annotations : OpAnnotations
8385
@@ -123,18 +125,20 @@ class ExternalPromiseComplete:
123125
124126
125127@overload
126- def create_op (loop : EventLoop , params : FnCall ) -> OpFuture [object ]: ...
128+ def create_op (loop : EventLoop , params : FnCall ) -> asyncio . Future [object ]: ...
127129@overload
128- def create_op (loop : EventLoop , params : StreamCreate ) -> OpFuture [str ]: ...
130+ def create_op (loop : EventLoop , params : StreamCreate ) -> asyncio . Future [str ]: ...
129131@overload
130- def create_op (loop : EventLoop , params : StreamEmit ) -> OpFuture [None ]: ...
132+ def create_op (loop : EventLoop , params : StreamEmit ) -> asyncio . Future [None ]: ...
131133@overload
132- def create_op (loop : EventLoop , params : StreamClose ) -> OpFuture [None ]: ...
134+ def create_op (loop : EventLoop , params : StreamClose ) -> asyncio . Future [None ]: ...
133135@overload
134- def create_op (loop : EventLoop , params : Barrier ) -> OpFuture [int ]: ...
136+ def create_op (loop : EventLoop , params : Barrier ) -> asyncio . Future [int ]: ...
135137@overload
136- def create_op (loop : EventLoop , params : ExternalPromiseCreate ) -> OpFuture [ object ] : ...
138+ def create_op (loop : EventLoop , params : ExternalPromiseCreate ) -> OpFuture : ...
137139@overload
138- def create_op (loop : EventLoop , params : ExternalPromiseComplete ) -> OpFuture [None ]: ...
139- def create_op (loop : EventLoop , params : Op ) -> OpFuture [Any ]:
140+ def create_op (
141+ loop : EventLoop , params : ExternalPromiseComplete
142+ ) -> asyncio .Future [None ]: ...
143+ def create_op (loop : EventLoop , params : Op ) -> asyncio .Future [Any ]:
140144 return loop .create_op (params , external = asyncio .get_running_loop () is not loop )
0 commit comments