Desired behavior
SDFormat currently provides Python bindings but no standard way to build and distribute them as Python wheels on PyPI. The proposal is to enable creating a Python wheel using standard packaging tools to allow users to install SDFormat's Python bindings easily through a pip install command.
Alternatives considered
Manual local builds and installs of Python bindings through CMake.
Implementation suggestion
- Add a
pyproject.toml and specify scikit-build as build backend to automatically produce Python wheels by calling pip install .
- Add a minimal
setup.py to provide metadata and to ensure backwards compatibility.
- Modify
CMakeLists.txt in python directory if necessary to expose proper targets for scikit-build to use
- Test and validate against multiple Python versions
Additional context
Desired behavior
SDFormat currently provides Python bindings but no standard way to build and distribute them as Python wheels on PyPI. The proposal is to enable creating a Python wheel using standard packaging tools to allow users to install SDFormat's Python bindings easily through a
pip installcommand.Alternatives considered
Manual local builds and installs of Python bindings through CMake.
Implementation suggestion
pyproject.tomland specifyscikit-buildas build backend to automatically produce Python wheels by callingpip install .setup.pyto provide metadata and to ensure backwards compatibility.CMakeLists.txtinpythondirectory if necessary to expose proper targets forscikit-buildto useAdditional context