click<9,>=8.3
xxhash>=3.0

[codex-all]
catnip-lang[codex-data-analytics]
catnip-lang[codex-files-formats]
catnip-lang[codex-geometry]
catnip-lang[codex-geospatial]
catnip-lang[codex-images-media]
catnip-lang[codex-machine-learning]
catnip-lang[codex-nlp-text]
catnip-lang[codex-optimization]
catnip-lang[codex-persistence]
catnip-lang[codex-structural-biology]
catnip-lang[codex-symbolic-graphs]
catnip-lang[codex-utils]
catnip-lang[codex-visualization]
catnip-lang[codex-web]

[codex-data-analytics]
numpy<3,>=2.4
pandas<4,>=3.0
duckdb<2,>=1.4
duckdb-engine>=0.17
sqlalchemy<3,>=2.0
polars<2,>=1.38
pyarrow<24,>=23

[codex-files-formats]
pyyaml<7,>=6.0
lxml<7,>=6.0
jmespath<2,>=1.1
orjson<4,>=3.11
pyarrow<24,>=23

[codex-geometry]
numpy<3,>=2.4
pillow<13,>=12.1
shapely<3,>=2.1
scipy<2,>=1.17

[codex-geospatial]
geopy<3,>=2.4
pyproj<4,>=3.7
shapely<3,>=2.1
rasterio<2,>=1.5
geopandas<2,>=1.1
osmnx<3,>=2.1
folium<1,>=0.20
branca<1,>=0.8
pystac-client<1,>=0.9

[codex-images-media]
numpy<3,>=2.4
scipy<2,>=1.17
opencv-python<5,>=4.13
pillow<13,>=12.1
pyvips[binary]<4,>=3.1

[codex-machine-learning]
numpy<3,>=2.4
scikit-learn<2,>=1.8
torch<3,>=2.10
torchvision<1,>=0.25

[codex-nlp-text]
spacy<3.8.14,>=3.8

[codex-optimization]
numpy<3,>=2.4
scipy<2,>=1.17
matplotlib<4,>=3.10

[codex-persistence]
redis<8,>=7.3
orjson<4,>=3.11

[codex-structural-biology]
gemmi<1,>=0.7
numpy<3,>=2.4
scipy<2,>=1.17
matplotlib<4,>=3.10
networkx<4,>=3.6

[codex-symbolic-graphs]
sympy<2,>=1.14
networkx<4,>=3.6

[codex-utils]
tqdm<5,>=4.67

[codex-visualization]
numpy<3,>=2.4
matplotlib<4,>=3.10
seaborn<1,>=0.13
plotly<7,>=6.6
hvplot<1,>=0.12
holoviews<2,>=1.23

[codex-web]
httpx[http2]<1,>=0.28
selectolax<0.5,>=0.4.7

[dev]
catnip-lang[test]
cibuildwheel<5,>=4.0
build<2,>=1.4
ruff<1,>=0.15
numpy<3,>=2.4
pandas<4,>=3.0
markdown<4,>=3.10
pygments<3,>=2.19
httpx[http2]<1,>=0.28
setuptools-rust<2,>=1.12

[examples-all]
cryptography<49,>=43

[test]
pytest<10,>=9.0
pytest-xdist<4,>=3.8
pytest-rerunfailures<17,>=16.0
