Skip to content

Pyright CI test doesn't recognize requires_python in METADATA.toml #14025

Closed as duplicate

Description

@Avasam

The test pyright: Run test cases can fail for older Python versions due to using newer features. For example, in #13968 (comment) I typed a class with a dataclass decorator using kwargs added to Python 3.10. Despite setting requires_python = ">=3.10" in stubs/networkx/METADATA.toml

Example run (whilst the build logs are still available) https://github.com/python/typeshed/actions/runs/14921000784/job/41916216049?pr=13968

One possible solution with the current setup, is to collect stubs whose requires_python don't match the current Python version, and pass them to pyright's file exclusion.


Similarly, if running tests/runtests.py on a third-party stub, requires_python should be taken into account rather than only relying on _PYTHON_VERSION.
Edit: #14051

Activity

  1. changed the title [-]Pyrigth CI test doesn't recognize `requires_python` in `METADATA.toml`[/-] [+]Pyright CI test doesn't recognize `requires_python` in `METADATA.toml`[/+] on May 12, 2025
  2. srittau commented on May 13, 2025

    @srittau
    Collaborator

    This is basically a duplicate of #10722. Closing this here as there is already some discussion there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions