Return type annotation is collapsed when no name is given
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 355
- Forks
- 181
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 3
Description
When parsing documentation docstrings, not specifying the returned variable name with multiple return types (ie. float or None or float | None), induces that the rendered documentation is removing all spaces between annotations.
See the example below taken from pyvista where we use the numpydoc sphinx extension https://docs.pyvista.org/api/utilities/_autosummary/pyvista.get_array.html#pyvista.get_array
This led us to add return parameter name all over the place as a workaround in https://github.com/pyvista/pyvista/pull/8081, thereby excluding RT02 rule.
Is there another workaround ? Is this a parsing bug ?
Thanks in advance.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the pyvista example through the numpydoc Sphinx extension, focusing on the RT02 return-annotation path when no variable name is provided. Trace how annotations such as float or None or float | None are parsed and rendered; done means their spaces are preserved and the behavior has regression coverage.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- documentation
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 38/100