aiohttp.http_websocket.WebSocketError: Received fragmented control frame
Reproduction Steps
Run the plugin, and wait for this to happen:
Code
2024-05-10 03:14:55 INFO discord.gateway Gateway has successfully RESUMED session 0371eeb1a7104f8e5bb07831b63265ad.
Traceback (most recent call last):
File "/home/andre/prog/PycharmProjects/mav-progs/t.py", line 96, in <module>
run_bot('xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/andre/prog/PycharmProjects/mav-progs/t.py", line 77, in run_bot
client.run(token)
File "/home/andre/prog/PycharmProjects/mav-progs/venv/lib/python3.12/site-packages/discord/client.py", line 1106, in run
asyncio.run(runner())
File "/usr/lib/python3.12/asyncio/runners.py", line 194, in run
return runner.run(main)
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/asyncio/runners.py", line 118, in run
return self._loop.run_until_complete(task)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/asyncio/base_events.py", line 687, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/home/andre/prog/PycharmProjects/mav-progs/venv/lib/python3.12/site-packages/discord/client.py", line 1095, in runner
await self.start(token, reconnect=reconnect)
File "/home/andre/prog/PycharmProjects/mav-progs/venv/lib/python3.12/site-packages/discord/client.py", line 1026, in start
await self.connect(reconnect=reconnect)
File "/home/andre/prog/PycharmProjects/mav-progs/venv/lib/python3.12/site-packages/discord/client.py", line 907, in connect
await self.ws.poll_event()
File "/home/andre/prog/PycharmProjects/mav-progs/venv/lib/python3.12/site-packages/discord/gateway.py", line 626, in poll_event
raise msg.data
File "/home/andre/prog/PycharmProjects/mav-progs/venv/lib/python3.12/site-packages/aiohttp/client_ws.py", line 244, in receive
msg = await self._reader.read()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/andre/prog/PycharmProjects/mav-progs/venv/lib/python3.12/site-packages/aiohttp/streams.py", line 681, in read
return await super().read()
^^^^^^^^^^^^^^^^^^^^
File "/home/andre/prog/PycharmProjects/mav-progs/venv/lib/python3.12/site-packages/aiohttp/streams.py", line 640, in read
await self._waiter
File "/home/andre/prog/PycharmProjects/mav-progs/venv/lib/python3.12/site-packages/aiohttp/http_websocket.py", line 314, in feed_data
return self._feed_data(data)
^^^^^^^^^^^^^^^^^^^^^
File "/home/andre/prog/PycharmProjects/mav-progs/venv/lib/python3.12/site-packages/aiohttp/http_websocket.py", line 321, in _feed_data
for fin, opcode, payload, compressed in self.parse_frame(data):
^^^^^^^^^^^^^^^^^^^^^^
File "/home/andre/prog/PycharmProjects/mav-progs/venv/lib/python3.12/site-packages/aiohttp/http_websocket.py", line 486, in parse_frame
raise WebSocketError(
aiohttp.http_websocket.WebSocketError: Received fragmented control frame
Expected Results
I's expect it to just ignore the fragmented frame, if not able to put it together
Actual Results
see above
System Information
$ python -m discord -v
Python v3.12.3-final
discord.py-self v2.1.0-alpha
discord.py-self metadata: v2.0.0
aiohttp v3.9.4
system info: Linux 6.8.0-31-generic #31-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 20 00:40:06 UTC 2024
Checklist
[X] I have searched the open issues for duplicates.
[X] I have shared the entire traceback.
[X] I am using a user token (and it isn't visible in the code).
This is a Discord issue; their websocket should not be sending fragmented frames. However, I'll implement a fix for this soon as it doesn't look like they're fixing it.
Summary
aiohttp.http_websocket.WebSocketError: Received fragmented control frame
Reproduction Steps
Run the plugin, and wait for this to happen:
Code
Expected Results
I's expect it to just ignore the fragmented frame, if not able to put it together
Actual Results
see above
System Information
$ python -m discord -v
Checklist
Additional Information
No response