Python minimum version compatibility #3533
Replies: 6 comments 8 replies
-
For reference below are the version numbers for our OSs
On the basis of testing of 18.04. At the moment the basis of these is the snap, and actually is built python 3.10. Now, when 24.04 comes out, the new base I would say though, that it would be safe to cutofff 3.6 as per @dnegreira's comment in the issue. Once either of 4.5.6 or 4.7.0 has been released for 18.04, we will likely only concentrate on security fixes, if any come across in the new legacy branch and reported by users. When 24.04 comes out in April, there will be some work that both me and David will be doing, such as new gce images for both latest, deb and snap testing, new snap base. |
Beta Was this translation helpful? Give feedback.
-
I plan to reply here from Red Hat point of view, just getting the details so far. Stay tuned. |
Beta Was this translation helpful? Give feedback.
-
Hey @TurboTurtle we're (from Canonical) happy to drop 3.6 now, but we should only be going to 3.8. Otherwise we'll lose support for 20.04, and we (at Canonical), may need to start cherry-picking and fixing patches for 20.04 (and have a potential side fork) if upstream decided to go for 3.9. At least based on the table I provided above |
Beta Was this translation helpful? Give feedback.
-
@pmoravec ack, thanks for the input. I'm good with waiting til 4.8.0 to make the cut, i.e. |
Beta Was this translation helpful? Give feedback.
-
.. and we silently dropped the 3.6 support, already :) I found that very coincidentally, that the very recent commit and this line in particular uses Worth bumping some specs or so? (and Cc @jjansky1 , @jcastill and @mhradile for awareness - current sos upstream doesnt work on RHEL8/python3.6 further more) |
Beta Was this translation helpful? Give feedback.
-
I have updated the wiki to reflect python-3.8 as our current minimum version. Closing this discussion out for now and we can revisit 3.9 halfway through 2025 (of course feel free to reopen this if there is something I've overlooked). |
Beta Was this translation helpful? Give feedback.
-
As a project
sos
has traditionally lagged behind upstream python by quite some margin. This is due to the nature of us being a diagnostic tool and the fact that we are deployed to mostly long-life environments that have commercial support contracts. In short, vendors typically don't update the version of python that a specific version of their OS release originally shipped with, so we have to stay on that older version.In #3505 the discussion came to this a couple times - we are still developing mainly for python-3.6, which has been EOL since the end of 2021. We went to 3.6 because in sos-4.0 we dropped python2 support and 3.6 was a commonly supported version between the RHEL and Ubuntu versions of the day - that being RHEL 8 and Ubuntu 18.04. This was done by shunting the python2-compatible tree to the
legacy-3.9
branch, and saying any downstreams that still need updates to python2-compatible sos (I think even then this was just RHEL 7?) could source from there (or, just do downstream patching as needed).I'd like to come up with a plan to move our minimum python version forward to something more modern. Ideally I'd say this means at least python-3.9, but @dnegreira recently informed me in the #3505 discussion that Ubuntu 20.04 runs python-3.8, which throws a wrench in there. That said, python-3.8 does include the support for walrus operators (
:=
) which is actually one of the bigger things I've been looking forward to when getting off of python-3.6.With that context laid, lets figure out an acceptable path forward for:
This basically boils down to:
Beta Was this translation helpful? Give feedback.
All reactions