Sorry, I have another "feature broken with traceback" ticket. As usual, the server is a Fedora 26 trunk r18035 (freshly updated).
When running xpra info
I get this traceback:
Exception in thread parse: Traceback (most recent call last): File "/usr/lib64/python2.7/threading.py", line 804, in __bootstrap_inner self.run() File "/usr/lib64/python2.7/threading.py", line 757, in run self.__target(*self.__args, **self.__kwargs) File "/usr/lib64/python2.7/site-packages/xpra/net/protocol.py", line 738, in _read_parse_thread_loop self._internal_error("error in network packet reading/parsing", e, exc_info=True) File "/usr/lib64/python2.7/site-packages/xpra/net/protocol.py", line 676, in _internal_error log.error("Error: %s", message, exc_info=ei) File "/usr/lib64/python2.7/site-packages/xpra/log.py", line 379, in error self.log(logging.ERROR, msg, *args, **kwargs) File "/usr/lib64/python2.7/site-packages/xpra/log.py", line 366, in log global_logging_handler(self.logger.log, level, msg, *args, **kwargs) File "/usr/lib64/python2.7/site-packages/xpra/log.py", line 111, in standard_logging log(level, msg, *args, **kwargs) File "/usr/lib64/python2.7/logging/__init__.py", line 1231, in log self._log(level, msg, args, **kwargs) File "/usr/lib64/python2.7/logging/__init__.py", line 1286, in _log self.handle(record) File "/usr/lib64/python2.7/logging/__init__.py", line 1296, in handle self.callHandlers(record) File "/usr/lib64/python2.7/logging/__init__.py", line 1335, in callHandlers if record.levelno >= hdlr.level: File "/usr/lib64/python2.7/codecs.py", line 401, in __getattr__ return getattr(self.stream, name) AttributeError: 'file' object has no attribute 'level'
This was caused by r18030 which was trying to make unicode play nice with python2 and python3 on the win32 console:
What this should allow us to do is use unicode characters anywhere strings are allowed, ie:
python2 /usr/bin/xpra start --session-name="Schrödinger"
Then both python2 and python3 versions should be able to print the session name without errors:
python2 /usr/bin/xpra id
python3 /usr/bin/xpra id
This should also fix "xpra info" errors when some of the window metadata contains unicode. (ie: running applications with a non-english locale)
Some entertaining read on the subject:
sys.setdefaultencoding('UTF8')
considered harmful
Noted, closing.
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1747