Gajim can't handle "interrobang" character in user's XMPP address
Versions
- OS: Ubuntu 22.04.1 LTS
- GTK Version: 3.24.33
- PyGObject Version: 3.42.1
- GLib Version : 2.71.3
- python-nbxmpp Version: 2.0.4
- Gajim Version: 1.3.3
Traceback
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/nbxmpp/protocol.py", line 501, in validate_localpart
return username.enforce(localpart)
File "/usr/lib/python3/dist-packages/precis_i18n/profile.py", line 69, in enforce
return self.base.enforce(temp, self.name)
File "/usr/lib/python3/dist-packages/precis_i18n/baseclass.py", line 57, in enforce
raise_error(codec_name, value, i, kind)
File "/usr/lib/python3/dist-packages/precis_i18n/baseclass.py", line 103, in raise_error
raise UnicodeEncodeError(encoding, value, start, end, reason)
UnicodeEncodeError: 'UsernameCaseMapped' codec can't encode character '\u203d' in position 0: DISALLOWED/punctuation
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/gajim/message_window.py", line 831, in _on_notebook_switch_page
old_ctrl.set_control_active(False)
File "/usr/lib/python3/dist-packages/gajim/chat_control_base.py", line 1415, in set_control_active
con.get_module('Chatstate').set_chatstate(self.contact,
File "/usr/lib/python3/dist-packages/gajim/common/modules/chatstates.py", line 50, in func_wrapper
return func(self, *args, **kwargs)
File "/usr/lib/python3/dist-packages/gajim/common/modules/chatstates.py", line 259, in set_chatstate
if self._con.get_own_jid().bare_match(contact.jid):
File "/usr/lib/python3/dist-packages/nbxmpp/protocol.py", line 712, in bare_match
other = JID.from_string(other)
File "/usr/lib/python3/dist-packages/nbxmpp/protocol.py", line 628, in from_string
return cls(jid=None,
File "/usr/lib/python3/dist-packages/nbxmpp/protocol.py", line 598, in __new__
localpart = validate_localpart(localpart)
File "/usr/lib/python3/dist-packages/nbxmpp/protocol.py", line 503, in validate_localpart
raise LocalpartNotAllowedChar
nbxmpp.protocol.LocalpartNotAllowedChar: Not allowed character in localpart
Steps to reproduce the problem
...