Xpra-org / xpra

Persistent remote applications for X11; screen sharing for X11, MacOS and MSWindows.

Home Page:https://xpra.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

`'utf-8' codec can't decode byte 0xXX in position 0: yyy`

stdedos opened this issue ยท comments

Describe the bug

(Accidentally) switching language locally to Greek (remote is still outputting US), leads to:

"Xpra-Light-x86_64_6.1-r35982\xpra_cmd" shadow ssh://user@ip/0  --modal-windows=no --headerbar=off --title="@title@ on @@/@server-display@" --encodings=-webp --microphone=off --speaker=off --webcam=no --pulseaudio=no --opengl=no --min-speed=70 --key-shortcut=Shift+F2:toggle_pointer_grab

XPRA_EXECUTABLE=Xpra-Light-x86_64_6.1-r35982
XPRA_FILE_CHOOSER_NATIVE=2


2024-06-26 23:13:08,345 Xpra GTK3 client version 6.1-r35982 (gc1ebe16a5b) beta (light build)
2024-06-26 23:13:08,534  running on Microsoft Windows Microsoft Windows 10 Enterprise
2024-06-26 23:13:08,534  cpython 3.11
2024-06-26 23:13:08,886 GStreamer version 1.24.4
2024-06-26 23:13:08,894 created named pipe 'Xpra\39004'
2024-06-26 23:13:08,938 keyboard layout 'United States - English' : 'us' (0x409)
2024-06-26 23:13:08,967 Connected (version 2.0, client OpenSSH_8.2p1)
2024-06-26 23:13:09,080 SSH password authentication failed:
2024-06-26 23:13:09,080  Bad authentication type
2024-06-26 23:13:09,081   allowed types: ['publickey', 'password']
2024-06-26 23:13:13,721 Authentication (password) successful!
2024-06-26 23:13:13,925 ssh server OS is 'linux-gnu'
2024-06-26 23:13:14,082 paramiko SSH agent forwarding enabled
2024-06-26 23:13:14,139  keyboard settings: layout=us
2024-06-26 23:13:14,141  desktop size is 4480x1516:
2024-06-26 23:13:14,141   Default (1185x401 mm - DPI: 96x96) workarea: 4480x1476
2024-06-26 23:13:14,142     Samsung C32JG5x  2560x1440 at    0x0    (697x392 mm - DPI: 93x93) workarea: 2560x1400
2024-06-26 23:13:14,142     LG IPS234        1920x1080 at 2560x436  (510x290 mm - DPI: 96x95) workarea: 1920x1040 at 2560x436
2024-06-26 23:13:14,203  SSH: 'found existing display 0 : LIVE'
2024-06-26 23:13:14,417 enabled remote logging
2024-06-26 23:13:14,420 Xpra shadow server version 5.0
2024-06-26 23:13:14,421  remote desktop size is 1920x1200
2024-06-26 23:13:14,421   :0.0 (508x318 mm - DPI: 96x96) workarea: 1848x1173 at   72x27
2024-06-26 23:13:14,422     LGD eDP-1        (336x210 mm - DPI: 145x145)
2024-06-26 23:13:14,829 running, 1 windows
2024-06-26 23:13:21,430 server is not responding, drawing spinners over the windows
2024-06-26 23:13:21,681 server is OK again
2024-06-26 23:13:30,322 window 1 has been moved to monitor 1: LG IPS234 1920x1080 at 2560,436
2024-06-26 23:14:33,180 window 1 has been moved to monitor 0: Samsung C32JG5x 2560x1440 at 0,0
2024-06-26 23:14:43,494 window 1 has been moved to monitor 1: LG IPS234 1920x1080 at 2560,436
2024-06-26 23:14:53,654 setting scaling to 67%:
2024-06-26 23:14:53,656 sending updated screen size to server: 6727x2276
2024-06-26 23:14:53,657   Default (1185x401 mm - DPI: 144x144)
2024-06-26 23:14:53,658     Samsung C32JG5x  3844x2162 at    0x0    (697x392 mm - DPI: 140x140) workarea: 3844x2102
2024-06-26 23:14:53,659     LG IPS234        2883x1622 at 3844x655  (510x290 mm - DPI: 144x142) workarea: 2883x1562 at 3844x655
2024-06-26 23:30:19,583 window 1 has been moved to monitor 0: Samsung C32JG5x 2560x1440 at 0,0
2024-06-26 23:30:24,938 setting scaling to 100%:
2024-06-26 23:30:24,940 sending updated screen size to server: 4480x1516
2024-06-26 23:30:24,941   Default (1185x401 mm - DPI: 96x96) workarea: 4480x1476
2024-06-26 23:30:24,942     Samsung C32JG5x  2560x1440 at    0x0    (697x392 mm - DPI: 93x93) workarea: 2560x1400
2024-06-26 23:30:24,942     LG IPS234        1920x1080 at 2560x436  (510x290 mm - DPI: 96x95) workarea: 1920x1040 at 2560x436
2024-06-26 23:36:26,459 window 5 has been moved to monitor 1: LG IPS234 1920x1080 at 2560,436
2024-06-26 23:36:37,526 window 5 has been moved to monitor 0: Samsung C32JG5x 2560x1440 at 0,0
2024-06-26 23:36:50,851 window 5 has been moved to monitor 1: LG IPS234 1920x1080 at 2560,436
2024-06-26 23:37:32,043 window 7 has been moved to monitor 1: LG IPS234 1920x1080 at 2560,436
2024-06-26 23:38:17,130 window 9 has been moved to monitor 1: LG IPS234 1920x1080 at 2560,436
2024-06-26 23:40:42,286 window 9 has been moved to monitor 0: Samsung C32JG5x 2560x1440 at 0,0
2024-06-27 00:45:16,103 keyboard layout 'Greek' : 'gr' (0x408)
2024-06-27 00:45:16,109 keymap has been changed to 'gr'
2024-06-27 00:45:16,109  sending updated mappings to the server
2024-06-27 00:49:03,021 Warning: failed to parse string for key
2024-06-27 00:49:03,021  keyname=Greek_psi, keycode=67
2024-06-27 00:49:03,022  'utf-8' codec can't decode byte 0xf8 in position 0: invalid start byte
2024-06-27 00:49:04,310 Warning: failed to parse string for key
2024-06-27 00:49:04,311  keyname=Greek_tau, keycode=84
2024-06-27 00:49:04,311  'utf-8' codec can't decode byte 0xf4 in position 0: unexpected end of data
2024-06-27 00:49:04,488 Warning: failed to parse string for key
2024-06-27 00:49:04,488  keyname=Greek_omicron, keycode=79
2024-06-27 00:49:04,489  'utf-8' codec can't decode byte 0xef in position 0: unexpected end of data
2024-06-27 00:49:04,579 Warning: failed to parse string for key
2024-06-27 00:49:04,579  keyname=Greek_rho, keycode=82
2024-06-27 00:49:04,580  'utf-8' codec can't decode byte 0xf1 in position 0: unexpected end of data
2024-06-27 00:49:04,703 Warning: failed to parse string for key
2024-06-27 00:49:04,704  keyname=Greek_iota, keycode=73
2024-06-27 00:49:04,704  'utf-8' codec can't decode byte 0xe9 in position 0: unexpected end of data
2024-06-27 00:49:05,189 Warning: failed to parse string for key
2024-06-27 00:49:05,190  keyname=Greek_phi, keycode=70
2024-06-27 00:49:05,190  'utf-8' codec can't decode byte 0xf6 in position 0: invalid start byte
2024-06-27 00:49:11,236 Warning: failed to parse string for key
2024-06-27 00:49:11,237  keyname=Greek_omega, keycode=86
2024-06-27 00:49:11,238  'utf-8' codec can't decode byte 0xf9 in position 0: invalid start byte
2024-06-27 00:49:21,189 Warning: failed to parse string for key
2024-06-27 00:49:21,190  keyname=Greek_alpha, keycode=65
2024-06-27 00:49:21,190  'utf-8' codec can't decode byte 0xe1 in position 0: unexpected end of data
2024-06-27 00:49:35,712 Warning: failed to parse string for key
2024-06-27 00:49:35,713  keyname=Greek_finalsmallsigma, keycode=87
2024-06-27 00:49:35,714  'utf-8' codec can't decode byte 0xf2 in position 0: unexpected end of data
2024-06-27 00:51:37,884 Warning: failed to parse string for key
2024-06-27 00:51:37,885  keyname=Greek_chi, keycode=88
2024-06-27 00:51:37,886  'utf-8' codec can't decode byte 0xf7 in position 0: invalid start byte
2024-06-27 00:51:40,286 Warning: failed to parse string for key
2024-06-27 00:51:40,286  keyname=Greek_delta, keycode=68
2024-06-27 00:51:40,287  'utf-8' codec can't decode byte 0xe4 in position 0: unexpected end of data
2024-06-27 00:51:41,362 Warning: failed to parse string for key
2024-06-27 00:51:41,363  keyname=Greek_gamma, keycode=71
2024-06-27 00:51:41,364  'utf-8' codec can't decode byte 0xe3 in position 0: unexpected end of data
2024-06-27 00:51:41,869 Warning: failed to parse string for key
2024-06-27 00:51:41,870  keyname=Greek_lambda, keycode=76
2024-06-27 00:51:41,870  'utf-8' codec can't decode byte 0xeb in position 0: unexpected end of data
2024-06-27 00:51:42,229 Warning: failed to parse string for key
2024-06-27 00:51:42,230  keyname=Greek_nu, keycode=78
2024-06-27 00:51:42,230  'utf-8' codec can't decode byte 0xed in position 0: unexpected end of data
2024-06-27 00:51:42,278 Warning: failed to parse string for key
2024-06-27 00:51:42,279  keyname=Greek_epsilon, keycode=69
2024-06-27 00:51:42,280  'utf-8' codec can't decode byte 0xe5 in position 0: unexpected end of data
2024-06-27 00:51:42,662 Warning: failed to parse string for key
2024-06-27 00:51:42,663  keyname=Greek_OMEGA, keycode=86
2024-06-27 00:51:42,664  'utf-8' codec can't decode byte 0xd9 in position 0: unexpected end of data
2024-06-27 00:52:01,780 Warning: failed to parse string for key
2024-06-27 00:52:01,781  keyname=Greek_NU, keycode=78
2024-06-27 00:52:01,781  'utf-8' codec can't decode byte 0xcd in position 0: unexpected end of data
2024-06-27 00:52:02,943 Warning: failed to parse string for key
2024-06-27 00:52:02,944  keyname=Greek_sigma, keycode=83
2024-06-27 00:52:02,945  'utf-8' codec can't decode byte 0xf3 in position 0: unexpected end of data
2024-06-27 00:52:04,365 Warning: failed to parse string for key
2024-06-27 00:52:04,365  keyname=Greek_BETA, keycode=66
2024-06-27 00:52:04,366  'utf-8' codec can't decode byte 0xc2 in position 0: unexpected end of data
2024-06-27 00:52:04,473 Warning: failed to parse string for key
2024-06-27 00:52:04,473  keyname=Greek_beta, keycode=66
2024-06-27 00:52:04,474  'utf-8' codec can't decode byte 0xe2 in position 0: unexpected end of data
2024-06-27 00:52:04,504 Warning: failed to parse string for key
2024-06-27 00:52:04,505  keyname=Greek_theta, keycode=85
2024-06-27 00:52:04,506  'utf-8' codec can't decode byte 0xe8 in position 0: unexpected end of data
2024-06-27 00:52:05,673 Warning: failed to parse string for key
2024-06-27 00:52:05,674  keyname=Greek_upsilon, keycode=89
2024-06-27 00:52:05,675  'utf-8' codec can't decode byte 0xf5 in position 0: invalid start byte
2024-06-27 00:52:11,613 Warning: failed to parse string for key
2024-06-27 00:52:11,614  keyname=Greek_kappa, keycode=75
2024-06-27 00:52:11,614  'utf-8' codec can't decode byte 0xea in position 0: unexpected end of data
2024-06-27 00:52:11,958 Warning: failed to parse string for key
2024-06-27 00:52:11,959  keyname=Greek_pi, keycode=80
2024-06-27 00:52:11,959  'utf-8' codec can't decode byte 0xf0 in position 0: unexpected end of data
2024-06-27 00:52:12,259 Warning: failed to parse string for key
2024-06-27 00:52:12,260  keyname=Greek_eta, keycode=72
2024-06-27 00:52:12,261  'utf-8' codec can't decode byte 0xe7 in position 0: unexpected end of data
2024-06-27 00:52:34,334 Warning: failed to parse string for key
2024-06-27 00:52:34,334  keyname=Greek_IOTA, keycode=73
2024-06-27 00:52:34,334  'utf-8' codec can't decode byte 0xc9 in position 0: unexpected end of data
2024-06-27 00:53:52,929 Warning: failed to parse string for key
2024-06-27 00:53:52,929  keyname=Greek_MU, keycode=77
2024-06-27 00:53:52,930  'utf-8' codec can't decode byte 0xcc in position 0: unexpected end of data
2024-06-27 00:54:01,442 Warning: failed to parse string for key
2024-06-27 00:54:01,443  keyname=Greek_mu, keycode=77
2024-06-27 00:54:01,443  'utf-8' codec can't decode byte 0xec in position 0: unexpected end of data
2024-06-27 00:55:04,773 Warning: failed to parse string for key
2024-06-27 00:55:04,774  keyname=Greek_zeta, keycode=90
2024-06-27 00:55:04,775  'utf-8' codec can't decode byte 0xe6 in position 0: unexpected end of data
2024-06-27 00:55:21,417 Warning: failed to parse string for key
2024-06-27 00:55:21,418  keyname=Greek_UPSILON, keycode=89
2024-06-27 00:55:21,418  'utf-8' codec can't decode byte 0xd5 in position 0: unexpected end of data
2024-06-27 00:55:48,952 Warning: failed to parse string for key
2024-06-27 00:55:48,953  keyname=Greek_ALPHA, keycode=65
2024-06-27 00:55:48,954  'utf-8' codec can't decode byte 0xc1 in position 0: invalid start byte
2024-06-27 00:56:01,180 Warning: failed to parse string for key
2024-06-27 00:56:01,181  keyname=Greek_accentdieresis, keycode=87
2024-06-27 00:56:01,181  'utf-8' codec can't decode byte 0xa1 in position 0: invalid start byte
2024-06-27 00:56:11,166 keyboard layout 'United States - English' : 'us' (0x409)
2024-06-27 00:56:11,172 keymap has been changed to 'us'
2024-06-27 00:56:11,173  sending updated mappings to the server
2024-06-27 01:00:18,238 window-close event on desktop or shadow window, disconnecting
2024-06-27 01:00:18,239 SSH EOF on stderr of run-xpra

