Am 02.03.2017 um 16:49 schrieb Mauro Carvalho Chehab mchehab@s-opensource.com:
You can test it with virtualenv https://virtualenv.pypa.io/en/stable/userguide/
In short:
$ cd kernel-src $ virtualenv myenv $ source myenv/bin/activate $ pip install 'Sphinx==1.3.1' $ make ....
Hmm... at least here, building docs-next with Sphinx 1.3.1 inside a virtualenv is broken:
writing output... [ 16%] media/intro Exception occurred: File "/devel/v4l/patchwork/myenv-1.3/lib/python2.7/site-packages/docutils/writers/_html_base.py", line 671, in depart_document assert not self.context, 'len(context) = %s' % len(self.context) AssertionError: len(context) = 1 The full traceback has been saved in /tmp/sphinx-err-W7CPtT.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! Documentation/Makefile.sphinx:69: recipe for target 'htmldocs' failed make[1]: *** [htmldocs] Error 1 Makefile:1450: recipe for target 'htmldocs' failed make: *** [htmldocs] Error 2
Perhaps it is time for us to move minimal requirements to 1.4?
Hmm... the same happened with 1.4.9 inside virtualenv. It built fine with 1.5.2 (for htmldocs).
Thanks, Mauro
This is the error log with 1.4:
# Sphinx version: 1.4.9
....
File "/devel/v4l/patchwork/myenv-1.4/lib/python2.7/site-packages/docutils/nodes.py", line 187, in walkabout visitor.dispatch_departure(self) File "/devel/v4l/patchwork/myenv-1.4/lib/python2.7/site-packages/docutils/nodes.py", line 1895, in dispatch_departure return method(node) File "/devel/v4l/patchwork/myenv-1.4/lib/python2.7/site-packages/docutils/writers/_html_base.py", line 671, in depart_document assert not self.context, 'len(context) = %s' % len(self.context) AssertionError: len(context) = 1
I guess this is a error from newer docutils, so we have to fix docutils version also.
Sphinx itself specifies "docutils>=0.11"
https://github.com/sphinx-doc/sphinx/blob/1.3.1/setup.py#L52
So I guess it uses a up to date docutils or the ducutils which are already installed system wide.
— Markus —