]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-140241: Fix documentation for the registry parameter of warnings.warn_explicit...
authorSerhiy Storchaka <storchaka@gmail.com>
Sat, 18 Oct 2025 10:55:26 +0000 (13:55 +0300)
committerGitHub <noreply@github.com>
Sat, 18 Oct 2025 10:55:26 +0000 (13:55 +0300)
Co-authored-by: Petr Viktorin <encukou@gmail.com>
Doc/library/warnings.rst

index f9c8c4fc3a804e2bf165de4c45f0c13f0355d6a7..03b7a8dc378ef3cfe6f24d394bca0df0fc349cf8 100644 (file)
@@ -480,14 +480,21 @@ Available Functions
 .. function:: warn_explicit(message, category, filename, lineno, module=None, registry=None, module_globals=None, source=None)
 
    This is a low-level interface to the functionality of :func:`warn`, passing in
-   explicitly the message, category, filename and line number, and optionally the
-   module name and the registry (which should be the ``__warningregistry__``
-   dictionary of the module).  The module name defaults to the filename with
-   ``.py`` stripped; if no registry is passed, the warning is never suppressed.
+   explicitly the message, category, filename and line number, and optionally
+   other arguments.
    *message* must be a string and *category* a subclass of :exc:`Warning` or
    *message* may be a :exc:`Warning` instance, in which case *category* will be
    ignored.
 
+   *module*, if supplied, should be the module name.
+   If no module is passed, the filename with ``.py`` stripped is used.
+
+   *registry*, if supplied, should be the ``__warningregistry__`` dictionary
+   of the module.
+   If no registry is passed, each warning is treated as the first occurrence,
+   that is, filter actions ``"default"``, ``"module"`` and ``"once"`` are
+   handled as ``"always"``.
+
    *module_globals*, if supplied, should be the global namespace in use by the code
    for which the warning is issued.  (This argument is used to support displaying
    source for modules found in zipfiles or other non-filesystem import