[Python-modules-team] Bug#961741: python3-sphinx: new release broke sphinx-build OUTPUTDIR
Simon McVittie
smcv at debian.org
Thu May 28 17:36:00 BST 2020
On Fri, 29 May 2020 at 00:02:46 +0800, Drew Parsons wrote:
> http_proxy='127.0.0.1:9' /usr/share/sphinx/scripts/python3/sphinx-build /usr/bin/sphinx-build -N -bhtml \
> .pybuild/cpython3_3.8_numba/build/docs/source/ \
> debian/numba-doc/usr/share/doc/numba-doc/html/
This looks wrong? It seems like it's running
/usr/share/sphinx/scripts/python3/sphinx-build with first argument set
to /usr/bin/sphinx-build. The argument parser will probably think
/usr/bin/sphinx-build is the SOURCEDIR,
.pybuild/cpython3_3.8_numba/build/docs/source/ is the OUTPUTDIR
and debian/numba-doc/usr/share/doc/numba-doc/html/ is in FILENAMES.
>From numba's d/rules:
> SPHINX_BUILD = $(shell dpkg -L python3-sphinx | grep "sphinx-build$$")
I think this is why. In previous versions this would have only found
one result, but that's really fragile: the fact that there was only one
filename ending with sphinx-build in the package was an implementation
detail that you can't rely on, and in the new version it isn't true
any more.
If what you want is to run "the version of sphinx that is packaged as
python3-sphinx, whatever that might be", use:
SPHINX_BUILD = python3 -m sphinx
But you might be better off using Depends: sphinx
and "SPHINX_BUILD = sphinx-build" in future: see
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=961206 for details.
I think this should probably be reassigned to numba, and any other
packages that were finding sphinx-build in the same fragile way.
smcv
More information about the Python-modules-team
mailing list