Skip to content

Commit 713f78c

Browse files
Dunno
1 parent 102cf66 commit 713f78c

File tree

2 files changed

+7
-12
lines changed

2 files changed

+7
-12
lines changed

src/replit_river/client_session.py

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ async def _handle_messages_from_ws(self) -> None:
173173
# The client is no longer interested in this stream,
174174
# just drop the message.
175175
pass
176-
except RuntimeError as e:
176+
except Exception as e:
177177
raise InvalidMessageException(e) from e
178178
else:
179179
raise InvalidMessageException(
@@ -244,7 +244,7 @@ async def send_rpc(
244244
service_name,
245245
procedure_name,
246246
) from e
247-
except RuntimeError as e:
247+
except Exception as e:
248248
raise RiverException(ERROR_CODE_STREAM_CLOSED, str(e)) from e
249249
if not response.get("ok", False):
250250
try:
@@ -330,7 +330,7 @@ async def send_upload(
330330
service_name,
331331
procedure_name,
332332
) from e
333-
except RuntimeError as e:
333+
except Exception as e:
334334
raise RiverException(ERROR_CODE_STREAM_CLOSED, str(e)) from e
335335
if not response.get("ok", False):
336336
try:
@@ -387,15 +387,13 @@ async def send_subscription(
387387
)
388388
continue
389389
yield response_deserializer(item["payload"])
390-
except (RuntimeError, ChannelClosed) as e:
390+
except Exception as e:
391391
raise RiverServiceException(
392392
ERROR_CODE_STREAM_CLOSED,
393393
"Stream closed before response",
394394
service_name,
395395
procedure_name,
396396
) from e
397-
except Exception as e:
398-
raise e
399397
finally:
400398
output.close()
401399

@@ -490,17 +488,14 @@ async def _encode_stream() -> None:
490488
)
491489
continue
492490
yield response_deserializer(item["payload"])
493-
except (RuntimeError, ChannelClosed) as e:
491+
except Exception as e:
492+
logger.exception("There was a problem")
494493
raise RiverServiceException(
495494
ERROR_CODE_STREAM_CLOSED,
496495
"Stream closed before response",
497496
service_name,
498497
procedure_name,
499498
) from e
500-
except Exception as e:
501-
raise e
502-
finally:
503-
output.close()
504499

505500
async def send_close_stream(
506501
self,

src/replit_river/v2/session.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -878,7 +878,7 @@ async def _encode_stream() -> None:
878878
try:
879879
async for result in output:
880880
# Raise as early as we possibly can in case of an emission error
881-
if err := emitter_task.exception():
881+
if err := emitter_task.done() and emitter_task.exception():
882882
raise err
883883
if result.get("type") == "CLOSE":
884884
break

0 commit comments

Comments
 (0)