Source: python-gevent
Version: 1.2.2-2
Severity: serious
Justification: fails to build from source

Dear maintainer,

python-gevent fails to build with Sphinx 1.6.6.

The build log can be found here:

When I run sphinx-doc with --verbose flag, I get the following traceback:

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/sphinx/", line 306, in main, filenames)
  [... Sphinx internals ...]
  File "/usr/lib/python2.7/dist-packages/sphinx/ext/", line 1848, in 
  File "/usr/lib/python2.7/dist-packages/sphinx/ext/", line 1545, in 
  [... lots of similar lines here ...]
  File "/usr/lib/python2.7/dist-packages/sphinx/ext/", line 1540, in 
  File "/usr/lib/python2.7/dist-packages/sphinx/ext/", line 1538, in 
    return super(ClassDocumenter, self).generate(more_content=more_content,
RuntimeError: maximum recursion depth exceeded while calling a Python object

The problem is that python-gevent replaces ClassDocumenter with its own class
named MyClassDocumenter:

But Sphinx does not know about this, so super(ClassDocumenter, self).generate
is the same as self.generate, which results in a recursion.

A potential fix could be overriding generate method in MyClassDocumenter,
or not replacing the standard class at all.

Dmitry Shachnev

Attachment: signature.asc
Description: PGP signature

Reply via email to