openslide / openslide-python

Python bindings to OpenSlide
https://openslide.org/
GNU Lesser General Public License v2.1
369 stars 180 forks source link

Switch to PEP 621 project metadata; build sdist and all wheels in CI #237

Closed bgilbert closed 11 months ago

bgilbert commented 11 months ago

Switch away from setup.py as much as possible. Drop obsolete test_suite and zip_safe settings. Combine multi-word keywords. Add repo and documentation URLs. Move tool configurations into pyproject.toml where possible. PEP 621 support requires setuptools ≥ 61.

Build the source tarball and wheels for Linux, macOS, and Windows in GitHub Actions using the Python build package. The Linux wheels support manylinux1 and above, after postprocessing with auditwheel, because the extension module doesn't use libc functions. The macOS wheels are multi-arch on Python 3.9+.

While we're here, minor release procedure updates: update the Fedora package and check that it propagated to the Copr before announcing the release; additionally announce releases to forum.image.sc.

openslide-bot commented 11 months ago

DCO signed off :heavy_check_mark:

All commits have been signed off. You have certified to the terms of the Developer Certificate of Origin, version 1.1. In particular, you certify that this contribution has not been developed using information obtained under a non-disclosure agreement or other license terms that forbid you from contributing it under the GNU Lesser General Public License, version 2.1.