"was: Xpra-Light-x86_64_6.1-r35982\xpra_cmd" shadow ssh://user@ip/0  --modal-windows=no --headerbar=off --title="@title@ on @@/@server-display@" --encodings=-webp --microphone=off --speaker=off --webcam=no --pulseaudio=no --opengl=no --min-speed=70 --key-shortcut=Shift+F2:toggle_pointer_grab

I am not expecting magic - at least, it would not be such a spammy behavior.
(because of the layouts, and the kb complexities etc - while in client-gr/server-us mode, I cannot type w to the server)

To Reproduce
Steps to reproduce the behavior:

  1. server command
  2. client command
  3. specific action to trigger the bug

System Information (please complete the following information):

  • Server OS: Ubuntu 20.04.6 LTS
  • Client OS: Microsoft Windows [Version 10.0.18363.836]
  • Xpra Server Version: (see above)
  • Xpra Client Version: (see above)

Additional context
Add any other context about the problem here.
Please see "reporting bugs" in the wiki section.

I've changed this to log the message only once.
I will probably regret this when someone complains that keys aren't working and the client log shows nothing unusual...

Aaah ... I thought "it was solvable", eventually ๐Ÿ˜…

Yeah, "I think you will regret it". If that's the solution, you can revert it - it doesn't bother me that much

