dask>=2022.3
numpy>=1.22
overrides>=6.1
pandas>=1.4
pyproj>=3.5
scipy>=1.10
xarray>=2022.3

[complete]
pycontrails[ecmwf]
pycontrails[gcp]
pycontrails[gfs]
pycontrails[jupyter]
pycontrails[vis]
pycontrails[zarr]

[dev]
black>=22
black[jupyter]
dep_license
fastparquet>=0.8
ipdb>=0.13
isort>=5.4
memory_profiler
mypy>=0.99
mypy-extensions>=0.4
platformdirs>=3.0
pre-commit>=2.10
psutil
pyarrow>=5.0
pydocstyle>=6.1
pytest>=6.1
pytest-cov>=2.11
requests>=2.25
ruff>=0.0.259

[docs]
doc8>=1.1
furo>=2023.3
myst-parser>=1.0
nb-clean>=2.4
nbsphinx>=0.8
nbval!=0.10.0,>=0.9.6
pytest-check-links>=0.8.0
sphinx>=4.2
sphinx-autobuild>=0.7
sphinxcontrib-bibtex>=2.2
sphinx_copybutton>=0.5
sphinxext.opengraph>=0.8

[ecmwf]
cdsapi>=0.4
cfgrib>=0.9
eccodes>=1.4
ecmwflibs>=0.4
ecmwf-api-client>=1.6
netcdf4>=1.6.1
platformdirs>=3.0
requests>=2.25

[gcp]
google-cloud-storage>=2.1
platformdirs>=3.0
tqdm>=4.61

[gfs]
boto3>=1.20
cfgrib>=0.9
eccodes>=1.4
platformdirs>=3.0
tqdm>=4.61

[jupyter]
ipywidgets>=7.6
jupyterlab>=2.2

[open3d]
open3d>=0.14

[vis]
matplotlib>=3.3
opencv-python-headless>=4.5
scikit-learn>=0.23
scikit-image>=0.18
seaborn>=0.11
shapely>=2.0

[zarr]
fsspec>=2022.7.1
zarr>=2.12
