gh-107298: Fix Sphinx warnings in the C API doc (#107302)

* Update Doc/tools/.nitignore
* Fix BufferedIOBase.write() link in buffer.rst
This commit is contained in:
Victor Stinner 2023-07-27 01:41:15 +02:00 committed by GitHub
parent 507d8bc39a
commit 391e03fa05
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 26 additions and 33 deletions

View File

@ -60,7 +60,7 @@ See :ref:`stable` for a discussion of API and ABI stability across versions.
Use this for numeric comparisons, e.g. ``#if PY_VERSION_HEX >= ...``. Use this for numeric comparisons, e.g. ``#if PY_VERSION_HEX >= ...``.
This version is also available via the symbol :data:`Py_Version`. This version is also available via the symbol :c:var:`Py_Version`.
.. c:var:: const unsigned long Py_Version .. c:var:: const unsigned long Py_Version

View File

@ -44,7 +44,7 @@ the elements exposed by an :class:`array.array` can be multi-byte values.
An example consumer of the buffer interface is the :meth:`~io.BufferedIOBase.write` An example consumer of the buffer interface is the :meth:`~io.BufferedIOBase.write`
method of file objects: any object that can export a series of bytes through method of file objects: any object that can export a series of bytes through
the buffer interface can be written to a file. While :meth:`write` only the buffer interface can be written to a file. While :meth:`!write` only
needs read-only access to the internal contents of the object passed to it, needs read-only access to the internal contents of the object passed to it,
other methods such as :meth:`~io.BufferedIOBase.readinto` need write access other methods such as :meth:`~io.BufferedIOBase.readinto` need write access
to the contents of their argument. The buffer interface allows objects to to the contents of their argument. The buffer interface allows objects to

View File

@ -64,39 +64,39 @@ called with a non-bytes parameter.
+-------------------+---------------+--------------------------------+ +-------------------+---------------+--------------------------------+
| Format Characters | Type | Comment | | Format Characters | Type | Comment |
+===================+===============+================================+ +===================+===============+================================+
| :attr:`%%` | *n/a* | The literal % character. | | ``%%`` | *n/a* | The literal % character. |
+-------------------+---------------+--------------------------------+ +-------------------+---------------+--------------------------------+
| :attr:`%c` | int | A single byte, | | ``%c`` | int | A single byte, |
| | | represented as a C int. | | | | represented as a C int. |
+-------------------+---------------+--------------------------------+ +-------------------+---------------+--------------------------------+
| :attr:`%d` | int | Equivalent to | | ``%d`` | int | Equivalent to |
| | | ``printf("%d")``. [1]_ | | | | ``printf("%d")``. [1]_ |
+-------------------+---------------+--------------------------------+ +-------------------+---------------+--------------------------------+
| :attr:`%u` | unsigned int | Equivalent to | | ``%u`` | unsigned int | Equivalent to |
| | | ``printf("%u")``. [1]_ | | | | ``printf("%u")``. [1]_ |
+-------------------+---------------+--------------------------------+ +-------------------+---------------+--------------------------------+
| :attr:`%ld` | long | Equivalent to | | ``%ld`` | long | Equivalent to |
| | | ``printf("%ld")``. [1]_ | | | | ``printf("%ld")``. [1]_ |
+-------------------+---------------+--------------------------------+ +-------------------+---------------+--------------------------------+
| :attr:`%lu` | unsigned long | Equivalent to | | ``%lu`` | unsigned long | Equivalent to |
| | | ``printf("%lu")``. [1]_ | | | | ``printf("%lu")``. [1]_ |
+-------------------+---------------+--------------------------------+ +-------------------+---------------+--------------------------------+
| :attr:`%zd` | :c:type:`\ | Equivalent to | | ``%zd`` | :c:type:`\ | Equivalent to |
| | Py_ssize_t` | ``printf("%zd")``. [1]_ | | | Py_ssize_t` | ``printf("%zd")``. [1]_ |
+-------------------+---------------+--------------------------------+ +-------------------+---------------+--------------------------------+
| :attr:`%zu` | size_t | Equivalent to | | ``%zu`` | size_t | Equivalent to |
| | | ``printf("%zu")``. [1]_ | | | | ``printf("%zu")``. [1]_ |
+-------------------+---------------+--------------------------------+ +-------------------+---------------+--------------------------------+
| :attr:`%i` | int | Equivalent to | | ``%i`` | int | Equivalent to |
| | | ``printf("%i")``. [1]_ | | | | ``printf("%i")``. [1]_ |
+-------------------+---------------+--------------------------------+ +-------------------+---------------+--------------------------------+
| :attr:`%x` | int | Equivalent to | | ``%x`` | int | Equivalent to |
| | | ``printf("%x")``. [1]_ | | | | ``printf("%x")``. [1]_ |
+-------------------+---------------+--------------------------------+ +-------------------+---------------+--------------------------------+
| :attr:`%s` | const char\* | A null-terminated C character | | ``%s`` | const char\* | A null-terminated C character |
| | | array. | | | | array. |
+-------------------+---------------+--------------------------------+ +-------------------+---------------+--------------------------------+
| :attr:`%p` | const void\* | The hex representation of a C | | ``%p`` | const void\* | The hex representation of a C |
| | | pointer. Mostly equivalent to | | | | pointer. Mostly equivalent to |
| | | ``printf("%p")`` except that | | | | ``printf("%p")`` except that |
| | | it is guaranteed to start with | | | | it is guaranteed to start with |

View File

@ -25,7 +25,7 @@ Cell objects are not likely to be useful elsewhere.
The type object corresponding to cell objects. The type object corresponding to cell objects.
.. c:function:: int PyCell_Check(ob) .. c:function:: int PyCell_Check(PyObject *ob)
Return true if *ob* is a cell object; *ob* must not be ``NULL``. This Return true if *ob* is a cell object; *ob* must not be ``NULL``. This
function always succeeds. function always succeeds.

View File

@ -39,7 +39,7 @@ bound into a function.
use :c:func:`PyCode_NewEmpty` instead. use :c:func:`PyCode_NewEmpty` instead.
Since the definition of the bytecode changes often, calling Since the definition of the bytecode changes often, calling
:c:func:`PyCode_New` directly can bind you to a precise Python version. :c:func:`PyUnstable_Code_New` directly can bind you to a precise Python version.
The many arguments of this function are inter-dependent in complex The many arguments of this function are inter-dependent in complex
ways, meaning that subtle changes to values are likely to result in incorrect ways, meaning that subtle changes to values are likely to result in incorrect
@ -58,8 +58,8 @@ bound into a function.
.. c:function:: PyCodeObject* PyUnstable_Code_NewWithPosOnlyArgs(int argcount, int posonlyargcount, int kwonlyargcount, int nlocals, int stacksize, int flags, PyObject *code, PyObject *consts, PyObject *names, PyObject *varnames, PyObject *freevars, PyObject *cellvars, PyObject *filename, PyObject *name, int firstlineno, PyObject *linetable, PyObject *exceptiontable) .. c:function:: PyCodeObject* PyUnstable_Code_NewWithPosOnlyArgs(int argcount, int posonlyargcount, int kwonlyargcount, int nlocals, int stacksize, int flags, PyObject *code, PyObject *consts, PyObject *names, PyObject *varnames, PyObject *freevars, PyObject *cellvars, PyObject *filename, PyObject *name, int firstlineno, PyObject *linetable, PyObject *exceptiontable)
Similar to :c:func:`PyCode_New`, but with an extra "posonlyargcount" for positional-only arguments. Similar to :c:func:`PyUnstable_Code_New`, but with an extra "posonlyargcount" for positional-only arguments.
The same caveats that apply to ``PyCode_New`` also apply to this function. The same caveats that apply to ``PyUnstable_Code_New`` also apply to this function.
.. index:: single: PyCode_NewWithPosOnlyArgs .. index:: single: PyCode_NewWithPosOnlyArgs

View File

@ -143,7 +143,7 @@ rules:
.. versionchanged:: 3.8 .. versionchanged:: 3.8
The :c:func:`_PyObject_GC_TRACK` and :c:func:`_PyObject_GC_UNTRACK` macros The :c:func:`!_PyObject_GC_TRACK` and :c:func:`!_PyObject_GC_UNTRACK` macros
have been removed from the public C API. have been removed from the public C API.
The :c:member:`~PyTypeObject.tp_traverse` handler accepts a function parameter of this type: The :c:member:`~PyTypeObject.tp_traverse` handler accepts a function parameter of this type:

View File

@ -19,7 +19,7 @@ sentinel value is returned.
types. types.
.. c:function:: int PySeqIter_Check(op) .. c:function:: int PySeqIter_Check(PyObject *op)
Return true if the type of *op* is :c:data:`PySeqIter_Type`. This function Return true if the type of *op* is :c:data:`PySeqIter_Type`. This function
always succeeds. always succeeds.
@ -38,7 +38,7 @@ sentinel value is returned.
two-argument form of the :func:`iter` built-in function. two-argument form of the :func:`iter` built-in function.
.. c:function:: int PyCallIter_Check(op) .. c:function:: int PyCallIter_Check(PyObject *op)
Return true if the type of *op* is :c:data:`PyCallIter_Type`. This Return true if the type of *op* is :c:data:`PyCallIter_Type`. This
function always succeeds. function always succeeds.

View File

@ -480,7 +480,7 @@ The following functions and structs are used to create
Setting :c:data:`Py_tp_bases` or :c:data:`Py_tp_base` may be Setting :c:data:`Py_tp_bases` or :c:data:`Py_tp_base` may be
problematic on some platforms. problematic on some platforms.
To avoid issues, use the *bases* argument of To avoid issues, use the *bases* argument of
:py:func:`PyType_FromSpecWithBases` instead. :c:func:`PyType_FromSpecWithBases` instead.
.. versionchanged:: 3.9 .. versionchanged:: 3.9

View File

@ -35,7 +35,7 @@ two types exist -- :ref:`GenericAlias <types-genericalias>` and
... ...
} }
.. seealso:: The data model method :meth:`__class_getitem__`. .. seealso:: The data model method :meth:`~object.__class_getitem__`.
.. versionadded:: 3.9 .. versionadded:: 3.9

