Problem
The optional extras in pyproject.toml pin to very recent minor versions:
[project.optional-dependencies]
pandas = ["pandas>=2.3.3"]
pandera = ["pandera>=0.29.0"]
polars = ["polars>=1.38.1"]
pandas>=2.3.3 excludes all of pandas 2.0–2.3.2. Users on corporate or conda-managed environments frequently lag 1–3 minor versions behind the latest. Unless typedframes uses an API that was specifically introduced in pandas 2.3.3, the lower bound should be relaxed to pandas>=2.0.
Investigation needed
Before changing each bound, verify whether there is a specific API, behaviour, or type stub feature from that exact version that typedframes depends on:
- pandas>=2.3.3: check
src/typedframes/pandas.py for any API calls introduced in 2.3.x vs 2.0
- pandera>=0.29.0: check
src/typedframes/pandera.py for any API calls introduced in 0.29.x — note that pandera renumbered after v1.0, so 0.29.0 may refer to a specific post-v1.0 release
- polars>=1.38.1: check
src/typedframes/polars.py for any API calls introduced in 1.38.x vs earlier 1.x
Suggested bounds (pending verification)
[project.optional-dependencies]
pandas = ["pandas>=2.0"]
pandera = ["pandera>=0.20.0"] # adjust based on investigation
polars = ["polars>=1.0"] # adjust based on investigation
Add a comment in pyproject.toml if a tighter bound is intentional, e.g.:
pandas = ["pandas>=2.3.3"] # requires DataFrame.attrs behaviour from 2.3.3
Problem
The optional extras in
pyproject.tomlpin to very recent minor versions:pandas>=2.3.3excludes all of pandas 2.0–2.3.2. Users on corporate or conda-managed environments frequently lag 1–3 minor versions behind the latest. Unless typedframes uses an API that was specifically introduced in pandas 2.3.3, the lower bound should be relaxed topandas>=2.0.Investigation needed
Before changing each bound, verify whether there is a specific API, behaviour, or type stub feature from that exact version that typedframes depends on:
src/typedframes/pandas.pyfor any API calls introduced in 2.3.x vs 2.0src/typedframes/pandera.pyfor any API calls introduced in 0.29.x — note that pandera renumbered after v1.0, so 0.29.0 may refer to a specific post-v1.0 releasesrc/typedframes/polars.pyfor any API calls introduced in 1.38.x vs earlier 1.xSuggested bounds (pending verification)
Add a comment in
pyproject.tomlif a tighter bound is intentional, e.g.: