https://github.com/python/cpython/commit/579acf45629fa0b7787ec78fa4049fc6a6388b71
commit: 579acf45629fa0b7787ec78fa4049fc6a6388b71
branch: main
author: Nicolas Trangez <[email protected]>
committer: ZeroIntensity <[email protected]>
date: 2025-06-28T09:01:41-04:00
summary:
gh-76595: Add note on `PyCapsule_Import` behavior (GH-134022)
files:
M Doc/c-api/capsule.rst
diff --git a/Doc/c-api/capsule.rst b/Doc/c-api/capsule.rst
index cdb8aa33e9fd32..64dc4f5275b512 100644
--- a/Doc/c-api/capsule.rst
+++ b/Doc/c-api/capsule.rst
@@ -105,9 +105,19 @@ Refer to :ref:`using-capsules` for more information on
using these objects.
``module.attribute``. The *name* stored in the capsule must match this
string exactly.
+ This function splits *name* on the ``.`` character, and imports the first
+ element. It then processes further elements using attribute lookups.
+
Return the capsule's internal *pointer* on success. On failure, set an
exception and return ``NULL``.
+ .. note::
+
+ If *name* points to an attribute of some submodule or subpackage, this
+ submodule or subpackage must be previously imported using other means
+ (for example, by using :c:func:`PyImport_ImportModule`) for the
+ attribute lookups to succeed.
+
.. versionchanged:: 3.3
*no_block* has no effect anymore.
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]