View File

@ -1207,7 +1207,7 @@ This codec is special in that it can be used to implement many different codecs
(and this is in fact what was done to obtain most of the standard codecs (and this is in fact what was done to obtain most of the standard codecs
included in the :mod:`!encodings` package). The codec uses mappings to encode and included in the :mod:`!encodings` package). The codec uses mappings to encode and
decode characters. The mapping objects provided must support the decode characters. The mapping objects provided must support the
:meth:`__getitem__` mapping interface; dictionaries and sequences work well. :meth:`~object.__getitem__` mapping interface; dictionaries and sequences work well.
These are the mapping codec APIs: These are the mapping codec APIs:
@ -1250,7 +1250,7 @@ The following codec API is special in that maps Unicode to Unicode.
The mapping table must map Unicode ordinal integers to Unicode ordinal integers The mapping table must map Unicode ordinal integers to Unicode ordinal integers
or ``None`` (causing deletion of the character). or ``None`` (causing deletion of the character).
Mapping tables need only provide the :meth:`__getitem__` interface; dictionaries Mapping tables need only provide the :meth:`~object.__getitem__` interface; dictionaries
and sequences work well. Unmapped character ordinals (ones which cause a and sequences work well. Unmapped character ordinals (ones which cause a
:exc:`LookupError`) are left untouched and are copied as-is. :exc:`LookupError`) are left untouched and are copied as-is.

