Skip to content

gh-89554: Document typing.ParamSpecArgs and ParamSpecKwargs as classes - #150677

Merged
serhiy-storchaka merged 1 commit into
python:mainfrom
gaborbernat:gh-89554-typing-paramspec-class-roles
Jun 2, 2026
Merged

gh-89554: Document typing.ParamSpecArgs and ParamSpecKwargs as classes#150677
serhiy-storchaka merged 1 commit into
python:mainfrom
gaborbernat:gh-89554-typing-paramspec-class-roles

Conversation

@gaborbernat

@gaborbernatgaborbernat commented May 31, 2026

Copy link
Copy Markdown
Contributor

typing.ParamSpecArgs and typing.ParamSpecKwargs are classes (the runtime types of the args and kwargs attributes of a ParamSpec), but the documentation marks them with the .. data:: directive. The existing :class: cross-references to them in Doc/library/typing.rst and Doc/whatsnew/3.10.rst therefore resolve against a missing py:class target.

Switch the stacked entry to .. class:: so the references resolve. Both names share a single entry, so both are covered.

Refs: gh-89554. Documentation-only change, so no Misc/NEWS entry (skip news).

…classes
ParamSpecArgs and ParamSpecKwargs are classes (the runtime types of the
args and kwargs attributes of a ParamSpec), but were documented with the
".. data::" directive. The existing ":class:`ParamSpecArgs`" and
":class:`ParamSpecKwargs`" cross-references in the typing docs and the 3.10
What's New page therefore fail to resolve against a py:class target.
Switch the stacked entry to ".. class::" so the references resolve.
@read-the-docs-community

Copy link
Copy Markdown

Documentation build overview

📚 cpython-previews | 🛠️ Build #32924402 | 📁 Comparing cc59bf0 against main (2f8f569)

🔍 Preview build

1 file changed
±library/typing.html

@JelleZijlstraJelleZijlstra added needs backport to 3.13 bugs and security fixes needs backport to 3.14 bugs and security fixes needs backport to 3.15 pre-release feature fixes, bugs and security fixes labels May 31, 2026
@gaborbernat

gaborbernat commented Jun 1, 2026

Copy link
Copy Markdown
ContributorAuthor

Backward-compatibility check. The only downstream :data: reference found is typing_extensions (doc/index.rst), which is maintained alongside CPython. :class: references to ParamSpecArgs already exist in typing.rst and whatsnew/3.10.rst. Low risk.

@serhiy-storchakaserhiy-storchaka left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. 👍

@serhiy-storchaka
serhiy-storchaka merged commit 35c314d into python:mainJun 2, 2026
46 checks passed
@github-project-automationgithub-project-automationBot moved this from Todo to Done in Docs PRsJun 2, 2026
@miss-islington-app

Copy link
Copy Markdown

Thanks @gaborbernat for the PR, and @serhiy-storchaka for merging it 🌮🎉.. I'm working now to backport this PR to: 3.13, 3.14, 3.15.
🐍🍒⛏🤖

@bedevere-app

Copy link
Copy Markdown

GH-150763 is a backport of this pull request to the 3.15 branch.

@bedevere-appbedevere-appBot removed the needs backport to 3.15 pre-release feature fixes, bugs and security fixes label Jun 2, 2026
@bedevere-app

Copy link
Copy Markdown

GH-150764 is a backport of this pull request to the 3.14 branch.

@bedevere-appbedevere-appBot removed the needs backport to 3.14 bugs and security fixes label Jun 2, 2026
@bedevere-app

Copy link
Copy Markdown

GH-150765 is a backport of this pull request to the 3.13 branch.

@bedevere-appbedevere-appBot removed the needs backport to 3.13 bugs and security fixes label Jun 2, 2026
serhiy-storchaka pushed a commit that referenced this pull request Jun 2, 2026
… classes (GH-150677) (GH-150765)
Use the directive "class" instead of "data" for ParamSpecArgs and ParamSpecKwargs.
(cherry picked from commit 35c314d)
Co-authored-by: Bernát Gábor <gaborjbernat@gmail.com>
serhiy-storchaka pushed a commit that referenced this pull request Jun 2, 2026
… classes (GH-150677) (GH-150764)
Use the directive "class" instead of "data" for ParamSpecArgs and ParamSpecKwargs.
(cherry picked from commit 35c314d)
Co-authored-by: Bernát Gábor <gaborjbernat@gmail.com>
serhiy-storchaka pushed a commit that referenced this pull request Jun 2, 2026
… classes (GH-150677) (GH-150763)
Use the directive "class" instead of "data" for ParamSpecArgs and ParamSpecKwargs.
(cherry picked from commit 35c314d)
Co-authored-by: Bernát Gábor <gaborjbernat@gmail.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docsDocumentation in the Doc dirskip news

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants

@gaborbernat@JelleZijlstra@serhiy-storchaka