Open arahlin opened 1 month ago
After some thought and discussion with @sbenton, it probably makes the most sense to use --disable-modules
and bake in all the encoding libraries into the wheel. I've updated things so that all but the slim
and zzslim
encodings are included. It looks like the slimdata library hasn't been updated since 2017, so might be ok to leave this one out?
This PR builds wheels for Python versions 3.8 through 3.12, for many of the common Linux and OSX architectures using cibuildwheel. I hope you find this useful!
I've put this together within the constraints of the build system, so that the workflow is largely just using
autotools
to prepare everything except compiling the python package. I've also added a very minimalpyproject.toml
file to enable the cibuildwheel framework to do its thing. Feel free to rearrange, add metadata, etc.Each wheel is built against the oldest supported numpy version (https://pypi.org/project/oldest-supported-numpy/), then repaired such that
libgetdata
and any shared encoding libraries are bundled with the python module.The publisher action will automatically upload a new release assuming you add this repo as a trusted publisher on PyPI in advance. I'm assuming you're not ready for a new release yet, so the workflow also uploads the wheels as artifacts with the action if you want to be able to inspect / test them without a release.