epydoc AttributeError: у объекта «Текст» нет атрибута «данные» - PullRequest
7 голосов
/ 15 июля 2011

Я не использовал epydoc в последние 2 года, но мне было очень удобно отслеживать свои занятия и методы с очень небольшими усилиями.

Сегодня я установил последнюю версию 3.0.1, но я получаю эту ошибку, и поиск вокруг, кажется, не предлагает никаких решений.

Traceback (most recent call last):-] Parsing docstrings: pyramid.reques... 
  File "/home/neurino/apps/env/bin/epydoc", line 13, in <module>
    cli()
  File "/home/neurino/apps/env/lib/python2.7/site-packages/epydoc/cli.py", line 965, in cli
    main(options, names)
  File "/home/neurino/apps/env/lib/python2.7/site-packages/epydoc/cli.py", line 757, in main
    exclude_parse=exclude_parse)
  File "/home/neurino/apps/env/lib/python2.7/site-packages/epydoc/docbuilder.py", line 275, in build_doc_index
    parse_docstring(val_doc, docindex, suppress_warnings)
  File "/home/neurino/apps/env/lib/python2.7/site-packages/epydoc/docstringparser.py", line 265, in parse_docstring
    api_doc.summary, api_doc.other_docs = api_doc.descr.summary()
  File "/home/neurino/apps/env/lib/python2.7/site-packages/epydoc/markup/restructuredtext.py", line 179, in summary
    try: self._document.walk(visitor)
  File "/home/neurino/apps/env/lib/python2.7/site-packages/docutils/nodes.py", line 137, in walk
    if child.walk(visitor):
  File "/home/neurino/apps/env/lib/python2.7/site-packages/docutils/nodes.py", line 129, in walk
    visitor.dispatch_visit(self)
  File "/home/neurino/apps/env/lib/python2.7/site-packages/docutils/nodes.py", line 1604, in dispatch_visit
    return method(node)
  File "/home/neurino/apps/env/lib/python2.7/site-packages/epydoc/markup/restructuredtext.py", line 307, in visit_paragraph
    m = self._SUMMARY_RE.match(child.data)
AttributeError: 'Text' object has no attribute 'data'

Проект epydoc мертв?

Ответы [ 3 ]

8 голосов
/ 15 июля 2011

Я нашел патч на epydoc tracker, он все равно устарел, эта часть решает проблему:

markup/restructuredtext.py
307c307,310
<                 m = self._SUMMARY_RE.match(child.data)
---
>                 try:
>                     m = self._SUMMARY_RE.match(child.data)
>                 except AttributeError:
>                     m = None
6 голосов
/ 15 июля 2011

Epydoc не поддерживается в течение длительного времени, и последний выпуск не совсем совместим с текущим Pyton и документами.Это все еще полезный инструмент, но он требует некоторых исправлений.

Вот некоторые исправления, которые я использовал с Epydoc для создания документации для моего кода Python 2.7: http://cvs.pld -linux.org / cgi-bin / cvsweb.cgi / packages / epydoc / (они являются частью пакета PLD-Linux Epydoc).

Я бы хотел, чтобы кто-то взял код на себя и продолжил разработку…

0 голосов
/ 02 января 2016

Объекты могут быть проверены на нулевое значение (т. Е. None), чтобы исключение не могло возникнуть.

if object is None:
...