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

pip: 20.3.3 -> 20.3.4 #405

Merged
merged 3 commits into from
Feb 2, 2021
Merged

Conversation

groodt
Copy link
Collaborator

@groodt groodt commented Jan 24, 2021

PR Checklist

Please check if your PR fulfills the following requirements:

  • Does not include precompiled binaries, eg. .par files. See CONTRIBUTING.md for info
  • Tests for the changes have been added (for bug fixes / features)
  • Docs have been added / updated (for bug fixes / features)

PR Type

What kind of change does this PR introduce?

  • Bugfix
  • Feature (please, look at the "Scope of the project" section in the README.md file)
  • Code style update (formatting, local variables)
  • Refactoring (no functional changes, no api changes)
  • Build related changes
  • CI related changes
  • Documentation content changes
  • Other... Please describe:

What is the current behavior?

Issue Number: N/A

What is the new behavior?

Updates the vendored version of pip from 20.3.3 to 20.3.4.

Notably, this is slated to be the last version of pip that will support Python 2.
pypa/pip#8936 (comment)

It might be prudent to prepare and tag a release of rules_python if this is merged.

I would also suggest that rules_python, at least from the pip_install perspective, should target Python 3 only and mention this in the README files. I understand that the Bazel rules_python, in general, will need to support Python 2 until this requirement is removed from Bazel itself (and perhaps internally at Google), but the pip_install elements of the rules need not support Python 2 in my opinion. It is EOL and further developments in Python packaging are not going to support Python 2 (or Python <3.5) so it might be time to start enforcing this too.

Note, there is an additional PR here with pip 21.0 that can be merged after this one. Which I would then consider a clean breaking change for the Python 2 vs Python 3 support for rules_python pip_install. In the same way that pip supports Python 2 with pip<21 it would be possible to point users at a commit or version of rules_python pip_install that does work with Python 2 if they need it.

I suspect my recommendation is overly cautious, I suspect the number of users that are using rules_python (for external pip dependencies) and Python 2 to be 0 or vanishingly close to 0.

Does this PR introduce a breaking change?

  • Yes
  • No

This PR would not be introducing a breaking change, the breaking change is in the follow-up PR that introduces pip 21.0

Other information

Copy link
Contributor

@hrfuller hrfuller left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with your suggestion of tagging a new version indicating this is the last version that supports python2 out of the box, but users will always be able to override these deps to use older versions of pip with pip_install if they would like. Not sure how we can force python3 on all our users given they can override the python_interpreter attr in pip_install anyway.

@hrfuller hrfuller merged commit c7e068d into bazelbuild:master Feb 2, 2021
@groodt groodt mentioned this pull request Feb 2, 2021
26 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants