-
Notifications
You must be signed in to change notification settings - Fork 11
MAINT: Modernize cibuildwheel infrastructure #54
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
Conversation
Okay actions refused to run on this PR so I pushed the shell beginning parts directly to |
Okay so now the benefits here (other than using GHA which is becoming more standard I think) are:
So the set of wheels built is a superset of the old ones, except dropping 3.6 and 3.7 and adding 3.11 and 3.12. The complete list of wheels is here. |
@mgeier feel free to review/merge if you're happy! |
@mgeier I'll merge this and try cutting a release shortly. If you have comments on the PR at some point I'm happy to do a follow-up though! |
Seems to have worked as expected! 🎉 |
Thanks for your work on this, that's great! Sorry for my lack of response, I was quite busy these days, so I haven't had time to look into this too closely, but I was wondering about one thing: Is it really necessary to have wheels for different Python versions? We are not using Python's C API (but CFFI interfacing with a native C library), so why would we be bound by Python C API compatibility? Or am I missing something? |
I don't really understand any of this, but I found this example: https://pypi.org/project/curl-cffi/#files It only provides And I found another example that I understand even less: https://pypi.org/project/btclib_libsecp256k1/#files This has Anyway, all that is not very important, I was just wondering ... |
I am not knowledgeable about that either, but it sounds like we could try using ABI and |
... this post has a nice explanation I was reading a bit: https://blog.trailofbits.com/2022/11/15/python-wheels-abi-abi3audit/ |
Thanks for the information! In case somebody wants to try, I read that CFFI is already supposed to set And indeed, our latest wheels seem to contain files called |
release.yml
to ignore dependabot in release notesI already set up trusted publishing on PyPI so in theory once this is green and we merge and cut a release, all the new wheels should land on PyPI. This would be good because there are a bunch missing, e.g., not even Python 3.11 wheels are up there!