-
-
Notifications
You must be signed in to change notification settings - Fork 147
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
whl built from 16.14.0 release tarbball turns out empty #229
Comments
I did some triaging of releases, and 16.10.0 builds correctly and passes tests, while 16.10.1 is the first release that builds an empty wheel. |
That's interesting. Using
I'll see if I can replicate with the specific instructions provided. |
Indeed, if I'm using Python 3.10 and Setuptools 59.x and setuptools_scm, I get the reported behavior:
I observe that the If I change the command to use setuptools 61.2.0 instead of 59.6.0, the problem goes away, so that's almost certainly the cause. By using I see that dependency was bumped in https://github.com/jaraco/skeleton/blame/7ad4f2fa9fb2b030d3ecc231fc24de181705622d/pyproject.toml, presumably because setuptools 61.1 and earlier has limited support for pyproject.toml. I see that Setuptools 61.2 didn't introduce pyproject.toml support, but it did fix some bugs about it. It's possible that 61.2 was selected to include pyproject.toml support but perhaps later to include the bug fixes. Aha, I can see now where ini2toml defines the lower bound for supported setuptools to support the new toml features. So I guess it boils down to - you need to either upgrade setuptools or pin to the older path that can build with the older setuptools. Is there anything else you think this project should do? |
Thanks for the followup debugging. If I follow correctly, although 16.14.0 declares a dep on setuptools 56 in pyproject.toml, it should have been upgraded to 61.2 (which happened for path-16.15.0). Since this is a case of needing to update local deps, this can be closed. |
I see now that the aforementioned commit was incorrect. I've adjusted it to point to the correct commit in the skeleton. Looking at that same commit in this repo (f4529af), I can confirm that the change was only introduced in path 16.15, as you described. So yes, it seems that path was implicitly dependent on a later version of Setuptools. Since you bisected the change to observe that the regression happened with path 16.10.1, I dug a little deeper and searched the differences are here: v16.10.0...v16.10.1. The change that introduced the regression is almost certainly 63535c6, which removed configuration to instead rely on a Setuptools feature that was probably only introduced in a later version, and only coincidentally fixed when the config was moved to pyproject.toml and the minimum version bumped. Thanks for your help understanding and uncovering the issue, as it might also affect other skeleton-based projects. For this project, as you say, the v16.15.0 release is backward-compatible to v16.10.1, so the recommended fix is simply to upgrade. |
Building 16.14.0 (macOS), I get an empty whl with only the metadata files inside path-16.14.0.dist-info directory.
For the record, the last time I tried to build path (12.0.1) using the setup.py, it built fine.
Here's my build log:
These are the contents of the resulting wheel:
I have setuptools-59.6.0 and setuptools-scm-6.4.2, both of which fulfill the deps as listed in pyproject.toml. I need path on the way to upgrading setuptools (which it needs for tests).
The text was updated successfully, but these errors were encountered: