-
Notifications
You must be signed in to change notification settings - Fork 3k
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 10 wheel fails when install.user is set in the config #5085
Comments
@pypa/pip-committers I think just setting the appropriate environment variable to |
I think this may be because the PEP 518 code for creating the build environment uses |
I'm looking at writing a test for this (as the first step towards putting together a fix) and I'm not sure I understand the PEP 518 build isolation process well enough. @pradyunsg can you help here? In I can probably just ignore this and make the OP's description of how to demonstrate the issue into a test (BTW, thanks @anntzer for a clear description!) but I'd still like to understand why the existing test works. |
I'm pretty sure that test would be using a source distribution. PEP 518
support and isolation is for installations that happen through wheels for
now.
…On Sun, 25 Mar 2018, 21:41 Paul Moore, ***@***.***> wrote:
I'm looking at writing a test for this (as the first step towards putting
together a fix) and I'm not sure I understand the PEP 518 build isolation
process well enough. @pradyunsg <https://github.com/pradyunsg> can you
help here?
In tests/functional/test_install.py the first test (
test_without_setuptools) uninstalls setuptools, then runs an install of
INITools. But my understanding of PEP 518 is that if a project doesn't have
a pyproject.toml, it would be assumed to have build dependencies of (setuptools,
wheel), and those would then be installed in the build environment.
Clearly that's *not* what is going on here, as the test is succeeding
(i.e., pip is failing to install because setuptools is not present).
I can probably just ignore this and make the OP's description of how to
demonstrate the issue into a test (BTW, thanks @anntzer
<https://github.com/anntzer> for a clear description!) but I'd still like
to understand why the existing test works.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#5085 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ADH7SZ9Z_ToTYhGG6DC-qJUT2aDyQyiuks5th8GygaJpZM4SvqA->
.
|
Oh, I thought it worked on any top-level build of wheels, and as an install from sdist builds a wheel then installs it, I thought that would trigger the build isolation stuff. Thanks for the clarification. (This might be something we should document in more detail at some point. Not a high priority though...) |
If we build a wheel, that installation would go through the PEP 518 support
code.
Without looking at the test (doing an assignment), I'd guess there's
something that is causing it to not build a wheel. Maybe --no-binary?
…On Sun, 25 Mar 2018 at 22:08 Paul Moore ***@***.***> wrote:
Oh, I thought it worked on any top-level build of wheels, and as an
install from sdist builds a wheel then installs it, I thought that would
trigger the build isolation stuff. Thanks for the clarification.
(This might be something we should document in more detail at some point.
Not a high priority though...)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#5085 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ADH7SVk7QdSJBqDbZy5-sTaAbyTK8i55ks5th8gEgaJpZM4SvqA->
.
|
Yeah, that's in the test code. I didn't realise that changed the build path like that. My mistake. Thanks. |
No issues. Cheers! :)
…On Sun, 25 Mar 2018 at 22:15 Paul Moore ***@***.***> wrote:
Yeah, that's in the test code. I didn't realise that changed the build
path like that. My mistake. Thanks.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#5085 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ADH7SfZ4ORbL1O154OStFZtygXKy5CYJks5th8m_gaJpZM4SvqA->
.
|
BTW, it would be much nicer if we had a I've managed to get a working patch for this by adding an explicit I don't have time to do more on this just now, so I've created #5116 with my work so far. If anyone wants to review and/or suggest better approaches, I'd be most grateful. |
Fixed via #5116 |
This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
Description:
Tried to build a wheel using pyproject.toml while the install.user key is set in ~/.config/pip/pip.conf. Failed with the traceback below.
What I've run:
The text was updated successfully, but these errors were encountered: