[Calendarserver-maintainers] Bug#807088: pydoctor: breaks with newer versions of twisted

Jelmer Vernooij jelmer at debian.org
Sat Dec 5 08:50:37 UTC 2015


Source: pydoctor
Severity: important

pydoctor breaks when a newer version of twisted is installed. Twisted 15.2.1 works, 15.5.0 doesn't.

Error with the new twisted:

error   17-Oct-2015 10:18:18    Traceback (most recent call last):
error   17-Oct-2015 10:18:18      File "/usr/local/bin/pydoctor", line 12, in <module>
error   17-Oct-2015 10:18:18        sys.exit(main(sys.argv[1:]))
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/pydoctor/driver.py", line 390, in main
error   17-Oct-2015 10:18:18        writer.writeIndividualFiles(subjects, options.htmlfunctionpages)
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/pydoctor/templatewriter/writer.py", line 43, in writeIndividualFiles
error   17-Oct-2015 10:18:18        self.writeDocsFor(ob, functionpages=functionpages)
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/pydoctor/templatewriter/writer.py", line 68, in writeDocsFor
error   17-Oct-2015 10:18:18        self.writeDocsFor(o, functionpages)
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/pydoctor/templatewriter/writer.py", line 68, in writeDocsFor
error   17-Oct-2015 10:18:18        self.writeDocsFor(o, functionpages)
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/pydoctor/templatewriter/writer.py", line 65, in writeDocsFor
error   17-Oct-2015 10:18:18        self.writeDocsForOne(ob, f)
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/pydoctor/templatewriter/writer.py", line 86, in writeDocsForOne
error   17-Oct-2015 10:18:18        flattenToFile(fobj, page)
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/pydoctor/templatewriter/writer.py", line 19, in flattenToFile
error   17-Oct-2015 10:18:18        raise err[0]
error   17-Oct-2015 10:18:18    twisted.web.error.FlattenerError: Exception while flattening:
error   17-Oct-2015 10:18:18      <pydoctor.templatewriter.pages.ModulePage object at 0x7f960ecebe90>
error   17-Oct-2015 10:18:18      [Tag(u'html', children=[u'\n', u'  ', Tag(u'head', children=[u'\n', u'    ', Tag(u'title', children=[slot(u'title'), u' : API documentation']), u'\n', u'\n', u'    ', Tag(u'meta', attributes={u'content': u'text/html;charset=utf-8', u'http-equiv': u'Content-Type'}), u'\n', u'    ', Tag(u'link', attributes={u'href': u'bootstrap.min.css', u'rel': u'stylesheet', u'type': u'text/css'}), u'\n', u'    ', Tag(u'link', attributes={u'href': u'apidocs.css', u'rel': u'stylesheet', u'type': u'text/css'}), u'\n', u'  ']), u'\n', u'  ', Tag(u'body', children=[u'\n', u'\n', u'    ', Tag(u'nav', attributes={u'class': u'navbar navbar-default'}, children=[u'\n', u'      ', Tag(u'div', attributes={u'class': u'container'}, children=[u'\n', u'        ', Tag(u'div', attributes={u'class': u'navbar-header'}, children=[u'\n', u'          ', Tag(u'a', attributes={u'class': u'navbar-brand', u'href': u'index.html'}, children=[u'\n', u'            ', slot(u'project'), u' API Docu
 mentation', u'\n', u'          ']), u'\n', u'        ']), u'\n', u'      ']), u'\n', u'    ']), u'\n', u'\n', u'    ', Tag(u'div', attributes={u'class': u'container'}, children=[u'\n', u'\n', u'      ', Tag(u'div', attributes={u'class': u'page-header'}, children=[u'\n', u'        ', slot(u'heading'), u'\n', u'\n', u'        ', Tag(u'span', attributes={u'id': u'partOf'}, children=[u'\n', u'          ', slot(u'part'), u'\n', u'          ', Tag(u'a', children=[u'View Source']), u'\n', u'          ', Tag(u'a', children=[u'(View In Hierarchy)']), u'\n', u'        ']), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'class': u'extrasDocstring'}, children=[u'\n', u'        ', slot(u'extras'), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'class': u'moduleDocstring'}, children=[u'\n', u'        ', slot(u'docstring'), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'id': u'splitTables'}, children=[u'\n', u'        ', slot(u'
 mainTable'), u'\n', u'        ', Tag('', children=[u'\n', u'          ', Tag(u'p', attributes={u'class': u'inheritedFrom'}, children=[u'\n', u'            Inherited from ', slot(u'baseName'), u':', u'\n', u'          ']), u'\n', u'          ', slot(u'baseTable'), u'\n', u'          ']), u'\n', u'\n', u'          ', slot(u'packageInitTable'), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'id': u'childList'}, children=[u'\n', u'\n', u'        ', slot(u'childlist'), u'\n', u'\n', u'      ']), u'\n', u'      ', Tag(u'address', children=[u'\n', u'        ', Tag(u'a', attributes={u'href': u'index.html'}, children=[u'API Documentation']), u' for ', slot(u'project'), u', generated by ', Tag(u'a', attributes={u'href': u'https://github.com/twisted/pydoctor/'}, children=[u'pydoctor']), u' at ', slot(u'buildtime'), u'.', u'\n', u'      ']), u'\n', u'\n', u'    ']), u'\n', u'  ']), u'\n'])]
error   17-Oct-2015 10:18:18      Tag <html>
error   17-Oct-2015 10:18:18      Tag <html>
error   17-Oct-2015 10:18:18      [u'\n', u'  ', Tag(u'head', children=[u'\n', u'    ', Tag(u'title', children=[slot(u'title'), u' : API documentation']), u'\n', u'\n', u'    ', Tag(u'meta', attributes={u'content': u'text/html;charset=utf-8', u'http-equiv': u'Content-Type'}), u'\n', u'    ', Tag(u'link', attributes={u'href': u'bootstrap.min.css', u'rel': u'stylesheet', u'type': u'text/css'}), u'\n', u'    ', Tag(u'link', attributes={u'href': u'apidocs.css', u'rel': u'stylesheet', u'type': u'text/css'}), u'\n', u'  ']), u'\n', u'  ', Tag(u'body', children=[u'\n', u'\n', u'    ', Tag(u'nav', attributes={u'class': u'navbar navbar-default'}, children=[u'\n', u'      ', Tag(u'div', attributes={u'class': u'container'}, children=[u'\n', u'        ', Tag(u'div', attributes={u'class': u'navbar-header'}, children=[u'\n', u'          ', Tag(u'a', attributes={u'class': u'navbar-brand', u'href': u'index.html'}, children=[u'\n', u'            ', slot(u'project'), u' API Documentation', u'\n', u'  
         ']), u'\n', u'        ']), u'\n', u'      ']), u'\n', u'    ']), u'\n', u'\n', u'    ', Tag(u'div', attributes={u'class': u'container'}, children=[u'\n', u'\n', u'      ', Tag(u'div', attributes={u'class': u'page-header'}, children=[u'\n', u'        ', slot(u'heading'), u'\n', u'\n', u'        ', Tag(u'span', attributes={u'id': u'partOf'}, children=[u'\n', u'          ', slot(u'part'), u'\n', u'          ', Tag(u'a', children=[u'View Source']), u'\n', u'          ', Tag(u'a', children=[u'(View In Hierarchy)']), u'\n', u'        ']), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'class': u'extrasDocstring'}, children=[u'\n', u'        ', slot(u'extras'), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'class': u'moduleDocstring'}, children=[u'\n', u'        ', slot(u'docstring'), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'id': u'splitTables'}, children=[u'\n', u'        ', slot(u'mainTable'), u'\n', u' 
        ', Tag('', children=[u'\n', u'          ', Tag(u'p', attributes={u'class': u'inheritedFrom'}, children=[u'\n', u'            Inherited from ', slot(u'baseName'), u':', u'\n', u'          ']), u'\n', u'          ', slot(u'baseTable'), u'\n', u'          ']), u'\n', u'\n', u'          ', slot(u'packageInitTable'), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'id': u'childList'}, children=[u'\n', u'\n', u'        ', slot(u'childlist'), u'\n', u'\n', u'      ']), u'\n', u'      ', Tag(u'address', children=[u'\n', u'        ', Tag(u'a', attributes={u'href': u'index.html'}, children=[u'API Documentation']), u' for ', slot(u'project'), u', generated by ', Tag(u'a', attributes={u'href': u'https://github.com/twisted/pydoctor/'}, children=[u'pydoctor']), u' at ', slot(u'buildtime'), u'.', u'\n', u'      ']), u'\n', u'\n', u'    ']), u'\n', u'  ']), u'\n']
error   17-Oct-2015 10:18:18      Tag <body>
error   17-Oct-2015 10:18:18      [u'\n', u'\n', u'    ', Tag(u'nav', attributes={u'class': u'navbar navbar-default'}, children=[u'\n', u'      ', Tag(u'div', attributes={u'class': u'container'}, children=[u'\n', u'        ', Tag(u'div', attributes={u'class': u'navbar-header'}, children=[u'\n', u'          ', Tag(u'a', attributes={u'class': u'navbar-brand', u'href': u'index.html'}, children=[u'\n', u'            ', slot(u'project'), u' API Documentation', u'\n', u'          ']), u'\n', u'        ']), u'\n', u'      ']), u'\n', u'    ']), u'\n', u'\n', u'    ', Tag(u'div', attributes={u'class': u'container'}, children=[u'\n', u'\n', u'      ', Tag(u'div', attributes={u'class': u'page-header'}, children=[u'\n', u'        ', slot(u'heading'), u'\n', u'\n', u'        ', Tag(u'span', attributes={u'id': u'partOf'}, children=[u'\n', u'          ', slot(u'part'), u'\n', u'          ', Tag(u'a', children=[u'View Source']), u'\n', u'          ', Tag(u'a', children=[u'(View In Hierarchy)']), u'
 \n', u'        ']), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'class': u'extrasDocstring'}, children=[u'\n', u'        ', slot(u'extras'), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'class': u'moduleDocstring'}, children=[u'\n', u'        ', slot(u'docstring'), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'id': u'splitTables'}, children=[u'\n', u'        ', slot(u'mainTable'), u'\n', u'        ', Tag('', children=[u'\n', u'          ', Tag(u'p', attributes={u'class': u'inheritedFrom'}, children=[u'\n', u'            Inherited from ', slot(u'baseName'), u':', u'\n', u'          ']), u'\n', u'          ', slot(u'baseTable'), u'\n', u'          ']), u'\n', u'\n', u'          ', slot(u'packageInitTable'), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'id': u'childList'}, children=[u'\n', u'\n', u'        ', slot(u'childlist'), u'\n', u'\n', u'      ']), u'\n', u'      ', Tag(u'address
 ', children=[u'\n', u'        ', Tag(u'a', attributes={u'href': u'index.html'}, children=[u'API Documentation']), u' for ', slot(u'project'), u', generated by ', Tag(u'a', attributes={u'href': u'https://github.com/twisted/pydoctor/'}, children=[u'pydoctor']), u' at ', slot(u'buildtime'), u'.', u'\n', u'      ']), u'\n', u'\n', u'    ']), u'\n', u'  ']
error   17-Oct-2015 10:18:18      Tag <div>
error   17-Oct-2015 10:18:18      [u'\n', u'\n', u'      ', Tag(u'div', attributes={u'class': u'page-header'}, children=[u'\n', u'        ', slot(u'heading'), u'\n', u'\n', u'        ', Tag(u'span', attributes={u'id': u'partOf'}, children=[u'\n', u'          ', slot(u'part'), u'\n', u'          ', Tag(u'a', children=[u'View Source']), u'\n', u'          ', Tag(u'a', children=[u'(View In Hierarchy)']), u'\n', u'        ']), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'class': u'extrasDocstring'}, children=[u'\n', u'        ', slot(u'extras'), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'class': u'moduleDocstring'}, children=[u'\n', u'        ', slot(u'docstring'), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'id': u'splitTables'}, children=[u'\n', u'        ', slot(u'mainTable'), u'\n', u'        ', Tag('', children=[u'\n', u'          ', Tag(u'p', attributes={u'class': u'inheritedFrom'}, children=[u'\n', u' 
            Inherited from ', slot(u'baseName'), u':', u'\n', u'          ']), u'\n', u'          ', slot(u'baseTable'), u'\n', u'          ']), u'\n', u'\n', u'          ', slot(u'packageInitTable'), u'\n', u'      ']), u'\n', u'\n', u'      ', Tag(u'div', attributes={u'id': u'childList'}, children=[u'\n', u'\n', u'        ', slot(u'childlist'), u'\n', u'\n', u'      ']), u'\n', u'      ', Tag(u'address', children=[u'\n', u'        ', Tag(u'a', attributes={u'href': u'index.html'}, children=[u'API Documentation']), u' for ', slot(u'project'), u', generated by ', Tag(u'a', attributes={u'href': u'https://github.com/twisted/pydoctor/'}, children=[u'pydoctor']), u' at ', slot(u'buildtime'), u'.', u'\n', u'      ']), u'\n', u'\n', u'    ']
error   17-Oct-2015 10:18:18      Tag <div>
error   17-Oct-2015 10:18:18      [u'\n', u'\n', u'        ', slot(u'childlist'), u'\n', u'\n', u'      ']
error   17-Oct-2015 10:18:18      slot(u'childlist')
error   17-Oct-2015 10:18:18      [<pydoctor.templatewriter.pages.functionchild.FunctionChild object at 0x7f960edb7650>, <pydoctor.templatewriter.pages.functionchild.FunctionChild object at 0x7f960edb7bd0>]
error   17-Oct-2015 10:18:18      <pydoctor.templatewriter.pages.functionchild.FunctionChild object at 0x7f960edb7650>
error   17-Oct-2015 10:18:18      [Tag(u'div', attributes={u'class': u'function'}, children=[u'\n', u'  ', Tag(u'a', attributes={u'name': Tag('')}, children=[u'\n', u'    ', u'\n', u'  ']), u'\n', u'  ', Tag(u'a', attributes={u'name': Tag('')}, children=[u'\n', u'    ', u'\n', u'  ']), u'\n', u'  ', Tag(u'div', attributes={u'class': u'functionHeader'}, children=[u'\n', u'    ', Tag(''), u'\n', u'    def', u'\n', u'    ', Tag('', children=[u'\n', u'      functionName():', u'\n', u'    ']), u'\n', u'    ', Tag(u'a', attributes={u'class': u'functionSourceLink', u'href': Tag('', children=[slot(u'sourceHref')])}, children=[u'\n', u'      ', u'\n', u'      (source)', u'\n', u'    ']), u'\n', u'  ']), u'\n', u'  ', Tag(u'div', attributes={u'class': u'docstring functionBody'}, children=[u'\n', u'    ', Tag(''), u'\n', u'    ', Tag('', children=[u'\n', u'      Docstring.', u'\n', u'    ']), u'\n', u'  ']), u'\n'])]
error   17-Oct-2015 10:18:18      Tag <div>
error   17-Oct-2015 10:18:18      [u'\n', u'  ', Tag(u'a', attributes={u'name': Tag('')}, children=[u'\n', u'    ', u'\n', u'  ']), u'\n', u'  ', Tag(u'a', attributes={u'name': Tag('')}, children=[u'\n', u'    ', u'\n', u'  ']), u'\n', u'  ', Tag(u'div', attributes={u'class': u'functionHeader'}, children=[u'\n', u'    ', Tag(''), u'\n', u'    def', u'\n', u'    ', Tag('', children=[u'\n', u'      functionName():', u'\n', u'    ']), u'\n', u'    ', Tag(u'a', attributes={u'class': u'functionSourceLink', u'href': Tag('', children=[slot(u'sourceHref')])}, children=[u'\n', u'      ', u'\n', u'      (source)', u'\n', u'    ']), u'\n', u'  ']), u'\n', u'  ', Tag(u'div', attributes={u'class': u'docstring functionBody'}, children=[u'\n', u'    ', Tag(''), u'\n', u'    ', Tag('', children=[u'\n', u'      Docstring.', u'\n', u'    ']), u'\n', u'  ']), u'\n']
error   17-Oct-2015 10:18:18      Tag <div>
error   17-Oct-2015 10:18:18      [u'\n', u'    ', Tag(''), u'\n', u'    ', Tag('', children=[u'\n', u'      Docstring.', u'\n', u'    ']), u'\n', u'  ']
error   17-Oct-2015 10:18:18      Tag <>
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/twisted/web/_flatten.py", line 319, in _flattenTree
error   17-Oct-2015 10:18:18        element = next(stack[-1])
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/twisted/web/_flatten.py", line 243, in _flattenElement
error   17-Oct-2015 10:18:18        result = renderMethod(request, rootClone)
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/pydoctor/templatewriter/pages/functionchild.py", line 63, in functionBody
error   17-Oct-2015 10:18:18        return self.docgetter.get(self.ob)
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/pydoctor/templatewriter/pages/__init__.py", line 52, in get
error   17-Oct-2015 10:18:18        return epydoc2stan.doc2stan(ob, summary=summary)[0]
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/pydoctor/epydoc2stan.py", line 551, in doc2stan
error   17-Oct-2015 10:18:18        fh.handle(Field(field, obj))
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/pydoctor/epydoc2stan.py", line 279, in __init__
error   17-Oct-2015 10:18:18        self.body = html2stan(field.body().to_html(_EpydocLinker(obj)))
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/pydoctor/epydoc2stan.py", line 268, in html2stan
error   17-Oct-2015 10:18:18        crap = XMLString(crap).load()[0].children
error   17-Oct-2015 10:18:18      File "/usr/local/lib/python2.7/dist-packages/twisted/web/template.py", line 399, in __init__
error   17-Oct-2015 10:18:18        self._loadedTemplate = _flatsaxParse(NativeStringIO(s))
error   17-Oct-2015 10:18:18    TypeError: 'unicode' does not have the buffer interface


-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 4.2.0-1-amd64 (SMP w/1 CPU core)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)



More information about the Calendarserver-maintainers mailing list