-
-
Notifications
You must be signed in to change notification settings - Fork 31k
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
bpo-29523: Update setuptools to 34.2.0 and bundle its dependencies. #67
Conversation
setuptools as of version 34.0.0, unbundled its dependencies and it started depending on them, so in order to update the, bundled with python, setuptools we also need to bundle its dependencies: pyparsing, packaging, appdirs and six. See also: https://setuptools.readthedocs.io/en/latest/history.html#v34-0-0
Hello, and thanks for your contribution! I'm a bot set up to make sure that the project can legally accept your contribution by verifying you have signed the PSF contributor agreement (CLA). Unfortunately we couldn't find an account corresponding to your GitHub username on bugs.python.org (b.p.o) to verify you have signed the CLA. This is necessary for legal reasons before we can look at your contribution. Please follow these steps to help rectify the issue:
Thanks again to your contribution and we look forward to looking at it! |
Relevant issue: https://bugs.python.org/issue29523 Added also my github username to bpo, hopefully the bot will update the CLA label. |
Also I think this change should be made as well for the 3.6 branch (maybe 3.5 as well?). |
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'm generally against this change, and would prefer to instead wait for pip to implement PEP 518 which will allow us to remove setuptools from being bundled at all (See pypa/pip#4144).
Codecov Report
@@ Coverage Diff @@
## master #67 +/- ##
==========================================
+ Coverage 82.37% 82.37% +<.01%
==========================================
Files 1427 1427
Lines 350948 350952 +4
==========================================
+ Hits 289091 289095 +4
Misses 61857 61857 Continue to review full report at Codecov.
|
I'm also reluctant to do this. It seems too likely that people will start to assume that the unbundled dependencies (six, appdirs, ...) are shipped with Python, and not specify their own dependencies correctly. |
@dstufft Your point is quite reasonable from the upstream point of view. As a downstream packager where setuptools is being unbundled and the system one is being used (thus updating it now means breakage due to missing wheels as is now), I'll have to follow this approach until PEP 518 is implemented. Anyway feel free to close it if you disagree with the changes, I'll have to carry the patch downstream to fix the current Fedora issues but it can be removed later on. |
I don't see any reason not to accept this contrib. It helps align with the current known state of affairs. When PEP 518 lands, this code can be readily replaced with the PEP 518 solution and until then, ensurepip isn't blocked from working with the latest setuptools versions. I don't think anyone here sees this change as a precedent or reason not to adopt PEP 518.
I really doubt it. First off, you have to |
I'm against this PR too. In chatting with people at PyCon, many were shocked that Though since PEP 518 has been merged, presumably the next release of pip will be good to embed without setuptools? |
Setuptools is bundling its dependencies again [0] as of version 36.0.0. Closing this PR. |
* 🎨 Make the GHA log is clean and colorized This patch sets up root-level environment variables shared by all the workflow jobs. They include: * Disabling undesired `pip`'s warnings/suggestions * Requesting the executed apps color their output unconditionally * Letting `tox` pass those requests to underlying/wrapped programs * Reformat without end of line comments. Group into sections. * Avoid numerics for booleans where possible. Choose arbitrary numeric where any numeric is accepted. Co-authored-by: Sviatoslav Sydorenko <[email protected]>
setuptools as of version 34.0.0, unbundled its dependencies and it started
depending on them, so in order to update the, bundled with python, setuptools
we also need to bundle its dependencies: pyparsing, packaging, appdirs and six.
See also: https://setuptools.readthedocs.io/en/latest/history.html#v34-0-0