Skip to content

Commit

Permalink
Merge pull request #10297 from tk0miya/10288_refactor_docs
Browse files Browse the repository at this point in the history
doc: Use :pep: role to refer PEP documents
  • Loading branch information
tk0miya committed Mar 27, 2022
2 parents 4f741cc + fbdfade commit a067946
Show file tree
Hide file tree
Showing 6 changed files with 15 additions and 28 deletions.
7 changes: 3 additions & 4 deletions doc/tutorial/automatic-doc-generation.rst
Expand Up @@ -4,10 +4,9 @@ Automatic documentation generation from code
In the :ref:`previous section <tutorial-describing-objects>` of the tutorial
you manually documented a Python function in Sphinx. However, the description
was out of sync with the code itself, since the function signature was not
the same. Besides, it would be nice to reuse `Python
docstrings <https://peps.python.org/pep-0257/#what-is-a-docstring>`_
in the documentation, rather than having to write the information in two
places.
the same. Besides, it would be nice to reuse :pep:`Python docstrings
<257#what-is-a-docstring>` in the documentation, rather than having to write
the information in two places.

Fortunately, :doc:`the autodoc extension </usage/extensions/autodoc>` provides this
functionality.
Expand Down
5 changes: 2 additions & 3 deletions doc/usage/extensions/autodoc.rst
Expand Up @@ -634,8 +634,8 @@ There are also config values that you can set:
full-qualified object name. It is used to keep type aliases not evaluated in
the document. Defaults to empty (``{}``).

The type aliases are only available if your program enables `Postponed
Evaluation of Annotations (PEP 563)`__ feature via ``from __future__ import
The type aliases are only available if your program enables :pep:`Postponed
Evaluation of Annotations (PEP 563) <563>` feature via ``from __future__ import
annotations``.

For example, there is code using a type alias::
Expand All @@ -662,7 +662,6 @@ There are also config values that you can set:

...

.. __: https://peps.python.org/pep-0563/
.. __: https://mypy.readthedocs.io/en/latest/kinds_of_types.html#type-aliases
.. versionadded:: 3.3

Expand Down
4 changes: 2 additions & 2 deletions doc/usage/extensions/doctest.rst
Expand Up @@ -93,8 +93,8 @@ a comma-separated list of group names.
* ``<``, ``>``: Exclusive ordered comparison clause
* ``===``: Arbitrary equality clause.

``pyversion`` option is followed `PEP-440: Version Specifiers
<https://peps.python.org/pep-0440/#version-specifiers>`__.
``pyversion`` option is followed :pep:`PEP-440: Version Specifiers
<440#version-specifiers>`.

.. versionadded:: 1.6

Expand Down
8 changes: 2 additions & 6 deletions doc/usage/extensions/example_google.py
Expand Up @@ -45,7 +45,7 @@
def function_with_types_in_docstring(param1, param2):
"""Example function with types documented in the docstring.
`PEP 484`_ type annotations are supported. If attribute, parameter, and
:pep:`484` type annotations are supported. If attribute, parameter, and
return types are annotated according to `PEP 484`_, they do not need to be
included in the docstring:
Expand All @@ -55,10 +55,6 @@ def function_with_types_in_docstring(param1, param2):
Returns:
bool: The return value. True for success, False otherwise.
.. _PEP 484:
https://peps.python.org/pep-0484/
"""


Expand Down Expand Up @@ -311,4 +307,4 @@ class ExamplePEP526Class:
"""

attr1: str
attr2: int
attr2: int
6 changes: 1 addition & 5 deletions doc/usage/extensions/example_numpy.py
Expand Up @@ -55,7 +55,7 @@
def function_with_types_in_docstring(param1, param2):
"""Example function with types documented in the docstring.
`PEP 484`_ type annotations are supported. If attribute, parameter, and
:pep:`484` type annotations are supported. If attribute, parameter, and
return types are annotated according to `PEP 484`_, they do not need to be
included in the docstring:
Expand All @@ -70,10 +70,6 @@ def function_with_types_in_docstring(param1, param2):
-------
bool
True if successful, False otherwise.
.. _PEP 484:
https://peps.python.org/pep-0484/
"""


Expand Down
13 changes: 5 additions & 8 deletions doc/usage/extensions/napoleon.rst
Expand Up @@ -26,7 +26,7 @@ Are you tired of writing docstrings that look like this::
:rtype: BufferedFileStorage

`reStructuredText`_ is great, but it creates visually dense, hard to read
`docstrings`_. Compare the jumble above to the same thing rewritten
:pep:`docstrings <287>`. Compare the jumble above to the same thing rewritten
according to the `Google Python Style Guide`_::

Args:
Expand All @@ -50,7 +50,6 @@ the documentation, so it doesn't modify any of the docstrings in your actual
source code files.

.. _ReStructuredText: https://docutils.sourceforge.io/rst.html
.. _docstrings: https://peps.python.org/pep-0287/
.. _Google Python Style Guide:
https://google.github.io/styleguide/pyguide.html
.. _Google:
Expand Down Expand Up @@ -199,11 +198,11 @@ not be mixed. Choose one style for your project and be consistent with it.
Type Annotations
~~~~~~~~~~~~~~~~

`PEP 484`_ introduced a standard way to express types in Python code.
:pep:`484` introduced a standard way to express types in Python code.
This is an alternative to expressing types directly in docstrings.
One benefit of expressing types according to `PEP 484`_ is that
One benefit of expressing types according to :pep:`484` is that
type checkers and IDEs can take advantage of them for static code
analysis. `PEP 484`_ was then extended by `PEP 526`_ which introduced
analysis. :pep:`484` was then extended by :pep:`526` which introduced
a similar way to annotate variables (and attributes).

Google style with Python 3 type annotations::
Expand Down Expand Up @@ -267,8 +266,6 @@ Google style with types in docstrings::
`Python 2/3 compatible annotations`_ aren't currently
supported by Sphinx and won't show up in the docs.

.. _PEP 484: https://peps.python.org/pep-0484/
.. _PEP 526: https://peps.python.org/pep-0526/
.. _Python 2/3 compatible annotations: https://peps.python.org/pep-0484/#suggested-syntax-for-python-2-7-and-straddling-code


Expand Down Expand Up @@ -548,7 +545,7 @@ sure that "sphinx.ext.napoleon" is enabled in `conf.py`::

.. confval:: napoleon_attr_annotations

True to allow using `PEP 526`_ attributes annotations in classes.
True to allow using :pep:`526` attributes annotations in classes.
If an attribute is documented in the docstring without a type and
has an annotation in the class body, that type is used.

Expand Down

0 comments on commit a067946

Please sign in to comment.