You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Right now, in order to issue a release, we download the latest libasherah bundle from the GitHub project, and include the compiled libraries for all platforms, then release a single wheel that is usable for all Python versions and all platforms. This is producing, currently, a 23mb wheel file.
What we should be doing instead is building the platform-specific libraries at bundle time, and bundling only the necessary libraries. From what I have been able to figure out so far, this will involve:
Add a git submodule for asherah-cobhan
Split the publish workflow to do builds across all supported Python versions and platforms
Python 3.7, 3.8, 3.9, 3.10
MacOS, Linux
Have the individual builds compile libasherah, then produce version/platform specific wheels
Ensure that libasherah is contained in the sdist
This will end up producing, for example, asherah-0.2.0-cp39-cp39-macosx_11_0_x86_64.whl
Our build/publish time will be massively increased, but wheel size will be massively decreased, and there will be no more magic bundling of external libraries that could stand out as a potential red flag to external folks.
One optimization I would hope for would be that we could produce asherah-0.2.0-py3-macosx_11_0_x86_64.whl. The difference here would be that it's platform dependent, but not python version dependent. I'm just not sure how to make this work, especially with Poetry.
The text was updated successfully, but these errors were encountered:
Right now, in order to issue a release, we download the latest
libasherah
bundle from the GitHub project, and include the compiled libraries for all platforms, then release a single wheel that is usable for all Python versions and all platforms. This is producing, currently, a 23mb wheel file.What we should be doing instead is building the platform-specific libraries at bundle time, and bundling only the necessary libraries. From what I have been able to figure out so far, this will involve:
This will end up producing, for example,
asherah-0.2.0-cp39-cp39-macosx_11_0_x86_64.whl
Our build/publish time will be massively increased, but wheel size will be massively decreased, and there will be no more magic bundling of external libraries that could stand out as a potential red flag to external folks.
One optimization I would hope for would be that we could produce
asherah-0.2.0-py3-macosx_11_0_x86_64.whl
. The difference here would be that it's platform dependent, but not python version dependent. I'm just not sure how to make this work, especially with Poetry.The text was updated successfully, but these errors were encountered: