revert(toolbox-core): Reverts "fix(toolbox-core): Prevent ToolboxClient
from closing externally managed client sessions"
#271
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR reverts the
__del__
method that was added toToolboxClient
andToolboxSyncClient
(#260) as a safety-net (context) to close the underlying client session.Reasoning for Reversion
The
__del__
method was intended to prevent resource leaks by closing sessions that users forgot to close manually. However, it introduced a critical bug in production scenarios.The issue arises when the
ToolboxClient
orToolboxSyncClient
instance, which manages the session, goes out of scope, while the tools it loaded remain in use. This triggers the__del__
method on the client, prematurely closing the session and causing any ongoing operations by the tools to fail.This problem affects:
ToolboxClient
: When it manages its own session.ToolboxSyncClient
: In all use cases, as it always manages its own session in a background thread.Given that the documented methods for session management (
async with
andclient.close()
) are sufficient, this safety-net was causing more harm than good. Removing it restores the expected behavior and prevents these unintended session closures.