Installation#

dartobsgen requires Python 3.10 or newer.

From a clone#

git clone https://github.com/CROCODILE-CESM/dartobsgen.git
cd dartobsgen
pip install -e .

What gets installed#

The core dependencies (pyarrow, dask[dataframe], pandas, shapely, xarray, netcdf4, scikit-image, scipy, f90nml, gsw, pydartdiags, nnja-ai) all come in with the package.

What you also need#

dartobsgen writes DART obs_seq files, so a DART checkout is required for most workflows:

See the DART documentation for building DART.

Development install#

pip install -e ".[dev]"     # adds pytest
pytest

Building the documentation#

pip install -e ".[docs]"
sphinx-build -b html docs docs/_build/html
open docs/_build/html/index.html

The docs build imports dartobsgen for the API reference, but only numpy, pandas and shapely are imported at module scope — the heavier dependencies are imported lazily inside the functions that use them. A docs-only environment therefore does not need the full dependency set:

pip install --no-deps -e .
pip install ".[docs]"