-
Notifications
You must be signed in to change notification settings - Fork 160
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
oldest-supported-numpy Erroneously Required in Apple Silicon Python 3.10 Wheel #201
Comments
@da-wad Can you please comment on this? |
Hi, I'm happy to create (another) post release with updated wheels from you, but want to be confident that we don't create other problems. Ideally we want wheels which work with every supported version of numpy, so does building with a newer numpy mean it is still possible to use the wheels with an older numpy? Or is there a way to insist on the "oldest-supported-numpy" being a minimum version? |
Hi, Perhaps this is not the most rigorous way to do it, but the way I've done it in the past was to insist on using oldest-supported-numpy during the building of wheels (i.e. in the github action script) and allow the numpy requirement for installation to be free-floating. Everything was fine the way things were being done, I just did something dumb while building the 3.10 wheel manually and made it so that pip would insist on using the exact oldest-supported-numpy version during use, not just during building. You can also just steal the current parameters from |
This is causing me a big problem with dependency resolution with I also would support having a @william-silversmith anything I can help with to push this through? |
@da-wad @william-silversmith What can we do to resolve this concern? Installing things with zfpy is presently pretty problematic with python 3.10 right now due to this issue. |
I can at least try building some universal wheels on my end and post them here. |
Hi all, Here are some updated wheels with the version bumped to 1.0.1 so that if you re-upload them (along with a new build) people will automatically have them installed as the newest version. Let me know if you'd like to try something different re: versioning. |
@lindstro @da-wad How can we resolve this? 1.0.0 dependency resolution doesn't even work with Python 3.11. Like @fcollman mentioned it does cause many issues with installation. I believe the universal wheels by @william-silversmith will solve the issue given Zfp releases a 1.0.1 version. Thanks a lot. |
I don't know all the issues involved, though I'd be willing to cut a 1.0.1 release if that fixes the problem. It's however unclear to me what changes to zfp would be needed. Is it just a matter of bumping the version, or do we also need to make changes to the zfpy build scripts? Are there any interactions with #210 that we need to consider? |
Just to push this forward, let me add some comments :) @william-silversmith please chime in if I'm wrong.
|
Yes, essentially it just needs a new release with the new binaries uploaded. The previous version of them suffered from a mistake I made while building manually. The wheels are built with oldest-supported-numpy (and so are compatible with future numpy versions) but no longer require using the oldest supported numpy version during installation. |
@lindstro @william-silversmith, can we please fix this one way or another? I am unsure what exactly needs to be done if you all tell me I can make a PR! Or is it just a matter of making new wheels? |
It's really just a matter of bumping the version and releasing new wheels, incl. the ones I posted above. |
Just bumping the version is of course easy enough. However, assuming we'd release what's currently on |
It looks like the fix is coming soon: https://github.blog/2023-10-02-introducing-the-new-apple-silicon-powered-m1-macos-larger-runner-for-github-actions/ |
Hi @lindstro, just wanted to check if any progress was made about this. Please let me know if there is anything I can do to help :) I can test things, or review code changes etc. |
Sorry this is taking so long. I've been on extensive travel the past couple of months but will return to this issue tomorrow. I feel confident that we will be ready to release 1.0.1 next week. |
zfp 1.0.1 has been released. |
Thanks @lindstro ! It seems like the wheels didn't make it to PyPI yet. Seems like this is where they get built: https://github.com/LLNL/zfpy-wheels. Do they need to be triggered manually? Currently it seems to point to hash Also, like @da-wad mentioned, the Apple silicon runners seem to be available. I think by adding |
Will have time to fix later this week. |
setup.py is not actually valid Python... see: Line 14 in 3f8de26
@GarrettDMorrison I guess there was a reason to add |
@da-wad thank you for catching this, not sure how that ended up in there. There were some zfpy test build issues and this was done while figuring them out. It looks more like a snapshot from when we were in the middle of modifying setup.py while debugging though and not anything meant to be committed. I'm not sure how it made it through but it should probably be reverted. Not sure what the best way to do that is since it is technically in the 1.0.1 release. |
With my very limited Python knowledge, I don't know what's impacted by this. I'd hate to have to cut another release with just a handful of characters changed. Suggestions? |
@da-wad I assume we need to fix |
Hi everyone :) Sorry to bother you again about this, but any progress made here? We are still having issues with Macs and dependency resolution. |
I'm afraid all this Python stuff is beyond my expertise. I would welcome any suggestions on how to move forward. |
I can take a stab at it after spring break this week. @lindstro, who maintains the Python wheels for ZFP? |
@da-wad has historically been the one doing this on a volunteer basis. As the zfp team currently does not have a Python expert, we have to lean on external contributors, so I really appreciate your offer to help with this. To be frank, I don't know exactly what the issues are, e.g., whether it's just a fix needed for |
Hi zfpy team,
Thanks again for uploading my wheels! I was attempting to use them and ran into an issue that I found was my own doing. During the wheel compilation, I had added
install_requires=['oldest-supported-numpy', 'cython']
to setup.py while I was experimenting, but forgot to remove it. This is causing a version conflict with some other software I am using that requires a newer version of numpy. I'm happy to produce a set of fixed wheels if that would be okay. I've developed a superior build process since I last tried this.To actually build the wheels:
The key difference here from my previous build process is that I have finally figured out how to get tox to run on setup.py files that require numpy. This ensures a clean build.
The text was updated successfully, but these errors were encountered: