Package: solaar
Version: 1.1.18-1
Severity: grave
Tags: upstream
Justification: renders package unusable
Dear Maintainer,
Solaar 1.1.18 crashes now in what I believe is an incompatibility with
python 3.13, which Debian sid now uses. This leads to several
application crashes. Here's one:
```
$ solaar show
solaar version 1.1.18-1
Unifying Receiver
Device path : /dev/hidraw1
USB id : 046d:C52B
Serial : 76939EA7
C Pending : ff
0 : 24.11.B0036
1 : 02.09
3 : AA.AC
Has 1 paired device(s) out of a maximum of 6.
solaar: error: Traceback (most recent call last):
File "/usr/share/solaar/lib/solaar/cli/__init__.py", line 216, in run
m.run(c, args, _find_receiver, _find_device)
~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/solaar/lib/solaar/cli/show.py", line 324, in run
_print_receiver(d)
~~~~~~~~~~~~~~~^^^
File "/usr/share/solaar/lib/solaar/cli/show.py", line 59, in _print_receiver
print(f" Notifications: {', '.join(notification_names)}
(0x{notification_flags:06X})")
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/enum.py", line 1310, in __format__
return str.__format__(str(self), format_spec)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
ValueError: Unknown format code 'X' for object of type 'str'
```
I believe this has to do with how notification_flags changed.
Even if you patch around that, you get crashes like:
```
solaar: error: Traceback (most recent call last):
File "/usr/share/solaar/lib/solaar/cli/__init__.py", line 216, in run
m.run(c, args, _find_receiver, _find_device)
~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/solaar/lib/solaar/cli/show.py", line 329, in run
_print_device(dev, dev.number)
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/usr/share/solaar/lib/solaar/cli/show.py", line 131, in _print_device
notification_flags = _hidpp10.get_notification_flags(dev)
File "/usr/share/solaar/lib/logitech_receiver/hidpp10.py", line 192, in
get_notification_flags
return NotificationFlag(self._get_register(device, Registers.NOTIFICATIONS))
File "/usr/lib/python3.13/enum.py", line 726, in __call__
return cls.__new__(cls, value)
~~~~~~~~~~~^^^^^^^^^^^^
File "/usr/lib/python3.13/enum.py", line 1211, in __new__
raise exc
File "/usr/lib/python3.13/enum.py", line 1188, in __new__
result = cls._missing_(value)
File "/usr/lib/python3.13/enum.py", line 1467, in _missing_
raise ValueError(
"%r is not a valid %s" % (value, cls.__qualname__)
)
ValueError: None is not a valid NotificationFlag
```
-- System Information:
Debian Release: forky/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Kernel: Linux 6.16.9+deb14-amd64 (SMP w/12 CPU threads; PREEMPT)
Kernel taint flags: TAINT_USER
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages solaar depends on:
ii adduser 3.153
ii debconf [debconf-2.0] 1.5.91
ii gir1.2-ayatanaappindicator3-0.1 0.5.94-1
ii gir1.2-gtk-3.0 3.24.51-2
ii gir1.2-notify-0.7 0.8.6-2
ii passwd 1:4.18.0-2
ii python3 3.13.9-2
ii python3-dbus 1.4.0-1+b1
ii python3-evdev 1.9.2-1+b1
ii python3-gi 3.54.5-7+b1
ii python3-psutil 7.1.0-1
ii python3-pyudev 0.24.3-3
ii python3-typing-extensions 4.15.0-1
ii python3-xlib 0.33-5
ii python3-yaml 6.0.2-2+b1
ii udev 259~rc3-1
Versions of packages solaar recommends:
ii upower 1.91.0-1
solaar suggests no packages.
-- debconf information:
solaar/use_plugdev_group: false