easyrpc icon indicating copy to clipboard operation
easyrpc copied to clipboard

EasyRpcServer non iterable return types failing

Open codemation opened this issue 3 years ago • 0 comments

Description

Found in easyjobs, data of only type int sent between RPC endpoints fails with the following exception:

Traceback (most recent call last):
  File "/home/tso/Documents/python/easyjobs/jobs-env/lib/python3.8/site-packages/easyrpc/server.py", line 491, in server_request
    if 'GENERATOR_START' in result:
TypeError: argument of type 'int' is not iterable
07-22 10:31 EasyRpc-server /ws/jobs ERROR    error during server_request
Traceback (most recent call last):
  File "/home/tso/Documents/python/easyjobs/jobs-env/lib/python3.8/site-packages/easyrpc/server.py", line 491, in server_request
    if 'GENERATOR_START' in result:
TypeError: argument of type 'int' is not iterable

Solution:

Check if result is iterable by inspecting for 'contains' attribute, allowing for inspection of 'GENERATOR_START' for generator detectoin

  • [ ] - Mirror Proxy implementation of iterable detection
  • [ ] - Create Unit tests to ensure values can be transported

codemation avatar Jul 22 '21 08:07 codemation