** Description changed:
[Impact]
DisplayCAL, when released, was only compatible with Python 3.8-3.11.
However, all it needed was WxWidgets 4.1.1 and a few patches to make it
work with Python 3.12. Without, it would simply fail. Namely, it needed
to be patched to remove the Python version check upon launch.
[Test Case]
* Install displaycal
* Run displaycal
Expected: Run normally
Result:
Traceback (most recent call last):
File "/usr/bin/displaycal", line 4, in <module>
from DisplayCAL.main import main
File "/usr/lib/python3/dist-packages/DisplayCAL/main.py", line 27, in
<module>
raise RuntimeError(
RuntimeError: Need Python version >= 3.8 <= 3.11, got 3.12.2
[What could go wrong]
The DisplayCAL developers do not yet support Python 3.12 until the
release of WxWidgets 4.2.0 since it could crash upon closure. I (Erich
Eickmeyer) have not experienced this in my testing, however, it is
plausible. Additionally, the patches that were used to make this work
were developed after the release of DisplayCAL 3.9.12, but still applied
cleanly to 3.9.11 and made it function correctly.
To be clear, the issue with WxWidgets is a separate bug and outside the
scope of this bug.
[Other Information]
Currently the tests have to be skipped otherwise they segfault with
- Python 3.12 and the entire source FTBFS, hence the inclusion of the
- patch `05_skip-test-wioth-python-3.12.patch`.
+ Python 3.12 and the entire application fails to run, hence the inclusion
+ of the patch `05_skip-test-wioth-python-3.12.patch`. I would, however,
+ argue that the application running trumps its internal tests
+ segfaulting.
Original bug report:
I have upgraded to the noble beta today, and displaycal fails to start.
The package dependencies request python 3.12, but the actual software
needs 3.11 (or older).
```
$ apt show displaycal | grep Depends
WARNING: apt does not have a stable CLI interface. Use with caution in
scripts.
Depends: libc6 (>= 2.34), libx11-6, libxinerama1 (>= 2:1.1.4),
libxrandr2 (>= 2:1.2.0), libxxf86vm1, python3 (<< 3.13), python3 (>=
3.12~), python3-build, python3-certifi, python3-dbus, python3-distro,
python3-numpy, python3-pil, python3-pychromecast, python3-send2trash,
python3-wxgtk4.0, python3-zeroconf, python3:any, dbus-x11, argyll,
libjs-jquery, python3-gi, libsdl2-mixer-2.0-0
$ displaycal --help
Traceback (most recent call last):
File "/usr/bin/displaycal", line 4, in <module>
from DisplayCAL.main import main
File "/usr/lib/python3/dist-packages/DisplayCAL/main.py", line 27, in
<module>
raise RuntimeError(
RuntimeError: Need Python version >= 3.8 <= 3.11, got 3.12.2
```
ProblemType: Bug
DistroRelease: Ubuntu 24.04
Package: displaycal 3.9.11-2
ProcVersionSignature: Ubuntu 6.8.0-22.22-generic 6.8.1
Uname: Linux 6.8.0-22-generic x86_64
NonfreeKernelModules: zfs
ApportVersion: 2.28.0-0ubuntu1
Architecture: amd64
CasperMD5CheckResult: unknown
CurrentDesktop: ubuntu:GNOME
Date: Sun Apr 14 15:16:10 2024
ProcEnviron:
LANG=en_US.UTF-8
PATH=(custom, no user)
SHELL=/bin/zsh
TERM=xterm-256color
XDG_RUNTIME_DIR=<set>
SourcePackage: displaycal-py3
UpgradeStatus: Upgraded to noble on 2024-04-14 (0 days ago)
mtime.conffile..etc.xdg.autostart.z-displaycal-apply-profiles.desktop:
2023-10-22T21:28:16.420795
** Description changed:
[Impact]
DisplayCAL, when released, was only compatible with Python 3.8-3.11.
However, all it needed was WxWidgets 4.1.1 and a few patches to make it
work with Python 3.12. Without, it would simply fail. Namely, it needed
to be patched to remove the Python version check upon launch.
[Test Case]
* Install displaycal
* Run displaycal
Expected: Run normally
Result:
Traceback (most recent call last):
File "/usr/bin/displaycal", line 4, in <module>
from DisplayCAL.main import main
File "/usr/lib/python3/dist-packages/DisplayCAL/main.py", line 27, in
<module>
raise RuntimeError(
RuntimeError: Need Python version >= 3.8 <= 3.11, got 3.12.2
[What could go wrong]
The DisplayCAL developers do not yet support Python 3.12 until the
release of WxWidgets 4.2.0 since it could crash upon closure. I (Erich
Eickmeyer) have not experienced this in my testing, however, it is
plausible. Additionally, the patches that were used to make this work
were developed after the release of DisplayCAL 3.9.12, but still applied
cleanly to 3.9.11 and made it function correctly.
To be clear, the issue with WxWidgets is a separate bug and outside the
scope of this bug.
[Other Information]
Currently the tests have to be skipped otherwise they segfault with
Python 3.12 and the entire application fails to run, hence the inclusion
of the patch `05_skip-test-wioth-python-3.12.patch`. I would, however,
argue that the application running trumps its internal tests
- segfaulting.
+ segfaulting. Furthermore, the upstream developers have yet to figure out
+ why those tests are segfaulting on Python 3.12 and therefore don't
+ consider it a priority. The goal here is to make the application run.
Original bug report:
I have upgraded to the noble beta today, and displaycal fails to start.
The package dependencies request python 3.12, but the actual software
needs 3.11 (or older).
```
$ apt show displaycal | grep Depends
WARNING: apt does not have a stable CLI interface. Use with caution in
scripts.
Depends: libc6 (>= 2.34), libx11-6, libxinerama1 (>= 2:1.1.4),
libxrandr2 (>= 2:1.2.0), libxxf86vm1, python3 (<< 3.13), python3 (>=
3.12~), python3-build, python3-certifi, python3-dbus, python3-distro,
python3-numpy, python3-pil, python3-pychromecast, python3-send2trash,
python3-wxgtk4.0, python3-zeroconf, python3:any, dbus-x11, argyll,
libjs-jquery, python3-gi, libsdl2-mixer-2.0-0
$ displaycal --help
Traceback (most recent call last):
File "/usr/bin/displaycal", line 4, in <module>
from DisplayCAL.main import main
File "/usr/lib/python3/dist-packages/DisplayCAL/main.py", line 27, in
<module>
raise RuntimeError(
RuntimeError: Need Python version >= 3.8 <= 3.11, got 3.12.2
```
ProblemType: Bug
DistroRelease: Ubuntu 24.04
Package: displaycal 3.9.11-2
ProcVersionSignature: Ubuntu 6.8.0-22.22-generic 6.8.1
Uname: Linux 6.8.0-22-generic x86_64
NonfreeKernelModules: zfs
ApportVersion: 2.28.0-0ubuntu1
Architecture: amd64
CasperMD5CheckResult: unknown
CurrentDesktop: ubuntu:GNOME
Date: Sun Apr 14 15:16:10 2024
ProcEnviron:
LANG=en_US.UTF-8
PATH=(custom, no user)
SHELL=/bin/zsh
TERM=xterm-256color
XDG_RUNTIME_DIR=<set>
SourcePackage: displaycal-py3
UpgradeStatus: Upgraded to noble on 2024-04-14 (0 days ago)
mtime.conffile..etc.xdg.autostart.z-displaycal-apply-profiles.desktop:
2023-10-22T21:28:16.420795
** Changed in: displaycal-py3 (Ubuntu Oracular)
Status: Fix Released => In Progress
** Changed in: displaycal-py3 (Ubuntu Noble)
Status: Incomplete => In Progress
** Changed in: displaycal-py3 (Ubuntu Oracular)
Status: In Progress => Fix Committed
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2061329
Title:
[SRU] displaycal 3.9.11-2 needs patch to work with Python 3.12
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/displaycal-py3/+bug/2061329/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs