poljar / weechat-matrix

Weechat Matrix protocol script written in python
Other
957 stars 119 forks source link

KeyError: 'invite' #284

Closed bodqhrohro closed 3 years ago

bodqhrohro commented 3 years ago

It happened after I created a public group in Element and invited some users. The error renders weechat-matrix unusable, as even the chat list is not populated.

15:51 -- matrix: Already logged in, syncing...
15:51 python: stdout/stderr (matrix): Traceback (most recent call last):
15:51 python: stdout/stderr (matrix):   File "/home/bodqhrohro/.weechat/python/matrix/utf.py", line 89, in wrapper
15:51 python: stdout/stderr (matrix):     return function(*args, **kwargs)
15:51 python: stdout/stderr (matrix):   File "/home/bodqhrohro/.weechat/python/autoload/matrix.py", line 334, in receive_cb
15:51 python: stdout/stderr (matrix):     response = server.client.next_response()
15:51 python: stdout/stderr (matrix):   File "/usr/lib/python3/dist-packages/nio/client/http_client.py", line 1342, in next_response
15:51 python: stdout/stderr (matrix):     response = self._create_response(
15:51 python: stdout/stderr (matrix):   File "/usr/lib/python3/dist-packages/nio/client/http_client.py", line 1277, in _create_response
15:51 python: stdout/stderr (matrix):     response = request_class.from_dict(parsed_dict, *extra_data)
15:51 python: stdout/stderr (matrix):   File "/usr/lib/python3/dist-packages/nio/responses.py", line 170, in wrapper
15:51 python: stdout/stderr (matrix):     return f(cls, parsed_dict, *args, **kwargs)
15:51 python: stdout/stderr (matrix):   File "/usr/lib/python3/dist-packages/nio/responses.py", line 1745, in from_dict
15:51 python: stdout/stderr (matrix):     rooms = SyncResponse._get_room_info(parsed_dict["rooms"])
15:51 python: stdout/stderr (matrix):   File "/usr/lib/python3/dist-packages/nio/responses.py", line 1688, in _get_room_info
15:51 python: stdout/stderr (matrix):     for room_id, room_dict in parsed_dict["invite"].items():
15:51 python: stdout/stderr (matrix): KeyError: 'invite'
15:51 =!= python: error in function "receive_cb"
poljar commented 3 years ago

Any info on which matrix-nio version this is happening with?

bodqhrohro commented 3 years ago

0.16.0-1, which remained from my attempt to install weechat-marix from the Debian repos.

Solved by upgrading to the latest one from pip.

AiyionPrime commented 3 years ago

0.15.2 didn't cut it either; updating to latest pip helped; maybe someone updates the requirements.txt?

matrix-nio[e2e]>=0.6 seems to be a small understatement.

kenrestivo commented 2 years ago

This is still happening with matrix-nio 0.18.7 which according to pip3 is the latest.

$ pip3 install -U matrix-nio
Requirement already satisfied: matrix-nio in ./.weechat/python/venv/lib/python3.9/site-packages (0.18.7)
AiyionPrime commented 2 years ago

Sure you didn't mix up python versions? having a running python3 weechat is not impossible, but uncommon, iirc.