Skip to content

Commit

Permalink
Clean requirements
Browse files Browse the repository at this point in the history
Split required vs optional dependencies
Allow file store to work without tqdm (which becomes optional)
  • Loading branch information
gmaze committed Jan 4, 2021
1 parent 29033be commit b487691
Show file tree
Hide file tree
Showing 5 changed files with 36 additions and 25 deletions.
13 changes: 7 additions & 6 deletions argopy/stores/filesystems.py
Original file line number Diff line number Diff line change
@@ -1,25 +1,26 @@
import os
import io
import types
import xarray as xr
import pandas as pd
import requests
import aiohttp
import fsspec
import shutil
import pickle
import json
import tempfile
import warnings
from IPython.core.display import display, HTML

import concurrent.futures
from tqdm import tqdm
import multiprocessing
try:
from tqdm import tqdm
except ModuleNotFoundError:
warnings.warn("argopy needs tqdm installed to display progress bars")
tqdm = lambda fct, lst: fct

from argopy.options import OPTIONS
from argopy.errors import ErddapServerError, FileSystemHasNoCache, CacheFileNotFound, DataNotFound, \
APIServerError, InvalidMethod
from argopy.errors import FileSystemHasNoCache, CacheFileNotFound, DataNotFound, \
InvalidMethod
from abc import ABC, abstractmethod


Expand Down
29 changes: 19 additions & 10 deletions docs/install.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,24 +4,33 @@ Installation
Required dependencies
^^^^^^^^^^^^^^^^^^^^^

- Python
- Xarray
- Erddapy
- Fsspec
- Gsw
- xarray>=0.15.1
- fsspec>=0.7.4, <0.8.4
- scikit-learn>=0.21
- erddapy>=0.6
- gsw>=3.3.1
- aiohttp>=3.6.2
- netCDF4>=1.3.1
- dask>=2.9
- toolz>=0.8.2

Note that Erddapy_ is required because `erddap <https://coastwatch.pfeg.noaa.gov/erddap/information.html>`_ is the default data fetching backend.

The **argopy** software is continuously tested with success under latest OS (Linux and Mac OS) and with python versions 3.6, 3.7 and 3.8.
Requirement dependencies details can be found `here <https://github.com/euroargodev/argopy/network/dependencies#requirements.txt>`_.

The **argopy** software is `continuously tested <https://github.com/euroargodev/argopy/actions?query=workflow%3Atests>`_ with under latest OS (Linux and Mac OS) and with python versions 3.6, 3.7 and 3.8.

Optional dependencies
^^^^^^^^^^^^^^^^^^^^^

For full plotting functionality the following packages are required:
For full **argopy** functionalities to work, the following packages are also required:

- Matplotlib 3.0 (mandatory)
- Cartopy 0.17 (for some methods only)
- Seaborn 0.9.0 (for some methods only)
- ipython>=5.0.0
- ipywidgets>=7.5.1
- tqdm>=4.46.0
- Matplotlib 3.0
- Cartopy 0.17
- Seaborn 0.9.0

Instructions
^^^^^^^^^^^^
Expand Down
4 changes: 1 addition & 3 deletions docs/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,8 @@ pkgconfig
ipykernel>=5.1
seaborn>=0.9.0
geos>=0.2
numpydoc>=0.6.0
nbsphinx>=0.4
#pyproj>=2.4
#geos>=0.2
#cartopy
sphinx-issues>=1.2
distributed
cmocean
Expand Down
5 changes: 4 additions & 1 deletion requirements-dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,7 @@ check-manifest
setuptools_scm
twine
wheel
pytest
pytest
tqdm>=4.46.0
ipython>=5.0.0
ipywidgets>=7.5.1
10 changes: 5 additions & 5 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
scipy>=1.1.0
xarray>=0.15.1
scipy>=1.1.0
scikit-learn>=0.21
ipython>=5.0.0
numpydoc>=0.6.0
netCDF4>=1.3.1
dask>=2.9
toolz>=0.8.2
erddapy>=0.6
fsspec>=0.7.4, <0.8.4
gsw>=3.3.1
tqdm>=4.46.0
aiohttp>=3.6.2
ipywidgets>=7.5.1
#ipython>=5.0.0
#ipywidgets>=7.5.1
#tqdm>=4.46.0
#numpydoc>=0.6.0

0 comments on commit b487691

Please sign in to comment.