-
Notifications
You must be signed in to change notification settings - Fork 38
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
PyPI distributable wheel #315
Comments
Thanks to @ugermann who's solved the build issues on CentOS via a RockyLinux docker, we have a manylinux wheel building at https://github.com/jerinphilip/bergamot-translator/runs/5991984231?check_suite_focus=true. It will take me some more time to export the artifacts and bring manylinux wheels here, leaving the update here for future reference. |
+1 for this task. I'm pretty sure distribution through PyPi would increase adoption drastically. @jerinphilip thank you for this work! |
Old GitHub CI using Ubuntu and MacOS explicitly and building wheels have been removed in favour of the more portable pypa specified builds. These wheels should work just as well across a wider range of distributions. pybind11:CMakeLists.txt requires Development.Module instead of Development.* to avoid Embed from getting in the way of manylinux builds. manylinux_x86_64 builds are added for cp3.6 - 3.10. The linux build uses an old image via docker. Since the docker images are able to use shared ccache folder, builds quite fast on warm starts. ccache usage in setup.py is now triggered by an environment variable. This allows for builds not to fail if ccache not present. On tag pushes corresponding to versions, CI is configured to deliver built wheels to PyPI, reading from repository secrets. Improves setup.py including documentation and some formatting, and additional links to source. Fixes: #315
The wheels built on ubuntu straightforward work with the respective distributions. However, python community seems to have imposed standards on what wheels can be published on PyPI, and prefers a "manylinux" wheel.
https://github.com/pypa/manylinux
A good thing to have is a GitHub actions environment setting up manylinux, and creating the wheel for the same. We'll have to see if there are any issues of speed or symbol missing or such.
There was an ongoing effort at jerinphilip/lemonade#45, which is currently failing at ssplit. Towards this ugermann/ssplit-cpp#30 has been opened.
The text was updated successfully, but these errors were encountered: