question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Drop support for Python < 2.7.9

See original GitHub issue

Older versions of Python 2.7 (prior to 2.7.9) don’t have the capability to have a good TLS configuration, and thus it would be great to drop support for them. We’re not currently at the point that we can do that, but I wanted to open this issue to both track that we should do that at some point, and also take notes about the current state and how to query in the future.

Results:

Python Version Download Count Percent
>=2.7.9 268456729 53%
<2.7.9 155669164 31%
3.5 35605564 7%
3.4 23114420 5%
2.6 13023950 3%
3.6 11948118 2%
3.3 1278506 0.3%
3.7 231670 0.05%

The results can be queried with:

SELECT
  CASE
    WHEN REGEXP_MATCH(details.python, r"2\.7\.(9|\d\d)") THEN '>=2.7.9'
    WHEN REGEXP_MATCH(details.python, r"2\.7\.") THEN '<2.7.9'
    ELSE REGEXP_EXTRACT(details.python, r"^([^\.]+\.[^\.]+)")
  END AS python_version,
  COUNT(*) AS download_count,
FROM
  TABLE_DATE_RANGE( [the-psf:pypi.downloads], DATE_ADD(CURRENT_TIMESTAMP(), -31, "day"), DATE_ADD(CURRENT_TIMESTAMP(), -1, "day") )
WHERE
  details.installer.name = 'pip'
GROUP BY
  python_version,
ORDER BY
  download_count DESC
LIMIT
  100

Issue Analytics

  • State:closed
  • Created 7 years ago
  • Reactions:4
  • Comments:34 (33 by maintainers)

github_iconTop GitHub Comments

2reactions
hugovkcommented, Apr 20, 2020

For some reason GitHub gives me a 500 error on #7362, so I can’t see the close reason.

Anyway, do you think this should be swept into the general Python 2.7.* removals after pip 20.3 is released in October 2020?

https://github.com/pypa/pip/issues/6148#issuecomment-616213532

If so, close this?

2reactions
dstufftcommented, Nov 16, 2019

@nicktimko I think the biggest thing is just simply reducing the surface area of support we have. Generally we decide this on an X.Y basis, because that draws the cleanest lines around major changes. However, due to 2.7’s age, 2.7.9 is a bit of a special case in that it introduced a backported ssl module from Python 3.

This work would effectively allow us to better take advantage on the capabilities of that back ported SSL module, for instance we can use the configuration settings so that pip itself will not function with older versions of TLS, we can possibly start relying on the platform trust stores in more situations, etc.

But really the biggest thing is narrowing the supported configurations.

To @pradyunsg I think sub 5% is a perfectly fine point to drop support for older versions of 2.7.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Python Release Python 2.7.9
Version Operating System Description MD5 Sum Gzipped source tarball Source release 5eebcaa... XZ compressed source tarball Source release 38d530f... Mac OS X 32‑bit i386/PPC installer macOS...
Read more >
Announcing end of support for Python 2.7 in AWS Lambda
On July 15, 2021, AWS Lambda will deprecate Python 2.7 as a supported runtime, formally ending our Python 2.7 support.
Read more >
How is Python 2 supported in RHEL after 2020?
Python 2 is not distributed with RHEL 9 and not planned for any future RHEL releases. pip and PyPI. A large part of...
Read more >
End of support for python 2.7? - Stack Overflow
As of early 2018 the drop-dead date has been specified more closely: It's now January 1st 2020. When distributions with change "python" to...
Read more >
How to Update Python 2 to Python 3 - The Couchbase Blog
“DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found