Skip to content

Commit

Permalink
py version support policy for RHEL: only track full support releases
Browse files Browse the repository at this point in the history
Allow for any supported version of Python, not just the default Python version

This would mean that we can then drop Python 3.6 support
  • Loading branch information
mr-c committed Aug 8, 2023
1 parent 1573509 commit 974ba06
Showing 1 changed file with 30 additions and 28 deletions.
58 changes: 30 additions & 28 deletions docs/pythonversions.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,16 @@
Python version support policy
=============================

Cwltool will always support `stable Python 3 releases with active branches
<https://devguide.python.org/#status-of-python-branches>`_.
`cwltool` will always support `Python 3 versions that are officially supported by the Python Software Foundation
<https://devguide.python.org/versions/#versions>`_.

For versions that are no longer supported by Python upstream, cwltool
support also extends to the default Python version included in the
For versions that are no longer supported by the Python Software Foundation (or "upstream" for short), cwltool
support also extends to the latest Python versions included in the
following major Linux distributions:

* Debian (`stable <https://wiki.debian.org/DebianStable>`_, `oldstable <https://wiki.debian.org/DebianOldStable>`_)
* Debian (`stable <https://www.debian.org/releases/>`_)
* Ubuntu (`LTS release standard support <https://wiki.ubuntu.com/Releases>`_)
* Centos 7 (`while in maintenance <https://wiki.centos.org/About/Product>`_)
* RHEL (or binary compatible) (`full support releases <https://access.redhat.com/support/policy/updates/errata>`_) using packages from the main repo, or other distributor supported modules streams.

If there is a conflict between a third party package dependency which
has dropped support for a Python version that cwltool should support
Expand All @@ -22,32 +22,34 @@ and downstream users before making the decision to drop support for a
Python version before the date outlined in this policy. The reasoning
for dropping support for a Python version should be outlined here.

As of 2023-07-03, here are approximate cwltool support periods for
across Python versions:
As of 2023-08-08, here are approximate cwltool support periods for Python versions (`EOL` == "End of Life", the end of the support period by that provider):

====== ======================
Python cwltool end of support
====== ======================
2.7 ended January 2020
3.5 ended October 2020
3.6 2024-06 (Centos 7 EOL)
3.7 2023-06-27 (upstream EOL)
2.7 ended 2020-01 (upstream EOL)
3.5 ended 2020-10 (upstream EOL)
3.6 ended 2023-08-31 (change in cwltool policy)
3.7 ended 2023-07-27 (upstream EOL)
3.8 2025-04-02 (Ubuntu 20.04 LTS EOL)
3.9 2025-11-05 (upstream EOL)
3.10 2027-04-01 (Ubuntu 22.04 LTS EOL))
3.11 2027-11-24 (upstream EOL)
3.9 2025-10-01 (upstream EOL)
3.10 2027-04-01 (Ubuntu 22.04 LTS EOL)
3.11 2027-10-01 (upstream EOL)
3.12 2028-10-01 (planned upstream EOL)
3.13 2029-10-01 (planned upstream EOL)
====== ======================

Default Python version of supported Linux distributions, for reference
(as of February 2022)

====== =============================================
Python Linux distros where it is the default version
====== =============================================
3.6 Ubuntu 18.04 LTS, Centos 7
3.7 Debian 10
3.8 Ubuntu 20.04 LTS
3.9 Debian 11
3.10 Ubuntu 22.04 LTS
3.11 Debian 12
====== =============================================
Python version of supported Linux distributions, for reference
(as of August 2023)

============== =============================================
Python Version Linux distros where it is a supported version
============== =============================================
3.6 RHEL 7, Ubuntu 18.04 LTS
3.7 Debian 10
3.8 RHEL 8, Ubuntu 20.04 LTS
3.9 Debian 11, RHEL 8, Ubuntu 20.04 LTS
3.10 Ubuntu 22.04 LTS
3.11 Debian 12, RHEL 9
3.12 Debian 13 (planned)
============== =============================================

0 comments on commit 974ba06

Please sign in to comment.