Fedora Account System
Red Hat Associate
Red Hat Customer
Description of problem: From: https://bodhi.fedoraproject.org/updates/FEDORA-2025-40fbce042c ❯ displaycal Traceback (most recent call last): File "/usr/bin/displaycal", line 4, in <module> from DisplayCAL.main import main File "/usr/lib/python3.14/site-packages/DisplayCAL/main.py", line 21, in <module> raise RuntimeError( ...<6 lines>... ) RuntimeError: Need Python version >= 3.8 <= 3.13, got 3.14.0rc3 Unfortunately package doesn't run any tests, so we didn't catch it during the year of integration. Please add at least an import check or some other smoke test to the specfile.
The version is read from https://github.com/eoyilmaz/displaycal-py3/blob/3.9.16/DisplayCAL/meta.py#L57 and the RuntimError is raised in https://github.com/eoyilmaz/displaycal-py3/blob/3.9.16/DisplayCAL/main.py#L20 For the purpose of distro packaging, I think the entire check should be packaged out. I am setting the severity to high, as this package is completely non-functional.
Yes, I agree it should be patched out. Would you be willing to send a PR for it? I can take it and build it.
The patch is simple, but even then, I have trouble running a basic smoke test in %check. xwfb-run -c mutter -- displaycal --version / --help Both hang, as if the options do nothing.
Patching out the version check won't help much. It does let the app start, but a calibration does not complete. There is at least two issues presented in calibration. 1) DisplayCAL usage of json.dumps() and an encoding parameter (gone in Python 3.14) 2) Calibration does not complete after #1 is patched. DisplayCAL complains "DisplayCAL is already running" and does not finish a calibration. I had to install into a Python 3.13 virtual environment and a calibration completed successfully inside of it.
Wouldn't it be possible to "dnf install python3.13", then use that for DisplayCAL? But no, I see it installs files into /usr/lib/python3.14/site-packages/DisplayCAL . How hard would it be to make DisplayCAL depend on an older Python package?
Upstream has announced they support Python 3.14 on their develop branch. https://github.com/eoyilmaz/displaycal-py3/issues/621#issuecomment-4835800778
Fedora 45 is shipping with Python 3.15 ... 😼 displaycal-3dlut-maker --version Traceback (most recent call last): File "/usr/bin/displaycal-3dlut-maker", line 4, in <module> from DisplayCAL.main import main File "/usr/lib/python3.15/site-packages/DisplayCAL/main.py", line 21, in <module> raise RuntimeError( ...<6 lines>... ) RuntimeError: Need Python version >= 3.8 <= 3.13, got 3.15.0