I’m trying to running the FL project on github , the thing is, when I run the client side with run.sh. It reported the warning/error:
<code>400 "The client is using an unsupported version of the Socket.IO or Engine.IO protocols"
<code>400 "The client is using an unsupported version of the Socket.IO or Engine.IO protocols"
</code>
400 "The client is using an unsupported version of the Socket.IO or Engine.IO protocols"
I checked the code and found that fl_client.py
utilizes the socketIO_client
to support connection. Since the requirements doesn’t contain versions of these packages. I installed them with the pip install -r requirements.txt
. So, the versions of these packages are as follows:
<code>socketIO_client==0.7.2
<code>socketIO_client==0.7.2
Flask-SocketIO==5.3.6
Flask==3.0.3
</code>
socketIO_client==0.7.2
Flask-SocketIO==5.3.6
Flask==3.0.3
I also asked ChatGPT, it suggests to use python-socketio
instead. But when I changed into it, there was a new problem:
<code>Exception in thread Thread-4 (_handle_eio_message):
Traceback (most recent call last):
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/threading.py", line 1073, in _bootstrap_inner
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/threading.py", line 1010, in run
self._target(*self._args, **self._kwargs)
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/site-packages/socketio/client.py", line 512, in _handle_eio_message
self._handle_event(pkt.namespace, pkt.id, pkt.data)
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/site-packages/socketio/client.py", line 386, in _handle_event
r = self._trigger_event(data[0], namespace, *data[1:])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/site-packages/socketio/client.py", line 434, in _trigger_event
TypeError: FederatedClient.register_handles.<locals>.handle_init() missing 1 required positional argument: 'data'
<code>Exception in thread Thread-4 (_handle_eio_message):
Traceback (most recent call last):
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/threading.py", line 1073, in _bootstrap_inner
self.run()
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/threading.py", line 1010, in run
self._target(*self._args, **self._kwargs)
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/site-packages/socketio/client.py", line 512, in _handle_eio_message
self._handle_event(pkt.namespace, pkt.id, pkt.data)
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/site-packages/socketio/client.py", line 386, in _handle_event
r = self._trigger_event(data[0], namespace, *data[1:])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/site-packages/socketio/client.py", line 434, in _trigger_event
return handler(*args)
^^^^^^^^^^^^^^
TypeError: FederatedClient.register_handles.<locals>.handle_init() missing 1 required positional argument: 'data'
</code>
Exception in thread Thread-4 (_handle_eio_message):
Traceback (most recent call last):
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/threading.py", line 1073, in _bootstrap_inner
self.run()
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/threading.py", line 1010, in run
self._target(*self._args, **self._kwargs)
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/site-packages/socketio/client.py", line 512, in _handle_eio_message
self._handle_event(pkt.namespace, pkt.id, pkt.data)
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/site-packages/socketio/client.py", line 386, in _handle_event
r = self._trigger_event(data[0], namespace, *data[1:])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/xxx/miniconda3/envs/flenv/lib/python3.12/site-packages/socketio/client.py", line 434, in _trigger_event
return handler(*args)
^^^^^^^^^^^^^^
TypeError: FederatedClient.register_handles.<locals>.handle_init() missing 1 required positional argument: 'data'
Does anyone has idea how to solve this problem? If so, I’d be very appreciative.
Any idea of how to solve this problem would be appreciated, not limited to the answer.