The graceful shutdown of active sessions was removed, as they should not be closed when the RPC client is dropped. Instead, we should explicitly invoke the appropriate functions.
Reasons:
Blocking is not acceptable because drops should be fast, and sessions should be closed asynchronously.
Spawning a new task is also not acceptable since drops should (mostly) be deterministic. There could be issues if the code following an implicit drop call relies on sessions being closed (not a problem yet).
If the Tokio runtime stops and the async tasks spawned during the drop haven't completed, they will be destroyed without being executed.
The graceful shutdown of active sessions was removed, as they should not be closed when the RPC client is dropped. Instead, we should explicitly invoke the appropriate functions.
Reasons: