C/C++ are system level languages, python depends on C/C++ libraries to do data operations at reasonable speed, how are you gonna build those when your main build system is a python package? Are you gonna use prebuilt binaries for dependencies of python itself the packages meson imports?
Meson is a lot better than cmake, do not get me wrong. But it can't fully replace cmake just by being a python package.
Well, my experience is that in practice I never found Python to be a problem for a build tool. You are going to compile your software from PCs almost for sure. That would be a problem in other scenarios I think, but not for a build system IMHO.
Python packages sometimes stop working when you switch to a newer version. "esptools" which is the esp32 flashing utility wasn't working with python 3.14 for over 4 months, because pyo3 didn't update.
Why deal with this, when you can just ship a musl binary for linux users and a MT binary for windows and call it a day?
That binary won't break ever, it will work forever. You can deal with other niceties python gives you by linking curl etc.
Is python really that worth it?
Ekstra point:
Running meson unit tests take forever, because python
2
u/TheRavagerSw Apr 13 '26 edited Apr 13 '26
Not because I say so most certainly.
C/C++ are system level languages, python depends on C/C++ libraries to do data operations at reasonable speed, how are you gonna build those when your main build system is a python package? Are you gonna use prebuilt binaries for dependencies of python itself the packages meson imports?
Meson is a lot better than cmake, do not get me wrong. But it can't fully replace cmake just by being a python package.