[Python-checkins] [doc] Mention __slots__ behavior in weakref.rst (GH-21061)

ambv webhook-mailer at python.org
Wed Oct 6 14:23:12 EDT 2021


https://github.com/python/cpython/commit/b24b47e64355224c1bf4e46ed7c4d9f7df4e6f09
commit: b24b47e64355224c1bf4e46ed7c4d9f7df4e6f09
branch: main
author: Jakub Stasiak <jakub at stasiak.at>
committer: ambv <lukasz at langa.pl>
date: 2021-10-06T20:23:02+02:00
summary:

[doc] Mention __slots__ behavior in weakref.rst (GH-21061)

It took me longer than I expected to figure out why a random class
I dealt with didn't support weak references. I believe this addition
will make the __slots__/weakref interaction more discoverable to people
having troubles with this. (Before this patch __slots__ was not
mentioned in weakref documentation even once).

Co-authored-by: Łukasz Langa <lukasz at langa.pl>

files:
M Doc/library/weakref.rst

diff --git a/Doc/library/weakref.rst b/Doc/library/weakref.rst
index 5a8df4c27dc37..1102c634edaf3 100644
--- a/Doc/library/weakref.rst
+++ b/Doc/library/weakref.rst
@@ -88,6 +88,10 @@ support weak references but can add support through subclassing::
 Extension types can easily be made to support weak references; see
 :ref:`weakref-support`.
 
+When ``__slots__`` are defined for a given type, weak reference support is
+disabled unless a ``'__weakref__'`` string is also present in the sequence of
+strings in the ``__slots__`` declaration.
+See :ref:`__slots__ documentation <slots>` for details.
 
 .. class:: ref(object[, callback])
 



More information about the Python-checkins mailing list