Skip to content

support tornado 6.x or wdb won't run on python 3.10+ #155

@massimiliano-della-rovere

Description

Currently wdb-server 3.3.0 requires tornado<6.0,>=5.0.
The newest version of tornado is v6.1.

In Python 3.10 MutableMapping was moved

  • from collections.MutableMapping
  • to collections.abc.MutableMapping
    and this causes the following error when starting WDB (which uses tornado 5.1.1)
(py3.10.4) root@a321832d390a:/# wdb.server.py 
Traceback (most recent call last):
  File "/tcwa/venv/py3.10.4/bin/wdb.server.py", line 9, in <module>
    from tornado_systemd import SYSTEMD_SOCKET_FD, SystemdHTTPServer
  File "/tcwa/venv/py3.10.4/lib/python3.10/site-packages/tornado_systemd/__init__.py", line 4, in <module>
    from tornado.httpserver import HTTPServer
  File "/tcwa/venv/py3.10.4/lib/python3.10/site-packages/tornado/httpserver.py", line 33, in <module>
    from tornado.http1connection import HTTP1ServerConnection, HTTP1ConnectionParameters
  File "/tcwa/venv/py3.10.4/lib/python3.10/site-packages/tornado/http1connection.py", line 30, in <module>
    from tornado import httputil
  File "/tcwa/venv/py3.10.4/lib/python3.10/site-packages/tornado/httputil.py", line 107, in <module>
    class HTTPHeaders(collections.MutableMapping):
AttributeError: module 'collections' has no attribute 'MutableMapping'

Of course you can't patch tornado v5.x since it's not the newest major version and it was correctly developed before python 3.10 came out.

So wdb should use Tornado 6.1+

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions