Hi everyone,
I’ve created a simple Python package that serves as a wrapper for a C library. It supports Windows, Linux, and macOS. Since each platform requires a different precompiled library, I’ve included three platform-specific wheels containing the respective libraries.
However, I noticed that the wheels I’ve published are tagged for Python 3.13 specifically. My question is:
- Should the current wheels be installable on older Python versions (e.g., 3.9, 3.10, etc.)?
- If not, is there a simple way to make the package compatible across multiple Python versions?
I don’t build anything Python-specific in the package; it simply downloads the precompiled library, places it in the package, and includes an __init__.py
file as a ctypes wrapper.
I’m currently using Hatch and uv for packaging, and while I know about tools like cibuildwheel
, I’m unsure if I need it since I’m not compiling anything.
Ultimately, I want to package this once and ensure it works seamlessly across older and newer Python versions. Is this achievable, and if so, how?
Here are some details about the project:
- Repository: GitHub - aec-rs
- Publishing CI workflow: GitHub Actions - publish-pypi.yml
Any advice or best practices would be greatly appreciated.
Thanks!