Skip to content
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

Drop support for EOL Python 3.4 #6685

Merged
merged 1 commit into from Jul 17, 2019

Conversation

@hugovk
Copy link
Contributor

commented Jul 6, 2019

Python 3.4 was EOL on 2019-03-16 and deprecated in #6123 and pip 19.0.

The deprecation warning reads:

Python 3.4 support has been deprecated. pip 19.1 will be the last one supporting it. Please upgrade your Python as Python 3.4 won't be maintained after March 2019 (cf PEP 429).

pip 19.2 is coming soon (#6630) so drop support for Python 3.4.

tests/lib/__init__.py Outdated Show resolved Hide resolved
docs/html/installing.rst Outdated Show resolved Hide resolved
src/pip/_internal/utils/compat.py Outdated Show resolved Hide resolved
src/pip/_internal/utils/compat.py Outdated Show resolved Hide resolved
tests/functional/test_install.py Outdated Show resolved Hide resolved
tests/functional/test_install.py Outdated Show resolved Hide resolved
@pradyunsg

This comment has been minimized.

Copy link
Member

commented Jul 7, 2019

@hugovk Thanks for the PR!

In line with @cjerdonek's suggestion, could you drop all the additional changes (references to 3.4, version based checks etc) and file them as a separate PR?

That way this PR would just be dropping Py3.4 from classifiers, requires error messages etc.

@hugovk hugovk force-pushed the hugovk:rm-3.4 branch from 877d02c to 53ae786 Jul 7, 2019

@hugovk hugovk force-pushed the hugovk:rm-3.4 branch from 53ae786 to 2c1010e Jul 7, 2019

@hugovk

This comment has been minimized.

Copy link
Contributor Author

commented Jul 7, 2019

Thanks for the reviews, updated! Please let me know if I missed something.

@cjerdonek

This comment has been minimized.

Copy link
Member

commented Jul 7, 2019

Question: if someone happens to be running this pip version using Python 3.4, what should happen? Will it fail? If not, should it log a warning?

@hugovk

This comment has been minimized.

Copy link
Contributor Author

commented Jul 7, 2019

First, python_requires should prevent install on 3.4, for modern pip.

But if someone does end up with this PR's changes on 3.4, it'll still work as no functional changes have been made.

It may fail with the next PR, and will fail at some point in the future as code is modernised and newer features are used.

Would you like an explicit failure message for unsupported versions (<=2.6, 3.0-3.4)? Although care would have to be taken to make sure the file showing the error is still actually compatible with those versions, and it should be tested to be sure it still works in the long term.

What has been the approach for earlier removals?

@pradyunsg

This comment has been minimized.

Copy link
Member

commented Jul 7, 2019

Would you like an explicit failure message for unsupported versions (<=2.6, 3.0-3.4)?

No point in doing this IMO.

FWIW, modern versions of pip will refuse to install this version on 3.4 anyway. Once you start modifying the distribution, we're not liable for it. 🙃

@chrahunt
Copy link
Contributor

left a comment

LGTM.

@xavfernandez
Copy link
Contributor

left a comment

Thanks for doing this.
I'd argue that

pip/tests/conftest.py

Lines 352 to 355 in ca017ca

@pytest.fixture
def deprecated_python():
"""Used to indicate whether pip deprecated this python version"""
return sys.version_info[:2] in [(3, 4), (2, 7)]
could be included in this PR as it it directly linked to the deprecated call removal but it's ok if it's included in a future PR.

@hugovk

This comment has been minimized.

Copy link
Contributor Author

commented Jul 16, 2019

Is there anything else I can do for this PR?

It'd be nice to get it in this week's pip 19.2, in line with the deprecation message.

Thank you!

@pradyunsg

This comment has been minimized.

Copy link
Member

commented Jul 16, 2019

Yep yep. This is definitely on my TODO list for the release.

Based on a cursory pass earlier, this seemed good to me. Plus, two folks have already approved it so I'm happy to merge this anyway, based on trust on the contributor + fellow maintainers. 🌈

@pradyunsg pradyunsg added this to the 19.2 milestone Jul 17, 2019

@pradyunsg pradyunsg merged commit a53e571 into pypa:master Jul 17, 2019

25 checks passed

Linux Build #20190707.5 succeeded
Details
Linux (Package) Package succeeded
Details
Linux (Test Primary Python27) Test Primary Python27 succeeded
Details
Linux (Test Primary Python36) Test Primary Python36 succeeded
Details
Linux (Test Secondary Python35) Test Secondary Python35 succeeded
Details
Linux (Test Secondary Python37) Test Secondary Python37 succeeded
Details
Windows Build #20190707.5 succeeded
Details
Windows (Package) Package succeeded
Details
Windows (Test Primary Python27-x64) Test Primary Python27-x64 succeeded
Details
Windows (Test Primary Python36-x64) Test Primary Python36-x64 succeeded
Details
Windows (Test Secondary Python27-x86) Test Secondary Python27-x86 succeeded
Details
Windows (Test Secondary Python35-x64) Test Secondary Python35-x64 succeeded
Details
Windows (Test Secondary Python35-x86) Test Secondary Python35-x86 succeeded
Details
Windows (Test Secondary Python36-x86) Test Secondary Python36-x86 succeeded
Details
Windows (Test Secondary Python37-x64) Test Secondary Python37-x64 succeeded
Details
Windows (Test Secondary Python37-x86) Test Secondary Python37-x86 succeeded
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
macOS Build #20190707.5 succeeded
Details
macOS (Package) Package succeeded
Details
macOS (Test Primary Python27) Test Primary Python27 succeeded
Details
macOS (Test Primary Python36) Test Primary Python36 succeeded
Details
macOS (Test Secondary Python35) Test Secondary Python35 succeeded
Details
macOS (Test Secondary Python37) Test Secondary Python37 succeeded
Details
news-file/pr News files updated and/or change is trivial.
Details
@pradyunsg

This comment has been minimized.

Copy link
Member

commented Jul 17, 2019

Thanks for the PR @hugovk!

Thanks for taking the time to look at this @xavfernandez @cjerdonek @chrahunt! :D

@hugovk hugovk deleted the hugovk:rm-3.4 branch Jul 17, 2019

@pquentin pquentin referenced this pull request Aug 6, 2019

@lock lock bot added the S: auto-locked label Aug 16, 2019

@lock lock bot locked as resolved and limited conversation to collaborators Aug 16, 2019

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
5 participants
You can’t perform that action at this time.