Skip to content
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

Add build wheels, tarball and deploy to pypi #191

Merged
merged 1 commit into from
Dec 6, 2023

Conversation

t20100
Copy link
Collaborator

@t20100 t20100 commented Dec 4, 2023

This PR adds a github actions "workflow" to automate the generation of wheels thanks to cibuildwheel and the upload to pypi thanks to gh-action-pypi-publish.
This workflow is triggered when a release is published in github.
I already did the set-up to use pypi's trusted publishers. As it is you have to publish a github release on a tag starting with v to trigger the workflow and click on a button approve the upload to pypi. This can be more automated (e.g., upload when a tag is pushed to the repo but it makes it more sensitive to errors).

It build the source distribution and wheels for Python 3.7 to 3.12 for:

  • MacOS: universal2, i.e., x86_64 and arm64
  • Windows: x86_64
  • Linux: x86_64, aarch64 and ppc64le

Tests are run only on "native" architecture (i.e., x86_64).
It could also build for 32bits architecture on Windows and Linux but dependencies like scipy are not available for this architecture so it has little interest.

Limitations:

  • No python3.12 wheel for ppc64le: This can be done but not for manylinux2014 as I didn't managed to build a wheel of numpy for python3.12 on ppc64le (yet?).
  • No tests on Windows, if I recall it was failing on compiling bslz4_to_sparse, so the solution could be to generate wheels for this project too.
  • No tests for emulated architectures.

I tested the deployment on test.pypi.org

@t20100 t20100 requested a review from jonwright December 4, 2023 15:01
@t20100 t20100 changed the title Add build wheels and tarball Add build wheels, tarball and deploy to pypi Dec 4, 2023
@jonwright jonwright merged commit 24c372f into FABLE-3DXRD:master Dec 6, 2023
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants