]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-90562: Mention slots pitfall in dataclass docs (#107391)
authorJosh Cannon <joshdcannon@gmail.com>
Tue, 21 May 2024 19:37:32 +0000 (14:37 -0500)
committerGitHub <noreply@github.com>
Tue, 21 May 2024 19:37:32 +0000 (19:37 +0000)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Co-authored-by: Erlend E. Aasland <erlend@python.org>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Doc/library/dataclasses.rst

index 045bf6277289d840eb08a422ac9ffcf59862ec77..cf707ca5b6802df7968297163afc2326995d8c31 100644 (file)
@@ -185,7 +185,10 @@ Module contents
    - *slots*: If true (the default is ``False``), :attr:`~object.__slots__` attribute
      will be generated and new class will be returned instead of the original one.
      If :attr:`!__slots__` is already defined in the class, then :exc:`TypeError`
-     is raised.
+     is raised. Calling no-arg :func:`super` in dataclasses using ``slots=True`` will result in
+     the following exception being raised:
+     ``TypeError: super(type, obj): obj must be an instance or subtype of type``.
+     The two-arg :func:`super` is a valid workaround. See :gh:`90562` for full details.
 
     .. versionadded:: 3.10