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 python wheels #76

Merged
merged 26 commits into from
Aug 5, 2023
Merged

Add python wheels #76

merged 26 commits into from
Aug 5, 2023

Conversation

Meakk
Copy link
Member

@Meakk Meakk commented Jun 29, 2023

No description provided.

@Meakk Meakk self-assigned this Jun 29, 2023
@Meakk Meakk force-pushed the wheels branch 3 times, most recently from d1eba63 to bbe66d1 Compare June 30, 2023 11:42
@Meakk Meakk requested a review from mwestphal July 18, 2023 20:51
@Meakk
Copy link
Member Author

Meakk commented Jul 18, 2023

@mwestphal please review

The generated wheels can be download here: https://github.com/Meakk/f3d-superbuild/actions/runs/5590519905
You can see the content of wheels using unzip -l foo.whl
You can install it locally using pip install foo.whl (make sure to use the correct one and to run it in a venv)

@Meakk
Copy link
Member Author

Meakk commented Aug 4, 2023

I suggest we move forward and even if it's not perfect, the wheels are properly generated.
Here is the dispatch workflow run: https://github.com/Meakk/f3d-superbuild/actions/runs/5753444662

We still have many things to do for Python anyway before the release (rework bindings, monkey patching and pytest).
I tested the wheels 3.11 Linux and 3.9 Windows successfully.

I identified these remaining things to do in a (more or less) near future:

  • Enable sscache and run the worflow automatically (@mwestphal? ^^)
  • Avoid symlink/soversion duplication of zlib (and future shared deps) to reduce Linux/macOS wheel size
  • Enable TBB (now that shared libs copy is working, it should work out of the box)
  • Enable raytracing? Probably challenging because of dynamic loading
  • Add tests of wheels with pytest (can be run automatically by ciwheelbuild after each wheel generation)
  • Add more platforms (priority on ARM), cross-compiling is supported by ciwheelbuild
  • Add a release workflow for automatic upload to PyPI

@mwestphal
Copy link
Contributor

Good writeup! it should be put into a issue once this is merged

@mwestphal mwestphal self-requested a review August 5, 2023 09:02
@Meakk Meakk merged commit 7e7aefa into f3d-app:main Aug 5, 2023
@Meakk Meakk deleted the wheels branch August 5, 2023 09:12
@mwestphal mwestphal mentioned this pull request Aug 5, 2023
7 tasks
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