You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
TL;DR, calling setup.py directly (python setup.py ... )is no longer recommended, although there isn't a real clear path forward. The hang-up seems to be (unsurprisingly) the building of the C++ parts. But there have been movements in the latest versions of Python to remove or replace various bits of the "traditional" build system.
ChatGPT is suggesting we look at [scikit-build-core])https://github.com/scikit-build/scikit-build-core) as a build backend, which seems to be a way of using CMake in building the Python extensions. This might be good, since it would mean that there would be a single build system, instead of two different ones for Python.
So the path forward seems to be:
Move what we can to pyproject.toml
(Interim?) continue to use the existing setup.py as the build backend in the pyproject file?
Integrate scikit-build-core
Change the GH actions to use the new setup?
This seems like a significant amount of work, and since everything is working now it's not urgent. But it's probably an opportunity to update to pyproject.toml and unify the build system on CMake.
The text was updated successfully, but these errors were encountered:
ahankinson
changed the title
setup.py is no longer recommended for use
Calling setup.py directly is no longer recommended for use
Apr 14, 2025
ahankinson
changed the title
Calling setup.py directly is no longer recommended for use
Calling setup.py directly is no longer recommended
Apr 14, 2025
In addition: The current GitHub python actions use Python 3.9 as the base installation, but this will be EOL in October 2025. Ideally we would use this opportunity to bring things up to the latest stable (3.13 at this moment) BUT as of Python 3.11, setuptools is deprecated in the base installation.
So moving to anything later than 3.10 will anyway require a re-write of the current setup.py.
See:
But also:
TL;DR, calling setup.py directly (
python setup.py ...
)is no longer recommended, although there isn't a real clear path forward. The hang-up seems to be (unsurprisingly) the building of the C++ parts. But there have been movements in the latest versions of Python to remove or replace various bits of the "traditional" build system.Verovio only seems to call setup.py directly for building the source distributions. However, it also recommends calling setup.py directly in the book: https://book.verovio.org/installing-or-building-from-sources/python.html#building-the-toolkit-without-cmake
This might be a good opportunity to move to the new
pyproject.toml
standard, https://packaging.python.org/en/latest/guides/writing-pyproject-toml/.ChatGPT is suggesting we look at [scikit-build-core])https://github.com/scikit-build/scikit-build-core) as a build backend, which seems to be a way of using CMake in building the Python extensions. This might be good, since it would mean that there would be a single build system, instead of two different ones for Python.
So the path forward seems to be:
This seems like a significant amount of work, and since everything is working now it's not urgent. But it's probably an opportunity to update to pyproject.toml and unify the build system on CMake.
The text was updated successfully, but these errors were encountered: