From d8db99cc9840d76198ce0cd51de5b64836d366a8 Mon Sep 17 00:00:00 2001 From: moe-berri Date: Thu, 5 Nov 2026 17:12:49 +0800 Subject: [PATCH] fix: use generator annotation for analytics deadline context --- litellm/repositories/analytics_budget.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/litellm/repositories/analytics_budget.py b/litellm/repositories/analytics_budget.py index 3e588a1ac6f..e310d1801a7 100644 --- a/litellm/repositories/analytics_budget.py +++ b/litellm/repositories/analytics_budget.py @@ -1,5 +1,5 @@ import asyncio -from collections.abc import Iterator, Mapping, Sequence +from collections.abc import Generator, Mapping, Sequence from contextlib import AbstractAsyncContextManager, contextmanager from contextvars import ContextVar from datetime import timedelta @@ -48,7 +48,7 @@ SELECT @contextmanager -def analytics_deadline(deadline: float) -> Iterator[None]: +def analytics_deadline(deadline: float) -> Generator[None, None, None]: current: Final = _DEADLINE.get() token: Final = _DEADLINE.set(deadline if current is None else min(current, deadline)) try: @@ -91,7 +91,7 @@ class BoundedAnalyticsDatabase: except ( TransactionExpiredError, TransactionNotStartedError, - asyncio.TimeoutError, # pyright: ignore[reportDeprecated] # Python 3.10 uses a distinct asyncio timeout class + asyncio.TimeoutError, ) as error: raise AnalyticsCapacityError("Analytics exceeded its connection budget. Try again shortly") from error finally: