FTBFS recompiling the manual under Sphinx 1.5
Reported by @pmattern:
After upgrading Python Sphinx to 1.5 setting -DREBUILD_MANUAL=on triggers FTBFS, see make output below. Problem ceases after reverting to Sphinx 1.4.9. Both times quark-sphinx-theme 0.4.1 built against the respective Sphinx version before starting the attempts to build SpeedCrunch.
Generating moc source moc_userfunctionlistwidget.cpp Traceback (most recent call last): File "/usr/bin/sphinx-build", line 6, in <module> from pkg_resources import load_entry_point File "/usr/lib/python3.5/site-packages/pkg_resources/__init__.py", line 3017, in <module> @_call_aside File "/usr/lib/python3.5/site-packages/pkg_resources/__init__.py", line 3003, in _call_aside f(*args, **kwargs) File "/usr/lib/python3.5/site-packages/pkg_resources/__init__.py", line 3030, in _initialize_master_working_set working_set = WorkingSet._build_master() File "/usr/lib/python3.5/site-packages/pkg_resources/__init__.py", line 659, in _build_master ws.require(__requires__) File "/usr/lib/python3.5/site-packages/pkg_resources/__init__.py", line 967, in require needed = self.resolve(parse_requirements(requirements)) File "/usr/lib/python3.5/site-packages/pkg_resources/__init__.py", line 853, in resolve raise DistributionNotFound(req, requirers) pkg_resources.DistributionNotFound: The 'requests' distribution was not found and is required by Sphinx Generating moc source moc_variablelistwidget.cpp Traceback (most recent call last): File "/usr/local/peter/Tests/SpeedCrunch/Projekt/speedcrunch/doc/src/doc-tool.py", line 208, in <module> main(sys.argv) File "/usr/local/peter/Tests/SpeedCrunch/Projekt/speedcrunch/doc/src/doc-tool.py", line 202, in main args.func(tools, args) File "/usr/local/peter/Tests/SpeedCrunch/Projekt/speedcrunch/doc/src/doc-tool.py", line 137, in build_bundled_docs extra_config={'qthelp_basename': basename}) File "/usr/local/peter/Tests/SpeedCrunch/Projekt/speedcrunch/doc/src/doc-tool.py", line 77, in build_docs return tools.sphinx_build(*args) File "/usr/local/peter/Tests/SpeedCrunch/Projekt/speedcrunch/doc/src/doc-tool.py", line 52, in <lambda> return lambda *args: self.run_tool(name, *args) File "/usr/local/peter/Tests/SpeedCrunch/Projekt/speedcrunch/doc/src/doc-tool.py", line 49, in run_tool return subprocess.check_call(cmd) File "/usr/lib/python3.5/subprocess.py", line 581, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['/usr/bin/sphinx-build', '/usr/local/peter/Tests/SpeedCrunch/Projekt/speedcrunch/doc/src', '/usr/local/peter/Tests/SpeedCrunch/Projekt/build/doc/fr_FR', '-b', 'qthelp2', '-D', 'language=fr_FR', '-D', 'qthelp_basename=manual-fr_FR', '-t', 'sc_bundled_docs']' returned non-zero exit status 1 Generating moc compilation speedcrunch_automoc.cpp make[2]: *** [doc/CMakeFiles/manual.dir/build.make:90: doc/manual.qrc] Error 1 make[1]: *** [CMakeFiles/Makefile2:667: doc/CMakeFiles/manual.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... [ 3%] Built target speedcrunch_automoc make: *** [Makefile:161: all] Error 2
Comments (4)
-
-
To wrap up my hijack, I fixed the theme.
Anyway, this seems to be a bad Sphinx installation rather than a SpeedCrunch bug.
-
The problem is caused by the lack of Requests and has nothing to do with SpeedCrunch.
On Arch Linux SpeedCrunch compiles flawlessly after installing package python-requests or when Sphinx is installed from the PyPI in the first place which pulls Requests by default.On a side note the role of Requests as of Sphinx 1.5 doesn't look exactly obvious to me.
Being pulled bypip install sphinx
suggests it's a rather crucial one. But when Sphinx is built like it's done by the Arch Linux package python-sphinx, see commandbuild()
in PKGBUILD, there's no warning that Requests is missing let alone FTBFS. Also, the only upstream documentation I could find isn't exactly verbose.
Meanwhile there's an Arch Linux bug report addressing the problem as well. -
- changed status to invalid
- Log in to comment
@pmattern How did you upgrade to Sphinx 1.5? According to the error message,
requests
isn't it installed which Sphinx 1.5 now depends on. I just tried it on Ubuntu 16.04 with Sphinx 1.5 installed via pip and things built (mostly) fine.There's another problem with 1.5 however: the
qthelp
builder now seems to override the theme fromconf.py
with an unstyled theme. In the words of the changelog, "QtHelpBuilder uses nonav theme instead of default one to improve readability." However, that overrules our custom theme. I'll look into it some more.