https://github.com/python/cpython/commit/ac4e5d2108ccc6c60bf836f39f7cfb3a91ef2c82
commit: ac4e5d2108ccc6c60bf836f39f7cfb3a91ef2c82
branch: 3.15
author: Miss Islington (bot) <[email protected]>
committer: hugovk <[email protected]>
date: 2026-08-17T07:52:25Z
summary:

[3.15] gh-149083: Document that dataclasses.MISSING and KW_ONLY are sentinels 
(GH-155919) (#155927)

Co-authored-by: Sanghun Lee <[email protected]>
Co-authored-by: Claude Opus 5 (1M context) <[email protected]>

files:
M Doc/library/dataclasses.rst

diff --git a/Doc/library/dataclasses.rst b/Doc/library/dataclasses.rst
index a77213af778ae6d..1f2933a3c62eebb 100644
--- a/Doc/library/dataclasses.rst
+++ b/Doc/library/dataclasses.rst
@@ -262,8 +262,8 @@ Module contents
      c = C()
      c.mylist += [1, 2, 3]
 
-   As shown above, the :const:`MISSING` value is a sentinel object used to
-   detect if some parameters are provided by the user. This sentinel is
+   As shown above, the :const:`MISSING` value is a :class:`sentinel` object
+   used to detect if some parameters are provided by the user. This sentinel is
    used because ``None`` is a valid value for some parameters with
    a distinct meaning.  No code should directly use the :const:`MISSING` value.
 
@@ -523,11 +523,14 @@ Module contents
 
 .. data:: MISSING
 
-   A sentinel value signifying a missing default or default_factory.
+   A :class:`sentinel` object signifying a missing default or 
*default_factory*.
+
+   .. versionchanged:: 3.15
+      :const:`!MISSING` is now a :class:`sentinel` object.
 
 .. data:: KW_ONLY
 
-   A sentinel value used as a type annotation.  Any fields after a
+   A :class:`sentinel` object used as a type annotation.  Any fields after a
    pseudo-field with the type of :const:`!KW_ONLY` are marked as
    keyword-only fields.  Note that a pseudo-field of type
    :const:`!KW_ONLY` is otherwise completely ignored.  This includes the
@@ -552,6 +555,9 @@ Module contents
 
    .. versionadded:: 3.10
 
+   .. versionchanged:: 3.15
+      :const:`!KW_ONLY` is now a :class:`sentinel` object.
+
 .. exception:: FrozenInstanceError
 
    Raised when an implicitly defined :meth:`~object.__setattr__` or

_______________________________________________
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]

Reply via email to