-
Notifications
You must be signed in to change notification settings - Fork 34
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
Use cibuildwheel
for all architectures; add support for aarch64
linux; publish musllinux
wheels as well as manylinux
; move cibuildwheel
configuration to pyproject.toml
; use pypa action for PyPI upload
#118
Conversation
Closing this because I just realized the CI/CD is already running on my fork, will reopen once ready. |
cibuildwheel
for all architectures; add support for aarch64
linux; move cibuildwheel
configuration to pyproject.toml
; use pypa action for PyPI uploadcibuildwheel
for all architectures; add support for aarch64
linux; publish musllinux
wheels as well as manylinux
; move cibuildwheel
configuration to pyproject.toml
; use pypa action for PyPI upload
When you have some time @bodono please review. You'll have to set up tokens for trusted publishing in PyPI. This page explains it -> https://docs.pypi.org/trusted-publishers/adding-a-publisher/ , You can see from the runner logs that the Linux job builds manylinux wheels for x86_64 and aarch64, and musllinux images for x86_64. That's why it takes longer than the others. Especially the aarch64 wheels take longer to compile, I suspect it's a combination of running QEMU virtualization inside docker, and openblas lacking optimized kernels for aarch64. Everything compiles and passes pytest, anyways. I can also add steps to make a Github release on tag, like |
PS you can inspect the wheels that are built, in the logs for example for the Linux wheels job there is the link to the artifact under the upload step -> https://github.com/bodono/scs-python/actions/runs/11544095456/artifacts/2109819766. I just tried to install a wheel manually in a test environment and confirm that it works and is linked correctly. |
Thanks for doing all this @enzbus ! I will take a look asap. |
Thanks @enzbus, this looks great, and much cleaner! Let's get this landed asap! A couple of questions I have before that(as I'm not very familiar with all this):
|
Yes, I'm not too familiar with the Github release system either; please do edit the trigger part of the
That is actually super easy. I recently tested it with a repository I started 2 weeks ago,
I saw that. This is a bit heavier, merge whichever you prefer first. This one solves the issue some time ago a user raised about missing Bonus, |
|
Hey Brendan; turns out
|
Thanks Enzo, I did the rebase. Can you double check it looks good and if so we can merge this! |
Looks good to merge! Then dependabot will keep cibuildwheel updated and it will add new Python versions as they become available. You'll still have to make new tags to deploy :) |
Great! Thanks again for doing this @enzbus ! |
Hello @bodono , testing here to build wheels using cibuildwheel . Not sure how bad it is to reproduce the pipeline for Windows for example, but if it works it should be much easier to maintain.