Skip to content

Commit 2f607c8

Browse files
Patch circular import
1 parent 7caf0d5 commit 2f607c8

File tree

3 files changed

+9
-11
lines changed

3 files changed

+9
-11
lines changed

src/replit_river/rate_limiter.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,18 @@
44
from contextvars import Context
55
from typing import Literal
66

7+
from replit_river.error_schema import RiverException
78
from replit_river.transport_options import ConnectionRetryOptions
8-
from replit_river.v2.client_transport import BudgetExhaustedException
99

1010
logger = logging.getLogger(__name__)
1111

1212

13+
class BudgetExhaustedException(RiverException):
14+
def __init__(self, code: str, message: str, client_id: str) -> None:
15+
super().__init__(code, message)
16+
self.client_id = client_id
17+
18+
1319
class LeakyBucketRateLimit:
1420
"""Asynchronous leaky bucket rate limiter.
1521

src/replit_river/v2/client_transport.py

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,6 @@ def __init__(self, code: str, message: str, client_id: str) -> None:
2626
self.client_id = client_id
2727

2828

29-
class BudgetExhaustedException(RiverException):
30-
def __init__(self, code: str, message: str, client_id: str) -> None:
31-
super().__init__(code, message)
32-
self.client_id = client_id
33-
34-
3529
class ClientTransport(Generic[HandshakeMetadataType]):
3630
_session: Session | None
3731

src/replit_river/v2/session.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,6 @@
7070
TransportOptions,
7171
UriAndMetadata,
7272
)
73-
from replit_river.v2.client_transport import (
74-
PROTOCOL_VERSION,
75-
)
7673

7774
STREAM_CANCEL_BIT_TYPE = Literal[0b00100]
7875
STREAM_CANCEL_BIT: STREAM_CANCEL_BIT_TYPE = 0b00100
@@ -233,6 +230,7 @@ async def ensure_connected[HandshakeMetadata](
233230
uri_and_metadata_factory: Callable[
234231
[], Awaitable[UriAndMetadata[HandshakeMetadata]]
235232
], # noqa: E501
233+
protocol_version: str,
236234
) -> None:
237235
"""
238236
Either return immediately or establish a websocket connection and return
@@ -266,7 +264,7 @@ async def ensure_connected[HandshakeMetadata](
266264
HandshakeMetadata
267265
]( # noqa: E501
268266
type="HANDSHAKE_REQ",
269-
protocolVersion=PROTOCOL_VERSION,
267+
protocolVersion=protocol_version,
270268
sessionId=self.session_id,
271269
metadata=uri_and_metadata["metadata"],
272270
expectedSessionState=expectedSessionState,

0 commit comments

Comments
 (0)