Skip to content

Commit

Permalink
Fix regression in autodoc.Documenter.parse_name (#11613)
Browse files Browse the repository at this point in the history
If the assert statement added in GH-11523 fails,
the build fails and the user only sees
``assert matched is not None``.
With this change, the user gets a proper warning message
containing the name of the offending module,
and the build will succeed.

Signed-off-by: Zack Cerza <zack@redhat.com>
Co-authored-by: Zack Cerza <zack@redhat.com>
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
  • Loading branch information
3 people committed Aug 20, 2023
1 parent 5d929d9 commit 1e16f21
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 5 deletions.
1 change: 1 addition & 0 deletions CHANGES
Expand Up @@ -4,6 +4,7 @@ Release 7.2.3 (in development)
Bugs fixed
----------

* Fix regression in ``autodoc.Documenter.parse_name()``.

Release 7.2.2 (released Aug 17, 2023)
=====================================
Expand Down
8 changes: 3 additions & 5 deletions sphinx/ext/autodoc/__init__.py
Expand Up @@ -383,14 +383,12 @@ def parse_name(self) -> bool:
# first, parse the definition -- auto directives for classes and
# functions can contain a signature which is then used instead of
# an autogenerated one
try:
matched = py_ext_sig_re.match(self.name)
assert matched is not None
explicit_modname, path, base, tp_list, args, retann = matched.groups()
except AttributeError:
matched = py_ext_sig_re.match(self.name)
if matched is None:
logger.warning(__('invalid signature for auto%s (%r)') % (self.objtype, self.name),
type='autodoc')
return False
explicit_modname, path, base, tp_list, args, retann = matched.groups()

# support explicit module and class name separation via ::
if explicit_modname is not None:
Expand Down

0 comments on commit 1e16f21

Please sign in to comment.