View File

@ -353,7 +353,7 @@ the same library that the Python runtime is using.
executed, it is passed as ``PyCompilerFlags *flags``. In this case, ``from executed, it is passed as ``PyCompilerFlags *flags``. In this case, ``from
__future__ import`` can modify *flags*. __future__ import`` can modify *flags*.
Whenever ``PyCompilerFlags *flags`` is ``NULL``, :attr:`cf_flags` is treated as Whenever ``PyCompilerFlags *flags`` is ``NULL``, :c:member:`cf_flags` is treated as
equal to ``0``, and any modification due to ``from __future__ import`` is equal to ``0``, and any modification due to ``from __future__ import`` is
discarded. discarded.

View File

@ -3,13 +3,9 @@
# Keep lines sorted lexicographically to help avoid merge conflicts. # Keep lines sorted lexicographically to help avoid merge conflicts.
Doc/c-api/allocation.rst Doc/c-api/allocation.rst
Doc/c-api/apiabiversion.rst
Doc/c-api/bool.rst Doc/c-api/bool.rst
Doc/c-api/buffer.rst Doc/c-api/buffer.rst
Doc/c-api/bytes.rst
Doc/c-api/capsule.rst Doc/c-api/capsule.rst
Doc/c-api/cell.rst
Doc/c-api/code.rst
Doc/c-api/complex.rst Doc/c-api/complex.rst
Doc/c-api/conversion.rst Doc/c-api/conversion.rst
Doc/c-api/datetime.rst Doc/c-api/datetime.rst
@ -22,7 +18,6 @@ Doc/c-api/import.rst
Doc/c-api/init.rst Doc/c-api/init.rst
Doc/c-api/init_config.rst Doc/c-api/init_config.rst
Doc/c-api/intro.rst Doc/c-api/intro.rst
Doc/c-api/iterator.rst
Doc/c-api/memory.rst Doc/c-api/memory.rst
Doc/c-api/memoryview.rst Doc/c-api/memoryview.rst
Doc/c-api/module.rst Doc/c-api/module.rst
@ -34,10 +29,8 @@ Doc/c-api/structures.rst
Doc/c-api/sys.rst Doc/c-api/sys.rst
Doc/c-api/tuple.rst Doc/c-api/tuple.rst
Doc/c-api/type.rst Doc/c-api/type.rst
Doc/c-api/typehints.rst
Doc/c-api/typeobj.rst Doc/c-api/typeobj.rst
Doc/c-api/unicode.rst Doc/c-api/unicode.rst
Doc/c-api/veryhigh.rst
Doc/extending/embedding.rst Doc/extending/embedding.rst
Doc/extending/extending.rst Doc/extending/extending.rst
Doc/extending/newtypes.rst Doc/extending/newtypes.rst