Skip to content

[Code scan] Python 3.7 metadata is incompatible with typeguard>=4 dependency #122

Description

@njzjz

This issue was found by a Codex global code scan of the repository.

Affected code:

dargs/pyproject.toml

Lines 14 to 22 in b4db564

classifiers = [
"Programming Language :: Python :: 3.7",
"License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)",
]
dependencies = [
"typeguard>=4",
'typing_extensions; python_version < "3.8"',
]
requires-python = ">=3.7"

Problem:
The project metadata advertises Python 3.7 support with requires-python = ">=3.7" and a Python 3.7 classifier, but the runtime dependency is typeguard>=4. pip cannot satisfy typeguard>=4 for Python 3.7, because the available typeguard 4.x releases require at least Python 3.7.4 or newer, and later releases require Python 3.8/3.9+.

Reproducer:

python -m pip download 'typeguard>=4' --python-version 37 --only-binary=:all: --no-deps -d /tmp/dargs-pip-37

Observed behavior:

ERROR: Could not find a version that satisfies the requirement typeguard>=4

Expected behavior:
The package metadata should either raise the minimum Python version to the actual supported floor, or constrain dependencies with environment markers so installation remains solvable for advertised Python versions.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status
    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions