-
Notifications
You must be signed in to change notification settings - Fork 151
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
Wheel 0.34 broke installing in docker-alpine #332
Comments
Same error here! |
This error comes from the internals of pip. Do you mind digging deeper to figure out what the |
I can try to help. Could you elaborate on what exactly do you mean by digging deeper? |
Here's another example, taken from
EDIT: Sorry, not wheel's pyproject.toml: [build-system]
requires = ["setuptools >= 42", "setuptools_scm[toml]>=3.4"]
build-backend = "setuptools.build_meta"
[tool.setuptools_scm]
write_to = "src/wheel/_version.py"
version_scheme = "post-release"
[build-system]
requires = ["setuptools>=34.4", "wheel"]
build-backend = "setuptools.build_meta" |
I myself am trying to debug pip to understand what is going wrong. It's as if wheel is somehow requiring itself during the build, but I don't quite see how. If you could delve into pip code to help me with this, either in vivo or in vitro, that could speed up the process. |
Damn, that would explain things. |
It's not in |
Sorry, I edited my post to clarify that. It's in the build requirements in |
Yes, but those are only installed if the project is being built from source, which in this case should not be. |
To clarify, I am getting a similar error even when specifying only |
I get the same error with
The context for discovery here is that our Apache Beam/Dataflow jobs first run a |
For more context - the issue above was traced when trying to do a |
This is mystifying:
Doesn't look like setuptools_scm's build dependency is getting in the way at all. But where are the "backend dependencies" coming from? |
Oh. In that case, I think it's because pip wants to install a project that has a
|
@ncoghlan If this is true, does it prevent the wheel project from using isolated builds, by design? |
We're facing a similar issue with pyspark==2.4.4 installed in a freshly created virtual environment. It doesn't affect us when we install wheel (even 0.34.0) before trying to install pyspark. Docker image: Ubuntu 16.04.6 LTS Error:
We'd like to not install wheel manually in every of our projects and this is just a workaround for us. With v0.33.6 everything was fine. |
It's not by design, but it may be an unintended oversight. Support for in-tree backends was added to PEP 517 not that long ago, to address similar issues with bootstrapping setuptools - but pip doesn't have support for that addition to the PEP yet (as far as I am aware). But nothing has changed in pip recently that would have affected this, so what's changed? If we can confirm what changed, we might be able to understand better why this is happening. |
@r0bnet The traceback doesn't seem to point to wheel being the real problem there. I mean, why is wheel not found if it's declared as a build dependency? |
Wheel 0.34 is the first to distribute an sdist including |
What's even more mysterious is that installing from a clean local source tree ( EDIT: never mind, with |
So I suppose that my only option here is to give up on PEP 517 support? I just tried removing setuptools_scm as a build dependency but I still got the same error, which makes sense if pip is trying to install wheel to build wheel. |
@jamadden Ah yes, that might do it 🙁 So basically, by distributing a Also relevant may be the That's what the in-tree backend feature is intended to handle. @agronholm You should probably check with setuptools (ping @jaraco @pganssle) as they have been in this situation for a while now. But yes, short term you may not be able to use PEP 517 to publish wheels. Medium term, you should look at the in-tree backend support and confirm if it addresses your need - if it doesn't, we may have to rethink - it was definitely intended that it would handle issues like this (but we only really had setuptools and flit as examples at the time, so input from the wheel project would be really useful). |
I've created a new branch with the fix. I have to go for a while now but feel free to review it. |
This is in #334. |
Thanks for the quick turnaround @agronholm ! |
I've released v0.34.1 now. |
When i build docker image I get an error below
Use:
The text was updated successfully, but these errors were encountered: