freedomofpress / dangerzone

Take potentially dangerous PDFs, office documents, or images and convert them to safe PDFs
https://dangerzone.rocks/
GNU Affero General Public License v3.0
3.58k stars 168 forks source link

PySide6 no longer supports Python 3.8 #780

Closed apyrgio closed 3 months ago

apyrgio commented 5 months ago

It has come to our attention that the latest PySide6 release (6.7.0) has dropped support for Python 3.8. Dangerzone still supports this Python version, since it is still used by Ubuntu Focal.

In practice, this doesn't make a difference to our actual Ubuntu Focal users, since they use PySide2. However, this causes a problem for Windows and macOS users. The Python >= 3.8 restriction means that PySide6 is pinned to 6.6.3.1, instead of moving forward to 6.7.0. Since Windows/macOS users get PySide6 from PyPI, in the event of a PySide6 security issue, we will not be able to update it right away.

For reference, these are the EOL dates for Python 3.8 and Ubuntu Focal respectively:

naglis commented 5 months ago

I saw #618 which mentions that Ubuntu Focal has support for Python 3.9. Would that be an option?

apyrgio commented 5 months ago

Oh, very good observation! Yes, I think we could set the minimum Python3 version in our build instructions to >= 3.9 (currently set to 3.6 :bangbang:) . This way, the newer Python3 package will be downloaded. For pyproject.toml, we can similarly bump our lowest supported Python version to 3.9, and maybe add a little note in our BUILD.md file.

There's a minor catch here: what happens if there's an application in the user's Ubuntu Focal system that is not compatible with Python 3.9. In that case, there will be a package conflict. That's probably something we should check with apt-cache rdepends [python3|python3.9].

apyrgio commented 3 months ago

This issue has been resolved by the following PRs: