- 
          
 - 
                Notifications
    
You must be signed in to change notification settings  - Fork 237
 
Revert "Drop Python 3.6" #1620
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Revert "Drop Python 3.6" #1620
Conversation
Ubuntu 18.04 (LTS, supported until April 2023) and Centos 7 are still on Python 3.6. This reverts commit 780f64a.
          Codecov Report
 @@            Coverage Diff             @@
##             main    #1620      +/-   ##
==========================================
- Coverage   66.73%   66.67%   -0.06%     
==========================================
  Files          93       93              
  Lines       16583    16561      -22     
  Branches     4398     4392       -6     
==========================================
- Hits        11066    11042      -24     
- Misses       4379     4381       +2     
  Partials     1138     1138              
 Continue to review full report at Codecov. 
  | 
    
| 
           CentOS 7 is supported until Jun 30th, 2024. Fortunately we already have venv as a workaround of this issue and it is documented in the README of cwltool. Are there reasons to directly support OS built-in version of Python rather than encouraging to use   | 
    
          
 Ubuntu 18.04 (Bionic Beaver) ships Python 3.7 and 3.8 https://packages.ubuntu.com/search?suite=bionic&keywords=python3.7 https://packages.ubuntu.com/search?suite=bionic&keywords=python3.8 So  Python 3.8 can be added to CentOS from their official repos: 
 From https://centos.pkgs.org/7/centos-sclo-rh-x86_64/rh-python38-python-3.8.6-1.el7.x86_64.rpm.html I would be more interested in a PR adding these instructions to the docs. Bonus if there is a variation of https://github.com/common-workflow-language/cwltool/blob/main/cwltool.Dockerfile for Ubuntu 18.04 and CentOS 7 demonstrating that this works. And speaking of the docs, this is a good time to start breaking up the giant README.rst and move the installation instructions to their own page, like was done for https://cwltool.readthedocs.io/en/latest/processgen.html  | 
    
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I prefer we document how to install on CentOS 7 and Ubuntu 18.04 using the available systems packages.
| 
           @mr-c we're looking into building on ubuntu 18.04 and centos 7 packages with a more recent python. I'm going to keep this PR open until we have a solution.  | 
    
| 
           I would really like to seem more process around the depreciation of Python versions. It is not the first time a breaking PR that does this is merged without warning. Changes like these seem extremely arbitrary, and they cause a pile of sudden, urgent work for no good reason. Depreciations should not happen suddenly and there should be a sufficient amount of warning. Obviously, the "upstream stopped supplying security updates" argument carries some weight. However, it is not that simple, and it's not true, because distributions do provide security fixes for older Python versions, especially the ones they ship with by default (e.g. Ubuntu 18.04, where Python 3.6 is the default "python3" package).  | 
    
| 
           @cure Sure, I agree a formal policy would be nice. Would you like to start a draft PR that we could send around to the other users of  Here is shared policy of Matplotlib, scikit-learn, IPython, Jupyter, yt, SciPy, NumPy, and scikit-image as a starting point: https://numpy.org/neps/nep-0029-deprecation_policy.html FYI, Conda (Anaconda and conda-forge) and Debian have both moved on from Python 3.6, and as I'm the maintainer of the   | 
    
          
 proposed a policy at PR #1621 
 If it happens in the future that an essential dependency is only available for Python 3.7+ and this is a problem for packaging then we will need to examine our options, but I don't think preemptively dropping support for Python 3.6 is the right way to go about it.  | 
    
Ubuntu 18.04 (LTS, supported until April 2023) and Centos 7 are still
on Python 3.6.
I recognize that the reason 3.6 was dropped was that Python upstream doesn't support 3.6 with security updates any more, but in practice people use whatever Python is supported by their Linux distribution.
This reverts commit 780f64a.