Closed rgaudin closed 1 year ago
Patch and project coverage have no change.
Comparison is base (
cd8766f
) 93.12% compared to head (4054038
) 93.12%.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.
This introduce two changes:
The first one is independent but would require rewriting the tests and release workflows so given the second one is dependent on the first one, I bundled them in this PR.
Better builds
The build process is now completely integrated. No more separate downloading of libzim or tweaking of any kind.
The main changes here are:
include/
for compilationlibzim/
for linking and insidelibzim/
in the wheelUsing
cibuildwheel
cibuildwheel is a pypa project that simplifies the creation of many per-platform wheels ; targeting common CI envs.
With a config file (inside out
project.toml
) we can specify all our targets and it will create all the wheels in awheelhouse/
folder in a single commandChange of workflows
Test workflow
Rewritten to accommodate the build simplicity but is still running tests individually on various python versions on macos and linux.
Although it's tested in cibuildwheel, those tests are cheap and more verbose so it's more valuable.
Release workflow
Replaced with a wheels one that calls cibuildwheel. It creates all the wheels and stores them as artifact on Github. It also creates the sdist of course.
When run on a
release
, it uploads them all to PyPi.Note that this awaits the aarch64-bionic and x86_64-bionic in nightlies to be merged