Skip to content

Commit

Permalink
Merge pull request #8622 from tk0miya/8616_AttributeError_for_non_class
Browse files Browse the repository at this point in the history
Fix #8616: autodoc: AttributeError when non-class is passed to autoclass
  • Loading branch information
tk0miya committed Dec 31, 2020
2 parents 1dd0cc8 + 1353a7b commit 5383846
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 1 deletion.
2 changes: 2 additions & 0 deletions CHANGES
Expand Up @@ -19,6 +19,8 @@ Bugs fixed
* #8164: autodoc: Classes that inherit mocked class are not documented
* #8602: autodoc: The ``autodoc-process-docstring`` event is emitted to the
non-datadescriptors unexpectedly
* #8616: autodoc: AttributeError is raised on non-class object is passed to
autoclass directive

Testing
--------
Expand Down
6 changes: 5 additions & 1 deletion sphinx/ext/autodoc/__init__.py
Expand Up @@ -1662,7 +1662,11 @@ def get_doc(self, encoding: str = None, ignore: int = None) -> List[List[str]]:
def add_content(self, more_content: Optional[StringList], no_docstring: bool = False
) -> None:
if self.doc_as_attr:
more_content = StringList([_('alias of %s') % restify(self.object)], source='')
try:
more_content = StringList([_('alias of %s') % restify(self.object)], source='')
except AttributeError:
pass # Invalid class object is passed.

super().add_content(more_content, no_docstring=True)
else:
super().add_content(more_content)
Expand Down

0 comments on commit 5383846

Please sign in to comment.