From 1acd1aefc457bcc203334923d3e71bc1f8e924ab Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 7 Jan 2025 19:57:51 +0000 Subject: [PATCH] fix(client): only call .close() when needed --- src/finch/_base_client.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/finch/_base_client.py b/src/finch/_base_client.py index d4625d7c..b58fd57e 100644 --- a/src/finch/_base_client.py +++ b/src/finch/_base_client.py @@ -768,6 +768,9 @@ def __init__(self, **kwargs: Any) -> None: class SyncHttpxClientWrapper(DefaultHttpxClient): def __del__(self) -> None: + if self.is_closed: + return + try: self.close() except Exception: @@ -1349,6 +1352,9 @@ def __init__(self, **kwargs: Any) -> None: class AsyncHttpxClientWrapper(DefaultAsyncHttpxClient): def __del__(self) -> None: + if self.is_closed: + return + try: # TODO(someday): support non asyncio runtimes here asyncio.get_running_loop().create_task(self.aclose())