diff --git a/src/blackd/middlewares.py b/src/blackd/middlewares.py index 370e0ae222e..bc9fc8ff9fd 100644 --- a/src/blackd/middlewares.py +++ b/src/blackd/middlewares.py @@ -3,10 +3,19 @@ from aiohttp.web_request import Request from aiohttp.web_response import StreamResponse +Handler = Callable[[Request], Awaitable[StreamResponse]] + if TYPE_CHECKING: + from aiohttp.typedefs import Middleware + F = TypeVar("F", bound=Callable[..., Any]) middleware: Callable[[F], F] else: + try: + from aiohttp.typedefs import Middleware + except ImportError: + Middleware = Callable[[Request, Handler], Awaitable[StreamResponse]] + try: from aiohttp.web_middlewares import middleware except ImportError: @@ -14,9 +23,6 @@ # so if it doesn't exist anymore, define a no-op for forward compatibility. middleware = lambda x: x # noqa: E731 -Handler = Callable[[Request], Awaitable[StreamResponse]] -Middleware = Callable[[Request, Handler], Awaitable[StreamResponse]] - def cors(allow_headers: Iterable[str]) -> Middleware: @middleware