Python 3.8 now end of life

Any plans to upgrade python on SFOS?
Our current python 3.8 version is end of life as of 7th Oct of 2024. So there will be no more (security) updates. Python has seen some nice feature and performance enhancements in the later releases.

8 Likes

Or asking otherwise, what’s holding SFOS to Python 3.8 ? Any feature that got dropped in later versions?

1 Like

Update: in the SFOS community meeting of May 22 2025 is mentioned that a python update is ready for SFOS 5.1.

9 Likes

From what is visible in repositories, Python 3.11 is worked on, see GitHub - sailfishos/python3 at python311 but it’s not yet merged into master.

It’s not a simple work since it also requires to update all repositories that are based on Python, or providing Python modules to their newer versions to avoid staying on versions that are incompatible with 3.11.

4 Likes

Makes one wonder why not 3.13 right away, why after all the years of experience people are still surprised that it is not “easy”, which libraries cause issues etc. Probably all hidden in “JB#61296” or not even known or written down anywhere.

My guess is that libraries causing issues are either in-house or otherwise unmaintained, or got forked to a point where merging became impossible. Or should have been replaced years ago.

1 Like

Python 3.11 update has now been merged. Some background why update was done to 3.11 and not to newer version. Part of the reason is that newer python version would have needed more other python packages to be updated which wouldn’t usually be a problem except that many packages have moved away from setuptools installation in newer versions and are now using the newer methods which are easier to handle once we are at least at python 3.11. It would have been possible with to handle the new installation ways also with old python but would have needed more work so updating to 3.11 was chosen as first step.

12 Likes

triggered

PEP517 - now every other package requires some bespoke obscure build tool to be available, which in turn requires more package dependencies, which require different build tools!

flit, jupyter, poetry, meson-python, hatchling, sip-build, maturin, setuptools, pbr, pdm, pdr-backend …

Gotta catch 'em all!

2 Likes