# Development/Build utilities (allow to be unpinned)
ipdb
maturin
pre-commit
docker

# Tracing
orjson==3.9.1  # orjson recommended for viztracer
py-spy==0.3.14
viztracer==0.15.6

# Testing frameworks
hypothesis==6.79.2
pytest==7.4.0
pytest-benchmark==4.0.0
pytest-cov==4.1.0

# Testing dependencies
lxml==4.9.2
dask==2022.2.0; python_version < '3.8'
dask==2023.5.0; python_version == '3.8'
dask==2023.6.0; python_version >= '3.9'
numpy; python_version < '3.9'
numpy==1.25.0; python_version >= '3.9'
pandas==1.3.5; python_version < '3.8'
pandas==2.0.2; python_version >= '3.8'
xxhash>=3.0.0
Pillow==9.5.0
opencv-python==4.7.0.72

# Ray
ray[data, default]==2.4.0
pydantic<2  # pin pydantic because Ray uses broken APIs

# AWS
s3fs==2023.1.0; python_version < '3.8'
s3fs==2023.6.0; python_version >= '3.8'
# on old versions of s3fs's pinned botocore, they neglected to pin urllib3<2 which leads to:
# "ImportError: cannot import name 'DEFAULT_CIPHERS' from 'urllib3.util.ssl_'"
urllib3<2; python_version < '3.8'

# Documentation
myst-nb>=0.16.0
Sphinx <= 5
sphinx-book-theme>=0.3.3,<1.0.0
sphinx-reredirects>=0.1.1
sphinx-copybutton>=0.5.2
