Menu

#359 AttributeError: 'Text' object has no attribute 'data'

v3.0
open
nobody
None
5
2019-07-30
2013-05-12
Aviral Goel
No

I downloaded the file -> http://docutils.sourceforge.net/docutils/statemachine.py
and renamed it Test.py. I get the following error on running epydoc(3.0.1) against it-

sudo epydoc --debug ./Test.py
Traceback (most recent call last): Progress: 00:00
File "/usr/local/bin/epydoc", line 5, in <module>------------------------------------------------------------------------------------------------]
pkg_resources.run_script('epydoc==3.0.1', 'epydoc') Parsing docstrings: Test
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 505, in run_script
self.require(requires)[0].run_script(script_name, ns)
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1245, in run_script
execfile(script_filename, namespace, namespace)
File "/usr/local/lib/python2.7/dist-packages/epydoc-3.0.1-py2.7.egg/EGG-INFO/scripts/epydoc", line 13, in <module>
cli()
File "/usr/local/lib/python2.7/dist-packages/epydoc-3.0.1-py2.7.egg/epydoc/cli.py", line 965, in cli
main(options, names)
File "/usr/local/lib/python2.7/dist-packages/epydoc-3.0.1-py2.7.egg/epydoc/cli.py", line 757, in main
exclude_parse=exclude_parse)
File "/usr/local/lib/python2.7/dist-packages/epydoc-3.0.1-py2.7.egg/epydoc/docbuilder.py", line 275, in build_doc_index
parse_docstring(val_doc, docindex, suppress_warnings)
File "/usr/local/lib/python2.7/dist-packages/epydoc-3.0.1-py2.7.egg/epydoc/docstringparser.py", line 265, in parse_docstring
api_doc.summary, api_doc.other_docs = api_doc.descr.summary()
File "/usr/local/lib/python2.7/dist-packages/epydoc-3.0.1-py2.7.egg/epydoc/markup/restructuredtext.py", line 179, in summary
try: self._document.walk(visitor)
File "/usr/local/lib/python2.7/dist-packages/docutils-0.10-py2.7.egg/docutils/nodes.py", line 138, in walk
if child.walk(visitor):
File "/usr/local/lib/python2.7/dist-packages/docutils-0.10-py2.7.egg/docutils/nodes.py", line 130, in walk
visitor.dispatch_visit(self)
File "/usr/local/lib/python2.7/dist-packages/docutils-0.10-py2.7.egg/docutils/nodes.py", line 1627, in dispatch_visit
return method(node)
File "/usr/local/lib/python2.7/dist-packages/epydoc-3.0.1-py2.7.egg/epydoc/markup/restructuredtext.py", line 307, in visit_paragraph
m = self._SUMMARY_RE.match(child.data)
AttributeError: 'Text' object has no attribute 'data'

Discussion

  • Nathan Przybyszewski

    I also had this issue when I installed epydoc 3.0.1 via pip, but the issue went away when I installed it via yum or apt-get. If you prefer, you can also manually patch your pip version using the attached patch.

     
  • Maarten ter Huurne

    It might be safer to replace child.data with child.astext(): back when the data attribute existed, astext() returned data.

     

Log in to post a comment.