feat(client): synchronous blocking execute task interface
This MR adds a blocking API for executing tasks: Client.execute_blocking.
- This API has the same signature as its asynchronous variant
Client.execute.- The only exception is that the blocking interface has an additional
timeoutparameter.
- The only exception is that the blocking interface has an additional
- The new API is built on top of
BlockingTaskClient, which uses thewebsocketslibrary for synchronous websockets. - Add tests for all new code.
- Two small general improvements:
- Slightly improve performance of the task router, as it reuses the serialized task message.
- Make the typing overloads of
Client.executeandClient.requestconsistent.
Closes #159 (closed)
Edited by Hugo Kerstens