Requests: Clarification of timeline for removing Python 2.7 support

Created on 25 Sep 2019  ·  3Comments  ·  Source: psf/requests

Hi, all. I'm trying to update some documentation regarding the sunset/"end of life"/EOL of Python 2.x and ran into a question regarding Requests. Could you confirm that Requests does NOT expect to drop support for Python 2.7 in 2020?

Context: https://github.com/python3statement/python3statement.github.io/issues/194 suggested that https://python3statement.org/#sections30-projects add Requests as a project that will drop support for Python 2.7 in 2020, but referred to a hint on the Requests homepage that has since been removed. Requests is currently listed as a participating project in the Python 3 Statement. The Python 3 support section of the FAQ does not mention an estimated date for dropping Python 2.7 support. I see in https://github.com/psf/requests/issues/5199#issuecomment-533190419 that @nateprewitt said:

Requests has a large user base with varying needs which means we'll need to maintain 2.7 support for sometime beyond EoL. Once pip is migrated to being Python 3 only (no ETA to my knowledge), we would be able to consider it, but there aren't any concrete plans at the moment.

In this discussion of pip's plans for deprecating 2.7 support it does seem to me that there's no concrete timeline yet. And that implies to me that perhaps Requests should be removed from the Python 3 Statement list of "Participating Projects: These projects pledge to drop Python 2 support in or before 2020."

Is my understanding correct? If so I'd like to submit a PR to remove Requests from the Python 3 Statement.

Also, I suggest that we add a "Python 2 support?" question to the FAQ, and once I know the answer to my question above, I will be happy to contribute that as a pull request. Thanks!

Most helpful comment

I made PR https://github.com/python3statement/python3statement.github.io/pull/280 to remove Requests from the statement.

All 3 comments

Hi @brainwane, thanks for reaching out on this. The quote above is correct, we don't have immediate plans to remove support for 2.7 from Requests. The earliest time we'd be able to remove support for 2.7 would be after pip had stopped support, but I'd expect around a 6 month ramp down after that. We'll make sure we're giving enough warning for users to migrate.

That said, depending on timelines, there may come a point Requests stops receiving feature updates for 2.7, but we'd maintain compatibility for the timetable above.

I made PR https://github.com/python3statement/python3statement.github.io/pull/280 to remove Requests from the statement.

Hi @brainwane, thanks for reaching out on this. The quote above is correct, we don't have immediate plans to remove support for 2.7 from Requests. The earliest time we'd be able to remove support for 2.7 would be after pip had stopped support, but I'd expect around a 6 month ramp down after that. We'll make sure we're giving enough warning for users to migrate.

That said, depending on timelines, there may come a point Requests stops receiving feature updates for 2.7, but we'd maintain compatibility for the timetable above.

An update on the pip timeline:

pip will continue to ensure that it runs on Python 2.7 after the CPython 2.7 EOL date. Support for Python 2.7 will be dropped, if bugs in Python 2.7 itself make this necessary (which is unlikely) or in pip 21.0 (Jan 2021), whichever is earlier.

https://pip.pypa.io/en/latest/development/release-process/#python-2-support

https://github.com/pypa/pip/issues/6148

https://github.com/pypa/pip/pull/8087

Was this page helpful?
0 / 5 - 0 ratings