From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Thu, 23 Apr 2026 02:57:40 +0000 (+0200) Subject: [3.13] gh-142965: Fix Concatenate documentation to reflect valid use cases (GH-143316... X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=7dd784e701132d1871bf02e47db44ab3ff2fbd6c;p=thirdparty%2FPython%2Fcpython.git [3.13] gh-142965: Fix Concatenate documentation to reflect valid use cases (GH-143316) (#148900) The documentation previously stated that Concatenate is only valid when used as the first argument to Callable, but according to PEP 612, it can also be used when instantiating user-defined generic classes with ParamSpec parameters. (cherry picked from commit 75ff1afcb6a1bb2b3d54899e9b222a61798fa491) Co-authored-by: John Seong <39040639+sandole@users.noreply.github.com> --- diff --git a/Doc/library/typing.rst b/Doc/library/typing.rst index 250c861f872c..8569e2e4491f 100644 --- a/Doc/library/typing.rst +++ b/Doc/library/typing.rst @@ -1166,7 +1166,8 @@ These can be used as types in annotations. They all support subscription using or transforms parameters of another callable. Usage is in the form ``Concatenate[Arg1Type, Arg2Type, ..., ParamSpecVariable]``. ``Concatenate`` - is currently only valid when used as the first argument to a :ref:`Callable `. + is valid when used in :ref:`Callable ` type hints + and when instantiating user-defined generic classes with :class:`ParamSpec` parameters. The last parameter to ``Concatenate`` must be a :class:`ParamSpec` or ellipsis (``...``).