FYI: this is actually an improvement over the original pygobject behaviour (which was a hard crash!): msys2/MINGW-packages#3228 (comment)

Maybe this will work: keyval_to_unicode.
Applied in 8827968.
Does that help? (6.1-r36223 or later)
If it doesn't, please run the client with -d keyboard so that we can see the keyval.

YES!

This is my output for en-us server, gr client

`1234567890-=;wertyuiop[]\asdfghjkl;'zxcvbnm,./  # plain keys
`1234567890-=;WERTYUIOP[]\AWDFGHJKL;'ZXCVBNM,./  # capslock keys
~!@#$%^&*()_+:ERTYUIOP{}|AWDFGHJKL:"ZXCVBNM<>?  # shift keys

You may notice that shift+w is missing. In Greek shift+w is the modifier that changes e.g. ฮน to ฮ.
It is weird that the same does not happen with ;, shift+;; however, those two apply "different modifications" (ฮฏ and ฯŠ, respectively).
I guess, since shift+w actually both modifications, it is more complicated ๐Ÿ˜…

We do have ofc, a LOT of warnings: (sadly, b47ff2d wasn't compiled ๐Ÿ˜ข)

"Xpra-Light-x86_64_6.1-r36223\xpra_cmd" shadow ssh://user@ip/0  --modal-windows=no --headerbar=off --title="@title@ on @@/@server-display@" --encodings=-webp --microphone=off --speaker=off --webcam=no --pulseaudio=no --opengl=no --min-speed=70 --key-shortcut=Shift+F2:toggle_pointer_grab

XPRA_EXECUTABLE=Xpra-Light-x86_64_6.1-r36223
XPRA_FILE_CHOOSER_NATIVE=2


2024-07-12 21:36:41,407 Xpra GTK3 client version 6.1-r36223 (g8827968ef5) beta (light build)
2024-07-12 21:36:41,579  running on Microsoft Windows Microsoft Windows 10 Enterprise
2024-07-12 21:36:41,579  cpython 3.11
2024-07-12 21:36:42,094 GStreamer version 1.24.5
2024-07-12 21:36:42,102 created named pipe 'Xpra\29188'
2024-07-12 21:36:42,147 keyboard layout 'United States - English' : 'us' (0x409)
2024-07-12 21:36:42,619 Connected (version 2.0, client OpenSSH_8.2p1)
2024-07-12 21:36:42,776 SSH password authentication failed:
2024-07-12 21:36:42,777  Bad authentication type
2024-07-12 21:36:42,777   allowed types: ['publickey', 'password']
2024-07-12 21:36:46,524 Authentication (password) successful!
2024-07-12 21:36:46,792 ssh server OS is 'linux-gnu'
2024-07-12 21:36:46,977 paramiko SSH agent forwarding enabled
2024-07-12 21:36:47,036  keyboard settings: layout=us
2024-07-12 21:36:47,037  desktop size is 4480x1516:
2024-07-12 21:36:47,039   Default (1185x401 mm - DPI: 96x96) workarea: 4480x1476
2024-07-12 21:36:47,039     Samsung C32JG5x  2560x1440 at    0x0    (697x392 mm - DPI: 93x93) workarea: 2560x1400
2024-07-12 21:36:47,039     LG IPS234        1920x1080 at 2560x436  (510x290 mm - DPI: 96x95) workarea: 1920x1040 at 2560x436
2024-07-12 21:36:47,197  SSH: 'Entering daemon mode; any further errors will be reported to:'
2024-07-12 21:36:47,197  SSH: "  '/run/user/1000/xpra/0/server.log'"
2024-07-12 21:36:47,588 enabled remote logging
2024-07-12 21:36:47,590 Xpra shadow server version 5.0
2024-07-12 21:36:47,590  remote desktop size is 1920x1200
2024-07-12 21:36:47,591   :0.0 (508x318 mm - DPI: 96x96) workarea: 1848x1173 at   72x27
2024-07-12 21:36:47,592     LGD eDP-1        (336x210 mm - DPI: 145x145)
2024-07-12 21:36:47,686 running, 1 windows
2024-07-12 21:36:54,601 server is not responding, drawing spinners over the windows
2024-07-12 21:36:54,852 server is OK again
2024-07-12 21:37:11,018 server is not responding, drawing spinners over the windows
2024-07-12 21:37:12,021 server is OK again
2024-07-12 21:37:16,018 server is not responding, drawing spinners over the windows
2024-07-12 21:37:17,776 server is OK again
2024-07-12 21:37:21,019 server is not responding, drawing spinners over the windows
2024-07-12 21:37:23,782 server is OK again
2024-07-12 21:37:25,347 Warning: failed to parse string for key
2024-07-12 21:37:25,348  keyname=Greek_zeta, keycode=90
2024-07-12 21:37:25,348  'utf-8' codec can't decode byte 0xe6 in position 0: unexpected end of data
2024-07-12 21:37:25,540 Warning: failed to parse string for key
2024-07-12 21:37:25,542  keyname=Greek_chi, keycode=88
2024-07-12 21:37:25,542  'utf-8' codec can't decode byte 0xf7 in position 0: invalid start byte
2024-07-12 21:37:25,739 Warning: failed to parse string for key
2024-07-12 21:37:25,740  keyname=Greek_psi, keycode=67
2024-07-12 21:37:25,741  'utf-8' codec can't decode byte 0xf8 in position 0: invalid start byte
2024-07-12 21:37:25,857 keyboard layout 'Greek' : 'gr' (0x408)
2024-07-12 21:37:25,864 keymap has been changed to 'gr'
2024-07-12 21:37:25,865  sending updated mappings to the server
2024-07-12 21:37:26,021 server is not responding, drawing spinners over the windows
2024-07-12 21:37:26,273 server is OK again
2024-07-12 21:37:32,815 Warning: failed to parse string for key
2024-07-12 21:37:32,816  keyname=Greek_omega, keycode=86
2024-07-12 21:37:32,817  'utf-8' codec can't decode byte 0xf9 in position 0: invalid start byte
2024-07-12 21:37:33,062 Warning: failed to parse string for key
2024-07-12 21:37:33,063  keyname=Greek_beta, keycode=66
2024-07-12 21:37:33,063  'utf-8' codec can't decode byte 0xe2 in position 0: unexpected end of data
2024-07-12 21:37:33,278 Warning: failed to parse string for key
2024-07-12 21:37:33,279  keyname=Greek_nu, keycode=78
2024-07-12 21:37:33,279  'utf-8' codec can't decode byte 0xed in position 0: unexpected end of data
2024-07-12 21:37:33,515 Warning: failed to parse string for key
2024-07-12 21:37:33,515  keyname=Greek_mu, keycode=77
2024-07-12 21:37:33,516  'utf-8' codec can't decode byte 0xec in position 0: unexpected end of data
2024-07-12 21:37:35,856 Warning: failed to parse string for key
2024-07-12 21:37:35,857  keyname=Greek_alpha, keycode=65
2024-07-12 21:37:35,857  'utf-8' codec can't decode byte 0xe1 in position 0: unexpected end of data
2024-07-12 21:37:36,073 Warning: failed to parse string for key
2024-07-12 21:37:36,074  keyname=Greek_sigma, keycode=83
2024-07-12 21:37:36,074  'utf-8' codec can't decode byte 0xf3 in position 0: unexpected end of data
2024-07-12 21:37:36,288 Warning: failed to parse string for key
2024-07-12 21:37:36,288  keyname=Greek_delta, keycode=68
2024-07-12 21:37:36,289  'utf-8' codec can't decode byte 0xe4 in position 0: unexpected end of data
2024-07-12 21:37:36,524 Warning: failed to parse string for key
2024-07-12 21:37:36,525  keyname=Greek_phi, keycode=70
2024-07-12 21:37:36,526  'utf-8' codec can't decode byte 0xf6 in position 0: invalid start byte
2024-07-12 21:37:36,756 Warning: failed to parse string for key
2024-07-12 21:37:36,756  keyname=Greek_gamma, keycode=71
2024-07-12 21:37:36,757  'utf-8' codec can't decode byte 0xe3 in position 0: unexpected end of data
2024-07-12 21:37:37,007 Warning: failed to parse string for key
2024-07-12 21:37:37,008  keyname=Greek_eta, keycode=72
2024-07-12 21:37:37,009  'utf-8' codec can't decode byte 0xe7 in position 0: unexpected end of data
2024-07-12 21:37:37,259 Warning: failed to parse string for key
2024-07-12 21:37:37,260  keyname=Greek_xi, keycode=74
2024-07-12 21:37:37,260  'utf-8' codec can't decode byte 0xee in position 0: unexpected end of data
2024-07-12 21:37:37,508 Warning: failed to parse string for key
2024-07-12 21:37:37,509  keyname=Greek_kappa, keycode=75
2024-07-12 21:37:37,509  'utf-8' codec can't decode byte 0xea in position 0: unexpected end of data
2024-07-12 21:37:37,738 Warning: failed to parse string for key
2024-07-12 21:37:37,739  keyname=Greek_lambda, keycode=76
2024-07-12 21:37:37,740  'utf-8' codec can't decode byte 0xeb in position 0: unexpected end of data
2024-07-12 21:37:39,441 Warning: failed to parse string for key
2024-07-12 21:37:39,442  keyname=Greek_finalsmallsigma, keycode=87
2024-07-12 21:37:39,443  'utf-8' codec can't decode byte 0xf2 in position 0: unexpected end of data
2024-07-12 21:37:39,672 Warning: failed to parse string for key
2024-07-12 21:37:39,673  keyname=Greek_epsilon, keycode=69
2024-07-12 21:37:39,673  'utf-8' codec can't decode byte 0xe5 in position 0: unexpected end of data
2024-07-12 21:37:39,963 Warning: failed to parse string for key
2024-07-12 21:37:39,964  keyname=Greek_rho, keycode=82
2024-07-12 21:37:39,964  'utf-8' codec can't decode byte 0xf1 in position 0: unexpected end of data
2024-07-12 21:37:40,247 Warning: failed to parse string for key
2024-07-12 21:37:40,248  keyname=Greek_tau, keycode=84
2024-07-12 21:37:40,248  'utf-8' codec can't decode byte 0xf4 in position 0: unexpected end of data
2024-07-12 21:37:40,516 Warning: failed to parse string for key
2024-07-12 21:37:40,517  keyname=Greek_upsilon, keycode=89
2024-07-12 21:37:40,518  'utf-8' codec can't decode byte 0xf5 in position 0: invalid start byte
2024-07-12 21:37:40,785 Warning: failed to parse string for key
2024-07-12 21:37:40,786  keyname=Greek_theta, keycode=85
2024-07-12 21:37:40,786  'utf-8' codec can't decode byte 0xe8 in position 0: unexpected end of data
2024-07-12 21:37:41,053 Warning: failed to parse string for key
2024-07-12 21:37:41,054  keyname=Greek_iota, keycode=73
2024-07-12 21:37:41,055  'utf-8' codec can't decode byte 0xe9 in position 0: unexpected end of data
2024-07-12 21:37:41,306 Warning: failed to parse string for key
2024-07-12 21:37:41,307  keyname=Greek_omicron, keycode=79
2024-07-12 21:37:41,307  'utf-8' codec can't decode byte 0xef in position 0: unexpected end of data
2024-07-12 21:37:41,592 Warning: failed to parse string for key
2024-07-12 21:37:41,593  keyname=Greek_pi, keycode=80
2024-07-12 21:37:41,593  'utf-8' codec can't decode byte 0xf0 in position 0: unexpected end of data
2024-07-12 21:37:48,255 Warning: failed to parse string for key
2024-07-12 21:37:48,256  keyname=Greek_ZETA, keycode=90
2024-07-12 21:37:48,257  'utf-8' codec can't decode byte 0xc6 in position 0: unexpected end of data
2024-07-12 21:37:48,433 Warning: failed to parse string for key
2024-07-12 21:37:48,434  keyname=Greek_CHI, keycode=88
2024-07-12 21:37:48,434  'utf-8' codec can't decode byte 0xd7 in position 0: unexpected end of data
2024-07-12 21:37:48,633 Warning: failed to parse string for key
2024-07-12 21:37:48,634  keyname=Greek_PSI, keycode=67
2024-07-12 21:37:48,634  'utf-8' codec can't decode byte 0xd8 in position 0: unexpected end of data
2024-07-12 21:37:48,865 Warning: failed to parse string for key
2024-07-12 21:37:48,866  keyname=Greek_OMEGA, keycode=86
2024-07-12 21:37:48,866  'utf-8' codec can't decode byte 0xd9 in position 0: unexpected end of data
2024-07-12 21:37:52,488 Warning: failed to parse string for key
2024-07-12 21:37:52,489  keyname=Greek_BETA, keycode=66
2024-07-12 21:37:52,490  'utf-8' codec can't decode byte 0xc2 in position 0: unexpected end of data
2024-07-12 21:37:55,622 Warning: failed to parse string for key
2024-07-12 21:37:55,623  keyname=Greek_NU, keycode=78
2024-07-12 21:37:55,624  'utf-8' codec can't decode byte 0xcd in position 0: unexpected end of data
2024-07-12 21:37:55,928 Warning: failed to parse string for key
2024-07-12 21:37:55,930  keyname=Greek_MU, keycode=77
2024-07-12 21:37:55,930  'utf-8' codec can't decode byte 0xcc in position 0: unexpected end of data
2024-07-12 21:37:58,293 Warning: failed to parse string for key
2024-07-12 21:37:58,294  keyname=Greek_ALPHA, keycode=65
2024-07-12 21:37:58,294  'utf-8' codec can't decode byte 0xc1 in position 0: invalid start byte
2024-07-12 21:37:58,488 Warning: failed to parse string for key
2024-07-12 21:37:58,489  keyname=Greek_SIGMA, keycode=83
2024-07-12 21:37:58,489  'utf-8' codec can't decode byte 0xd3 in position 0: unexpected end of data
2024-07-12 21:37:58,758 Warning: failed to parse string for key
2024-07-12 21:37:58,759  keyname=Greek_DELTA, keycode=68
2024-07-12 21:37:58,759  'utf-8' codec can't decode byte 0xc4 in position 0: unexpected end of data
2024-07-12 21:37:59,100 Warning: failed to parse string for key
2024-07-12 21:37:59,101  keyname=Greek_PHI, keycode=70
2024-07-12 21:37:59,102  'utf-8' codec can't decode byte 0xd6 in position 0: unexpected end of data
2024-07-12 21:37:59,102 Warning: failed to parse string for key
2024-07-12 21:37:59,103  keyname=Greek_GAMMA, keycode=71
2024-07-12 21:37:59,104  'utf-8' codec can't decode byte 0xc3 in position 0: unexpected end of data
2024-07-12 21:38:01,212 Warning: failed to parse string for key
2024-07-12 21:38:01,213  keyname=Greek_ETA, keycode=72
2024-07-12 21:38:01,214  'utf-8' codec can't decode byte 0xc7 in position 0: unexpected end of data
2024-07-12 21:38:01,465 Warning: failed to parse string for key
2024-07-12 21:38:01,466  keyname=Greek_XI, keycode=74
2024-07-12 21:38:01,466  'utf-8' codec can't decode byte 0xce in position 0: unexpected end of data
2024-07-12 21:38:01,713 Warning: failed to parse string for key
2024-07-12 21:38:01,713  keyname=Greek_KAPPA, keycode=75
2024-07-12 21:38:01,714  'utf-8' codec can't decode byte 0xca in position 0: unexpected end of data
2024-07-12 21:38:02,003 Warning: failed to parse string for key
2024-07-12 21:38:02,004  keyname=Greek_LAMBDA, keycode=76
2024-07-12 21:38:02,004  'utf-8' codec can't decode byte 0xcb in position 0: unexpected end of data
2024-07-12 21:38:03,294 Warning: failed to parse string for key
2024-07-12 21:38:03,295  keyname=Greek_accentdieresis, keycode=87
2024-07-12 21:38:03,295  'utf-8' codec can't decode byte 0xa1 in position 0: invalid start byte
2024-07-12 21:38:03,578 Warning: failed to parse string for key
2024-07-12 21:38:03,579  keyname=Greek_EPSILON, keycode=69
2024-07-12 21:38:03,579  'utf-8' codec can't decode byte 0xc5 in position 0: unexpected end of data
2024-07-12 21:38:03,940 Warning: failed to parse string for key
2024-07-12 21:38:03,941  keyname=Greek_RHO, keycode=82
2024-07-12 21:38:03,941  'utf-8' codec can't decode byte 0xd1 in position 0: unexpected end of data
2024-07-12 21:38:04,262 Warning: failed to parse string for key
2024-07-12 21:38:04,263  keyname=Greek_TAU, keycode=84
2024-07-12 21:38:04,264  'utf-8' codec can't decode byte 0xd4 in position 0: unexpected end of data
2024-07-12 21:38:04,546 Warning: failed to parse string for key
2024-07-12 21:38:04,547  keyname=Greek_UPSILON, keycode=89
2024-07-12 21:38:04,547  'utf-8' codec can't decode byte 0xd5 in position 0: unexpected end of data
2024-07-12 21:38:04,885 Warning: failed to parse string for key
2024-07-12 21:38:04,886  keyname=Greek_THETA, keycode=85
2024-07-12 21:38:04,887  'utf-8' codec can't decode byte 0xc8 in position 0: unexpected end of data
2024-07-12 21:38:05,229 Warning: failed to parse string for key
2024-07-12 21:38:05,230  keyname=Greek_IOTA, keycode=73
2024-07-12 21:38:05,230  'utf-8' codec can't decode byte 0xc9 in position 0: unexpected end of data
2024-07-12 21:38:05,498 Warning: failed to parse string for key
2024-07-12 21:38:05,499  keyname=Greek_OMICRON, keycode=79
2024-07-12 21:38:05,499  'utf-8' codec can't decode byte 0xcf in position 0: unexpected end of data
2024-07-12 21:38:05,767 Warning: failed to parse string for key
2024-07-12 21:38:05,767  keyname=Greek_PI, keycode=80
2024-07-12 21:38:05,768  'utf-8' codec can't decode byte 0xd0 in position 0: unexpected end of data
2024-07-12 21:40:00,850 keyboard layout 'United States - English' : 'us' (0x409)
2024-07-12 21:40:00,856 keymap has been changed to 'us'
2024-07-12 21:40:00,857  sending updated mappings to the server
2024-07-12 21:40:03,610 keyboard layout 'Greek' : 'gr' (0x408)
2024-07-12 21:40:03,616 keymap has been changed to 'gr'
2024-07-12 21:40:03,617  sending updated mappings to the server

However, don't let my report change anything: It mostly works. I didn't expect this to be that easy after all ๐Ÿ˜….

Thank you for not giving up โค๏ธ

It even works in reverse (gr server, en-us client)

I've backported it to all supported branches (but not pushed yet to not overload the CI) - I just wished I had done that before releasing the final 3.1.8 LTS last night...

For git master, I even made it the default as I trust the API call that never crashed / does not raise UnicodeDecodeError.
Warnings will only be logged if both API calls fail to give us a valid string for the key event.

You may notice...

I had not.
TBH, I have no idea what works / doesn't work at this point - as I don't have any problems with the keyboard layouts that I test with.
I guess it's too early to close this ticket?

I guess it's too early to close this ticket?

"It has been an immerse improvement" since the previous version - so, I don't care ๐Ÿ™ƒ ๐Ÿš€

But of course there is this bug ๐Ÿ˜•