-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Labels
Description
Package name
tornado
Package version
6.5.2, 6.4.2, 6.4.1, 6.4.0, 6.3.3 and maybe earlier
PyPI URL
https://pypi.org/project/tornado/
piwheels URL
https://www.piwheels.org/project/tornado/
Python version
- Python 3.9
- Python 3.11
This is for Raspberry Pi users only. If your issue does not relate to usage on Raspberry Pi using the official distro, please don't create an issue here.
yes
The project page includes links to existing issues about the package. Please check this issue doesn't already exist.
yes
Are you the project maintainer?
- I am the maintainer
More information
Websocket functionality in Tornado is broken using the provided packages for 6.4.x (and apparently earlier) under Python 3.11:
2025-09-09 10:21:38,730 - tornado.application - ERROR - Uncaught exception GET /sockjs/946/3nwumjt5/websocket (192.168.1.181)
HTTPServerRequest(protocol='http', host='octopic.lan', method='GET', uri='/sockjs/946/3nwumjt5/websocket', version='HTTP/1.1', remote_ip='192.168.1.181')
Traceback (most recent call last):
File "/opt/octopi/oprint/lib/python3.11/site-packages/tornado/web.py", line 1790, in _execute
result = await result
^^^^^^^^^^^^
File "/opt/octopi/oprint/lib/python3.11/site-packages/tornado/websocket.py", line 273, in get
await self.ws_connection.accept_connection(self)
File "/opt/octopi/oprint/lib/python3.11/site-packages/tornado/websocket.py", line 863, in accept_connection
await self._accept_connection(handler)
File "/opt/octopi/oprint/lib/python3.11/site-packages/tornado/websocket.py", line 946, in _accept_connection
await self._receive_frame_loop()
File "/opt/octopi/oprint/lib/python3.11/site-packages/tornado/websocket.py", line 1102, in _receive_frame_loop
await self._receive_frame()
File "/opt/octopi/oprint/lib/python3.11/site-packages/tornado/websocket.py", line 1160, in _receive_frame
data = _websocket_mask(self._frame_mask, data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
SystemError: PY_SSIZE_T_CLEAN macro must be defined for '#' formats
I tested the following versions:
- piwheels 6.3.3: ❌
- piwheels 6.4.0: ❌
- piwheels 6.4.1: ❌
- piwheels 6.4.2: ❌
- piwheels 6.5.0: ✅
- piwheels 6.5.1: ✅
- piwheels 6.5.2: ❌
I also tested the 6.4.2 sdist available on PyPI and that works, so this is definitely an issue with the available packages:
- pypi sdist 6.4.2: ✅
Those packages also were rebuilt on Sep 04, maybe another ABI issue like #580?
guysoft