Skip to content

chore: lift the numpy<2.5 dev-lock constraint once stubtest handles PEP 695 aliases #133

Description

@t-uda

Context

PR #132 (Poetry→uv migration) added a temporary constraint to pyproject.toml:

[tool.uv]
constraint-dependencies = ["numpy<2.5"]

numpy 2.5 re-exports numpy.typing.NDArray as a PEP 695 type alias, which current mypy/stubtest misreports when validating this package's .pyi stubs on Python ≥ 3.12, breaking the stubtest CI step. The constraint only pins the development lockfile (uv.lock); published package metadata still declares numpy>=1.26, so end users are unaffected.

Task

  • Periodically retry with new mypy releases (uv lock --upgrade-package mypy, then uv run --group dev stubtest ...); the upstream fix lands in mypy/typeshed, not in this repo.
  • When stubtest passes against numpy ≥ 2.5, remove constraint-dependencies from [tool.uv], run uv lock, and confirm the full AGENTS.md checklist.
  • If instead our stubs are at fault (check whether NDArray usage in src/ellphi/*.pyi can be expressed compatibly), fix the stubs and remove the constraint.

Small, self-contained chore — suitable for an implementing agent. Base the PR on the current release branch per CONTRIBUTING.md.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions