On Thu, 20 Jul 2017 22:23:31 +0200 Matthias Klose <d...@debian.org> wrote:
> On 20.07.2017 16:40, Neil Williams wrote: > > Package: python2.7 > > Version: 2.7.13-4 > > Severity: serious > > Justification: causes other packages to FTBFS > > > > With 2.7.13-4 installed, I am unable to build documentation as > > sphinx errors out: > > please could you check if it builds with the debug interpreter? > $ make SPHINXBUILD="python -m pdb /usr/share/sphinx/scripts/python2/sphinx-build" -C doc/v2 html make: Entering directory '/home/neil/code/lava/lava-server/doc/v2' python -m pdb /usr/share/sphinx/scripts/python2/sphinx-build -b html -d _build/doctrees -n -j 4 . _build/html > /usr/share/sphinx/scripts/python2/sphinx-build(9)<module>() -> """ (Pdb) run Restarting /usr/share/sphinx/scripts/python2/sphinx-build with arguments: -b html -d _build/doctrees -n -j 4 . _build/html > /usr/share/sphinx/scripts/python2/sphinx-build(9)<module>() -> """ (Pdb) continue Running Sphinx v1.5.6 loading pickled environment... not yet created loading intersphinx inventory from https://docs.python.org/2/objects.inv... building [mo]: targets for 0 po files that are out of date building [html]: targets for 91 source files that are out of date updating environment: 91 added, 0 changed, 0 removed reading sources... [100%] test-repositories .. writing-tests waiting for workers... Exception occurred: File "/usr/lib/python2.7/dist-packages/sphinx/util/parallel.py", line 98, in _join_one exc, result = pipe.recv() EOFError The full traceback has been saved in /tmp/sphinx-err-hrke62.log, if you want to report the issue to the developers. Please also report this if it was a user error, so that a better error message can be provided next time. A bug report can be filed in the tracker at <https://github.com/sphinx-doc/sphinx/issues>. Thanks! The program exited via sys.exit(). Exit status: 1 > /usr/share/sphinx/scripts/python2/sphinx-build(9)<module>() -> """ (Pdb) w /usr/lib/python2.7/bdb.py(400)run() -> exec cmd in globals, locals <string>(1)<module>() > /usr/share/sphinx/scripts/python2/sphinx-build(9)<module>() -> """ (Pdb) p *** SyntaxError: SyntaxError('unexpected EOF while parsing', ('<string>', 0, 0, '')) (Pdb) where /usr/lib/python2.7/bdb.py(400)run() -> exec cmd in globals, locals <string>(1)<module>() > /usr/share/sphinx/scripts/python2/sphinx-build(9)<module>() -> """ (Pdb) u > <string>(1)<module>() (Pdb) u > /usr/lib/python2.7/bdb.py(400)run() -> exec cmd in globals, locals (Pdb) u *** Oldest frame (Pdb) d > <string>(1)<module>() (Pdb) d > /usr/share/sphinx/scripts/python2/sphinx-build(9)<module>() -> """ (Pdb) d *** Newest frame (Pdb) So, no, it doesn't build with -m pdb and the output from the debugger is even less helpful than from sphinx. $ cat /tmp/sphinx-err-hrke62.log # Sphinx version: 1.5.6 # Python version: 2.7.13+ (CPython) # Docutils version: 0.13.1 release # Jinja2 version: 2.9.6 # Last messages: # 91 added, 0 changed, 0 removed # reading sources... [ 14%] actions-boot .. data-export # reading sources... [ 28%] debian .. explain_first_job # reading sources... [ 42%] first-devices .. ipxe # reading sources... [ 57%] lava-dashboard-image-reports .. migrate-lava # reading sources... [ 71%] migrating-admin-example .. pipeline-writer # reading sources... [ 85%] pipeline-writer-secondary .. tables # reading sources... [100%] test-repositories .. writing-tests # # waiting for workers... # Loaded extensions: # sphinx.ext.coverage (1.5.6) from /usr/lib/python2.7/dist-packages/sphinx/ext/coverage.pyc # sphinx.ext.viewcode (1.5.6) from /usr/lib/python2.7/dist-packages/sphinx/ext/viewcode.pyc # sphinx.ext.todo (1.5.6) from /usr/lib/python2.7/dist-packages/sphinx/ext/todo.pyc # sphinx.ext.autodoc (1.5.6) from /usr/lib/python2.7/dist-packages/sphinx/ext/autodoc.pyc # sphinx.ext.intersphinx (1.5.6) from /usr/lib/python2.7/dist-packages/sphinx/ext/intersphinx.pyc # sphinx.ext.doctest (1.5.6) from /usr/lib/python2.7/dist-packages/sphinx/ext/doctest.pyc # alabaster (0.7.8) from /usr/lib/python2.7/dist-packages/alabaster/__init__.pyc Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/sphinx/cmdline.py", line 296, in main app.build(opts.force_all, filenames) File "/usr/lib/python2.7/dist-packages/sphinx/application.py", line 333, in build self.builder.build_update() File "/usr/lib/python2.7/dist-packages/sphinx/builders/__init__.py", line 251, in build_update 'out of date' % len(to_build)) File "/usr/lib/python2.7/dist-packages/sphinx/builders/__init__.py", line 265, in build self.doctreedir, self.app)) File "/usr/lib/python2.7/dist-packages/sphinx/environment/__init__.py", line 554, in update self._read_parallel(docnames, app, nproc=app.parallel) File "/usr/lib/python2.7/dist-packages/sphinx/environment/__init__.py", line 612, in _read_parallel tasks.join() File "/usr/lib/python2.7/dist-packages/sphinx/util/parallel.py", line 93, in join self._join_one() File "/usr/lib/python2.7/dist-packages/sphinx/util/parallel.py", line 98, in _join_one exc, result = pipe.recv() EOFError Disabling the -j option also fixes the problem: $ make SPHINXOPTS='' -C doc/v2 html Normally, the build would use SPHINXOPTS = -n -j 4 With a couple of workarounds available, I'm happy for the severity of this bug to be reduced, especially if it's going to be difficult to debug. Let me know what you think. -- Neil Williams ============= http://www.linux.codehelp.co.uk/
pgpz6nPHaxpyf.pgp
Description: OpenPGP digital signature