Switch from distutils to setuptools to fix namespace package issues
Distutils and setuptools projects that populate the same namespace
package do not play well together. Setuptools is smart enough to
skip installation of the namespace package's dummy __init__.py
file
and its ancillary .pyc
or __pycache__
files, but distutils is not.
Distutils projects that use namespace packages are likely to disrupt
package managers that protect against two packages trying to install
the same files.
It is relatively rare these days to find Python projects that use distutils directly rather than setuptools. In fact, the official Python standard library documentation for distutils (https://docs.python.org/3/library/distutils.html) says:
Most Python users will not want to use this module directly, but instead use the cross-version tools maintained by the Python Packaging Authority.
Switching python-ligo-lw from distutils to setuptools simplifies software packaging.