anemoi-datasets 0.4.5__tar.gz → 0.5.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- anemoi_datasets-0.5.5/.github/CODEOWNERS +6 -0
- anemoi_datasets-0.5.5/.github/ISSUE_TEMPLATE/bug_report.md +40 -0
- anemoi_datasets-0.5.5/.github/ci-hpc-config.yml +18 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/changelog-pr-update.yml +3 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/changelog-release-update.yml +1 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/ci.yml +15 -2
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/python-publish.yml +2 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/python-pull-request.yml +1 -1
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.gitignore +2 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.pre-commit-config.yaml +12 -8
- anemoi_datasets-0.5.5/CHANGELOG.md +116 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/PKG-INFO +10 -19
- anemoi_datasets-0.5.5/docs/building/filters/rename.rst +6 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/incremental.rst +3 -3
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/accumulations.rst +2 -2
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/forcings.rst +1 -1
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/mars.rst +2 -2
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/netcdf.rst +1 -1
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/opendap.rst +1 -1
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/recentre.rst +1 -1
- anemoi_datasets-0.5.5/docs/building/sources/repeated_dates.rst +29 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/xarray-zarr.rst +1 -1
- anemoi_datasets-0.5.5/docs/building/sources/yaml/hindcasts.yaml +3 -0
- anemoi_datasets-0.5.5/docs/building/sources/yaml/repeated_dates1.yaml +6 -0
- anemoi_datasets-0.5.5/docs/building/sources/yaml/repeated_dates2.yaml +6 -0
- anemoi_datasets-0.5.5/docs/building/sources/yaml/repeated_dates3.yaml +8 -0
- anemoi_datasets-0.5.5/docs/building/sources/yaml/repeated_dates4.yaml +9 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/zenodo.rst +1 -1
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources.rst +1 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/index.rst +3 -3
- anemoi_datasets-0.5.5/docs/using/code/rescale_.py +30 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/selecting.rst +25 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/pyproject.toml +14 -20
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/_version.py +2 -2
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/create.py +3 -2
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/inspect.py +1 -1
- anemoi_datasets-0.5.5/src/anemoi/datasets/commands/publish.py +30 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/__init__.py +72 -35
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/check.py +6 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/config.py +4 -3
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/pressure_level_relative_humidity_to_specific_humidity.py +57 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/pressure_level_specific_humidity_to_relative_humidity.py +57 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/filters/rename.py +2 -3
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/single_level_dewpoint_to_relative_humidity.py +54 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/single_level_relative_humidity_to_dewpoint.py +59 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/single_level_relative_humidity_to_specific_humidity.py +115 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/single_level_specific_humidity_to_relative_humidity.py +390 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/speeddir_to_uv.py +77 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/uv_to_speeddir.py +55 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/__init__.py +7 -1
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/accumulations.py +2 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/sources/grib.py +144 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/sources/hindcasts.py +61 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/mars.py +9 -3
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/__init__.py +6 -1
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/coordinates.py +6 -1
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/field.py +20 -5
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/fieldlist.py +16 -16
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/flavour.py +126 -12
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/sources/xarray/grid.py +135 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/metadata.py +6 -12
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/time.py +1 -5
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/variable.py +10 -10
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/__init__.py +69 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/action.py +123 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/concat.py +92 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/context.py +59 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/data_sources.py +71 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/empty.py +42 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/filter.py +76 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/function.py +122 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/join.py +57 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/misc.py +85 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/pipe.py +33 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/repeated_dates.py +217 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/result.py +413 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/step.py +99 -0
- {anemoi_datasets-0.4.5/src/anemoi/datasets/create → anemoi_datasets-0.5.5/src/anemoi/datasets/create/input}/template.py +0 -42
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/persistent.py +1 -1
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/statistics/__init__.py +1 -1
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/utils.py +3 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/zarr.py +4 -2
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/dataset.py +11 -1
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/debug.py +5 -1
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/masked.py +2 -2
- anemoi_datasets-0.5.5/src/anemoi/datasets/data/rescale.py +147 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/stores.py +20 -7
- anemoi_datasets-0.5.5/src/anemoi/datasets/dates/__init__.py +243 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/dates/groups.py +92 -19
- anemoi_datasets-0.5.5/src/anemoi/datasets/fields.py +66 -0
- anemoi_datasets-0.5.5/src/anemoi/datasets/utils/fields.py +47 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi_datasets.egg-info/PKG-INFO +10 -19
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi_datasets.egg-info/SOURCES.txt +48 -14
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi_datasets.egg-info/requires.txt +10 -19
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/test_create.py +7 -2
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/xarray/test_netcdf.py +2 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/xarray/test_opendap.py +2 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/xarray/test_zarr.py +56 -9
- anemoi_datasets-0.4.5/CHANGELOG.md +0 -80
- anemoi_datasets-0.4.5/docs/building/filters/rename.rst +0 -3
- anemoi_datasets-0.4.5/docs/building/sources/yaml/hindcasts.yaml +0 -2
- anemoi_datasets-0.4.5/src/anemoi/datasets/create/functions/sources/grib.py +0 -59
- anemoi_datasets-0.4.5/src/anemoi/datasets/create/functions/sources/hindcasts.py +0 -120
- anemoi_datasets-0.4.5/src/anemoi/datasets/create/functions/sources/xarray/grid.py +0 -46
- anemoi_datasets-0.4.5/src/anemoi/datasets/create/input.py +0 -1065
- anemoi_datasets-0.4.5/src/anemoi/datasets/dates/__init__.py +0 -160
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.gitattributes +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/ci-config.yml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/label-public-pr.yml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/readthedocs-pr-update.yml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.readthedocs.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.vscode/spellright.dict +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/LICENSE +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/README.md +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/Makefile +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/_static/logo.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/_static/style.css +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/_templates/.gitkeep +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/apply-fmt.sh +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/advanced-options.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/filters/empty.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/filters/noop.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/filters/rotate_winds.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/filters/select.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/filters/unrotate_winds.rst +0 -0
- /anemoi_datasets-0.4.5/docs/building/sources/hindcasts.yaml → /anemoi_datasets-0.5.5/docs/building/filters/yaml/rename.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/filters.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/handling-missing-dates.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/handling-missing-values.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/introduction.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/naming-variables.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/operations.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/grib.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/hindcasts.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/xarray-kerchunk.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/xarray-kerchunk.rst +0 -0
- {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/accumulations1.yaml +0 -0
- {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/accumulations2.yaml +0 -0
- {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/forcings.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/yaml/grib1.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/yaml/grib2.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/yaml/grib3.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/yaml/grib4.yaml +0 -0
- {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/mars1.yaml +0 -0
- {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/mars2.yaml +0 -0
- {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/netcdf.yaml +0 -0
- {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/opendap.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/yaml/recentre.yaml +0 -0
- {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/xarray-kerchunk.yaml +0 -0
- {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/xarray-zarr.yaml +0 -0
- {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/zenodo.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/statistics.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/syntax.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/Makefile +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/building1.txt +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/building1.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/building2.txt +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/building2.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/building3.txt +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/building3.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/concat.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/hindcasts.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/input.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/missing_dates.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/nan.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/pipe.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/check-index.sh +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/cli/compare.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/cli/copy.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/cli/create.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/cli/inspect.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/cli/introduction.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/cli/scan.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/conf.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/images.pptx +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/installing.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/overview.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/overview_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/schemas/matrix.excalidraw +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/schemas/matrix.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/schemas/overview.excalidraw +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/schemas/overview.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/schemas/recipe.excalidraw +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/schemas/recipe.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/area1_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/area2_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/chain_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/combine_example.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/concat1.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/cutout_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/drop_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/end_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/ensembles1_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/fill_missing_gaps_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/frequency1_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/frequency2_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/grids1_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/iterating_missing_dates1_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/iterating_missing_dates2_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/iterating_missing_dates3_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/join1.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/matching0_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/matching1_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/matching2_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/matching3_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/matching4_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/misc1.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/misc2.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/missing_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/missing_dates_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_cloud.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_combine1_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_combine2_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_complex.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_dict_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_first_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_list_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_name.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_other.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_path.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_yaml_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/rename_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/reorder1_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/reorder2_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/select1_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/select2_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/shuffle_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/some_attributes_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/start_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/statistics_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/subset_example.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/thinning_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/xy1_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/xy2_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/zip1_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/zip2_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/zip_xy_.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/combining.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/configuration.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/configuration.toml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/grids.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/area-1.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/concat.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/cutout-1.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/cutout-2.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/cutout-3.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/cutout-4.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/cutout-5.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/cutout-6.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/join.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/overlay.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/skip-missing.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/thinning-after.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/thinning-before.png +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/introduction.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/matching.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/methods.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/miscellaneous.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/missing.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/opening.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/other.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/statistics.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/subsetting.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/zip.rst +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/setup.cfg +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/__init__.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/__main__.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/__init__.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/cleanup.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/compare.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/copy.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/finalise-additions.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/finalise.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/init-additions.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/init.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/load-additions.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/load.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/patch.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/scan.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/compute/__init__.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/compute/recentre.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/chunks.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/__init__.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/filters/__init__.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/filters/empty.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/filters/noop.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/filters/rotate_winds.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/filters/unrotate_winds.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/constants.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/empty.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/forcings.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/netcdf.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/opendap.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/recentre.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/source.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/tendencies.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray_kerchunk.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray_zarr.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/zenodo.py +0 -0
- {anemoi_datasets-0.4.5/src/anemoi/datasets/create → anemoi_datasets-0.5.5/src/anemoi/datasets/create/input}/trace.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/patch.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/size.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/statistics/summary.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/writer.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/__init__.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/concat.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/debug.css +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/ensemble.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/forwards.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/grids.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/indexing.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/interpolate.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/join.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/misc.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/missing.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/select.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/statistics.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/subset.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/unchecked.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/xy.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/grids.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/utils/__init__.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi_datasets.egg-info/dependency_links.txt +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi_datasets.egg-info/entry_points.txt +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi_datasets.egg-info/top_level.txt +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/concat.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/data_sources.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/join.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/missing.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/nan.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/pipe.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/recentre.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/run.sh +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create-perturbations-full.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create-shift.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/test_chunks.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/test_data.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/test_dates.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/test_indexing.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/xarray/test_kerchunk.py +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/.gitignore +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/examples/Makefile +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/examples/an-oper-2023-2023-2p5-6h-v1.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/grids/Makefile +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/grids/grids.ipynb +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/grids/grids1.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/grids/grids2.yaml +0 -0
- {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/upload-sample-dataset.py +0 -0
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# CODEOWNERS file
|
|
2
|
+
|
|
3
|
+
# Protect workflow files
|
|
4
|
+
/.github/ @theissenhelen @jesperdramsch @gmertes @b8raoult @floriankrb
|
|
5
|
+
/.pre-commit-config.yaml @theissenhelen @jesperdramsch @gmertes @b8raoult @floriankrb
|
|
6
|
+
/pyproject.toml @theissenhelen @jesperdramsch @gmertes @b8raoult @floriankrb
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug report
|
|
3
|
+
about: Create a report to help us improve. **❗ IMPORTANT:** If you have difficulties creating a dataset from any source, please provide us with a sample data file or a URL to the source data.
|
|
4
|
+
title: ''
|
|
5
|
+
labels: ''
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
**Describe the bug**
|
|
10
|
+
A clear and concise description of what the bug is.
|
|
11
|
+
|
|
12
|
+
**To Reproduce**
|
|
13
|
+
Steps to reproduce the behavior:
|
|
14
|
+
1. Go to '...'
|
|
15
|
+
2. Click on '....'
|
|
16
|
+
3. Scroll down to '....'
|
|
17
|
+
4. See error
|
|
18
|
+
|
|
19
|
+
**URL to sample input data**
|
|
20
|
+
Provide a URL to a sample input data, or attach a file to that report if it is small enough.
|
|
21
|
+
|
|
22
|
+
**Expected behavior**
|
|
23
|
+
A clear and concise description of what you expected to happen.
|
|
24
|
+
|
|
25
|
+
**Screenshots**
|
|
26
|
+
If applicable, add screenshots to help explain your problem.
|
|
27
|
+
|
|
28
|
+
**Desktop (please complete the following information):**
|
|
29
|
+
- OS: [e.g. iOS]
|
|
30
|
+
- Browser [e.g. chrome, safari]
|
|
31
|
+
- Version [e.g. 22]
|
|
32
|
+
|
|
33
|
+
**Smartphone (please complete the following information):**
|
|
34
|
+
- Device: [e.g. iPhone6]
|
|
35
|
+
- OS: [e.g. iOS8.1]
|
|
36
|
+
- Browser [e.g. stock browser, safari]
|
|
37
|
+
- Version [e.g. 22]
|
|
38
|
+
|
|
39
|
+
**Additional context**
|
|
40
|
+
Add any other context about the problem here.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
build:
|
|
2
|
+
python: '3.10'
|
|
3
|
+
modules:
|
|
4
|
+
- ninja
|
|
5
|
+
dependencies:
|
|
6
|
+
- ecmwf/ecbuild@develop
|
|
7
|
+
- ecmwf/eccodes@develop
|
|
8
|
+
- ecmwf/eckit@develop
|
|
9
|
+
- ecmwf/odc@develop
|
|
10
|
+
python_dependencies:
|
|
11
|
+
- ecmwf/anemoi-utils@develop
|
|
12
|
+
- ecmwf/earthkit-data@develop
|
|
13
|
+
- ecmwf/earthkit-meteo@develop
|
|
14
|
+
- ecmwf/earthkit-geo@develop
|
|
15
|
+
parallel: 64
|
|
16
|
+
|
|
17
|
+
pytest_cmd: |
|
|
18
|
+
python -m pytest -vv -m 'not notebook and not no_cache_init' --cov=. --cov-report=xml
|
|
@@ -8,9 +8,17 @@ on:
|
|
|
8
8
|
- 'develop'
|
|
9
9
|
tags-ignore:
|
|
10
10
|
- '**'
|
|
11
|
+
paths-ignore:
|
|
12
|
+
- "docs/**"
|
|
13
|
+
- "CHANGELOG.md"
|
|
14
|
+
- "README.md"
|
|
11
15
|
|
|
12
16
|
# Trigger the workflow on pull request
|
|
13
|
-
pull_request:
|
|
17
|
+
pull_request:
|
|
18
|
+
paths-ignore:
|
|
19
|
+
- "docs/**"
|
|
20
|
+
- "CHANGELOG.md"
|
|
21
|
+
- "README.md"
|
|
14
22
|
|
|
15
23
|
# Trigger the workflow manually
|
|
16
24
|
workflow_dispatch: ~
|
|
@@ -18,6 +26,11 @@ on:
|
|
|
18
26
|
# Trigger after public PR approved for CI
|
|
19
27
|
pull_request_target:
|
|
20
28
|
types: [labeled]
|
|
29
|
+
paths-ignore:
|
|
30
|
+
- "docs/**"
|
|
31
|
+
- "CHANGELOG.md"
|
|
32
|
+
- "README.md"
|
|
33
|
+
|
|
21
34
|
|
|
22
35
|
jobs:
|
|
23
36
|
# Run CI including downstream packages on self-hosted runners
|
|
@@ -34,7 +47,7 @@ jobs:
|
|
|
34
47
|
downstream-ci-hpc:
|
|
35
48
|
name: downstream-ci-hpc
|
|
36
49
|
if: ${{ !github.event.pull_request.head.repo.fork && github.event.action != 'labeled' || github.event.label.name == 'approved-for-ci' }}
|
|
37
|
-
uses: ecmwf-actions/downstream-ci/.github/workflows/downstream-ci.yml@main
|
|
50
|
+
uses: ecmwf-actions/downstream-ci/.github/workflows/downstream-ci-hpc.yml@main
|
|
38
51
|
with:
|
|
39
52
|
anemoi-datasets: ecmwf/anemoi-datasets@${{ github.event.pull_request.head.sha || github.sha }}
|
|
40
53
|
secrets: inherit
|
|
@@ -20,6 +20,12 @@ repos:
|
|
|
20
20
|
- id: no-commit-to-branch # Prevent committing to main / master
|
|
21
21
|
- id: check-added-large-files # Check for large files added to git
|
|
22
22
|
- id: check-merge-conflict # Check for files that contain merge conflict
|
|
23
|
+
- repo: https://github.com/pre-commit/pygrep-hooks
|
|
24
|
+
rev: v1.10.0 # Use the ref you want to point at
|
|
25
|
+
hooks:
|
|
26
|
+
- id: python-use-type-annotations # Check for missing type annotations
|
|
27
|
+
- id: python-check-blanket-noqa # Check for # noqa: all
|
|
28
|
+
- id: python-no-log-warn # Check for log.warn
|
|
23
29
|
- repo: https://github.com/psf/black-pre-commit-mirror
|
|
24
30
|
rev: 24.8.0
|
|
25
31
|
hooks:
|
|
@@ -37,15 +43,15 @@ repos:
|
|
|
37
43
|
rev: v0.6.4
|
|
38
44
|
hooks:
|
|
39
45
|
- id: ruff
|
|
40
|
-
# Next line
|
|
41
|
-
exclude: '
|
|
46
|
+
# Next line if for documenation cod snippets
|
|
47
|
+
exclude: '.*/[^_].*_\.py$'
|
|
42
48
|
args:
|
|
43
49
|
- --line-length=120
|
|
44
50
|
- --fix
|
|
45
51
|
- --exit-non-zero-on-fix
|
|
46
52
|
- --preview
|
|
47
53
|
- repo: https://github.com/sphinx-contrib/sphinx-lint
|
|
48
|
-
rev:
|
|
54
|
+
rev: v1.0.0
|
|
49
55
|
hooks:
|
|
50
56
|
- id: sphinx-lint
|
|
51
57
|
# For now, we use it. But it does not support a lot of sphinx features
|
|
@@ -59,12 +65,10 @@ repos:
|
|
|
59
65
|
hooks:
|
|
60
66
|
- id: docconvert
|
|
61
67
|
args: ["numpy"]
|
|
62
|
-
- repo: https://github.com/b8raoult/optional-dependencies-all
|
|
63
|
-
rev: "0.0.6"
|
|
64
|
-
hooks:
|
|
65
|
-
- id: optional-dependencies-all
|
|
66
|
-
args: ["--inplace", "--exclude-keys=dev,docs,tests", "--group=dev=all,docs,tests"]
|
|
67
68
|
- repo: https://github.com/tox-dev/pyproject-fmt
|
|
68
69
|
rev: "2.2.3"
|
|
69
70
|
hooks:
|
|
70
71
|
- id: pyproject-fmt
|
|
72
|
+
|
|
73
|
+
ci:
|
|
74
|
+
autoupdate_schedule: monthly
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
Please add your functional changes to the appropriate section in the PR.
|
|
9
|
+
Keep it human-readable, your future self will thank you!
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
## [Unreleased](https://github.com/ecmwf/anemoi-datasets/compare/0.5.4...HEAD)
|
|
13
|
+
|
|
14
|
+
## [Add support for (semi-)constant fields](https://github.com/ecmwf/anemoi-datasets/compare/0.5.1...0.5.2) - 2024-10-03
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
|
|
18
|
+
- Fix failing zarr lat/lon tests
|
|
19
|
+
|
|
20
|
+
## [Bug fixes](https://github.com/ecmwf/anemoi-datasets/compare/0.5.0...0.5.1) - 2024-10-01
|
|
21
|
+
|
|
22
|
+
### Added
|
|
23
|
+
|
|
24
|
+
- Adding the user recipe in the dataset PR #59.
|
|
25
|
+
- Add `repeated_dates` action in create.
|
|
26
|
+
|
|
27
|
+
### Changed
|
|
28
|
+
|
|
29
|
+
- Bug fix in create/rename
|
|
30
|
+
|
|
31
|
+
## [0.5.0 - Incremental builds and Rescaling](https://github.com/ecmwf/anemoi-datasets/compare/0.4.5...0.5.0) - 2024-09-25
|
|
32
|
+
|
|
33
|
+
### Added
|
|
34
|
+
|
|
35
|
+
- New `rescale` keyword in `open_dataset` to change units of variables #36
|
|
36
|
+
- Add support for constant fields when creating datasets
|
|
37
|
+
- Simplify imports
|
|
38
|
+
|
|
39
|
+
### Changed
|
|
40
|
+
|
|
41
|
+
- Added incremental building of datasets
|
|
42
|
+
- Add missing dependency for documentation building
|
|
43
|
+
- Fix failing test due to previous merge
|
|
44
|
+
- Bug fix when creating dataset from zarr
|
|
45
|
+
- Bug fix with area selection in cutout operation
|
|
46
|
+
- add paths-ignore to ci workflow
|
|
47
|
+
|
|
48
|
+
### Removed
|
|
49
|
+
|
|
50
|
+
- pytest for notebooks
|
|
51
|
+
|
|
52
|
+
## [0.4.5](https://github.com/ecmwf/anemoi-datasets/compare/0.4.4...0.4.5)
|
|
53
|
+
|
|
54
|
+
### Added
|
|
55
|
+
|
|
56
|
+
- New `interpolate_frequency` keyword in `open_dataset`
|
|
57
|
+
- CI workflow to update the changelog on release
|
|
58
|
+
- adds the reusable cd pypi workflow
|
|
59
|
+
- merge strategy for changelog in .gitattributes #25
|
|
60
|
+
- adds ci hpc config (#43)
|
|
61
|
+
|
|
62
|
+
### Changed
|
|
63
|
+
|
|
64
|
+
- update CI to reusable workflows for PRs and releases
|
|
65
|
+
- Support sub-hourly datasets.
|
|
66
|
+
- Change negative variance detection to make it less restrictive
|
|
67
|
+
- Fix cutout bug that left some global grid points in the lam part
|
|
68
|
+
- Fix bug in computing missing dates in cutout option
|
|
69
|
+
|
|
70
|
+
### Removed
|
|
71
|
+
|
|
72
|
+
## [0.4.4](https://github.com/ecmwf/anemoi-datasets/compare/0.4.0...0.4.4) Bug fixes
|
|
73
|
+
|
|
74
|
+
- Bug fix in accumulations() that did not work with webmars
|
|
75
|
+
- Bug fix when using hindcasts input (missing dates on leap years)
|
|
76
|
+
|
|
77
|
+
## [0.4.0](https://github.com/ecmwf/anemoi-datasets/compare/0.3.0...0.4.0) Minor Release
|
|
78
|
+
|
|
79
|
+
### Added
|
|
80
|
+
|
|
81
|
+
- earthkit-data replaces climetlab
|
|
82
|
+
|
|
83
|
+
### Removed
|
|
84
|
+
|
|
85
|
+
- climetlab
|
|
86
|
+
|
|
87
|
+
## [0.3.0](https://github.com/ecmwf/anemoi-datasets/compare/0.2.0...0.3.0) Minor Release
|
|
88
|
+
|
|
89
|
+
### Added
|
|
90
|
+
|
|
91
|
+
- hindcast source
|
|
92
|
+
|
|
93
|
+
### Changed
|
|
94
|
+
|
|
95
|
+
- updated documentation
|
|
96
|
+
|
|
97
|
+
## [0.2.0](https://github.com/ecmwf/anemoi-datasets/compare/0.1.0...0.2.0) Minor Release
|
|
98
|
+
|
|
99
|
+
### Added
|
|
100
|
+
|
|
101
|
+
- statistics tendencies
|
|
102
|
+
|
|
103
|
+
### Removed
|
|
104
|
+
|
|
105
|
+
- CubesFilter
|
|
106
|
+
|
|
107
|
+
## [0.1.0](https://github.com/ecmwf/anemoi-models/releases/tag/0.1.0) Initial Release
|
|
108
|
+
|
|
109
|
+
### Added
|
|
110
|
+
|
|
111
|
+
- Documentation
|
|
112
|
+
- Initial code release for anemoi-datasets: create datasets for data-driven weather-models
|
|
113
|
+
- open datasets
|
|
114
|
+
- combine datasets
|
|
115
|
+
|
|
116
|
+
## Git Diffs:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: anemoi-datasets
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.5.5
|
|
4
4
|
Summary: A package to hold various functions to support training of ML models on ECMWF data.
|
|
5
5
|
Author-email: "European Centre for Medium-Range Weather Forecasts (ECMWF)" <software.support@ecmwf.int>
|
|
6
6
|
License: Apache License
|
|
@@ -224,38 +224,36 @@ Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
|
224
224
|
Requires-Python: >=3.9
|
|
225
225
|
License-File: LICENSE
|
|
226
226
|
Requires-Dist: anemoi-utils[provenance]>=0.3.15
|
|
227
|
+
Requires-Dist: cfunits
|
|
227
228
|
Requires-Dist: numpy
|
|
228
229
|
Requires-Dist: pyyaml
|
|
229
230
|
Requires-Dist: semantic-version
|
|
230
231
|
Requires-Dist: tqdm
|
|
231
|
-
Requires-Dist: zarr
|
|
232
|
+
Requires-Dist: zarr<=2.17
|
|
232
233
|
Provides-Extra: all
|
|
233
|
-
Requires-Dist: aiohttp; extra == "all"
|
|
234
234
|
Requires-Dist: boto3; extra == "all"
|
|
235
235
|
Requires-Dist: earthkit-data[mars]>=0.9; extra == "all"
|
|
236
236
|
Requires-Dist: earthkit-geo>=0.2; extra == "all"
|
|
237
237
|
Requires-Dist: earthkit-meteo; extra == "all"
|
|
238
|
-
Requires-Dist:
|
|
238
|
+
Requires-Dist: ecmwflibs>=0.6.3; extra == "all"
|
|
239
239
|
Requires-Dist: entrypoints; extra == "all"
|
|
240
240
|
Requires-Dist: gcsfs; extra == "all"
|
|
241
241
|
Requires-Dist: kerchunk; extra == "all"
|
|
242
242
|
Requires-Dist: pyproj; extra == "all"
|
|
243
243
|
Requires-Dist: requests; extra == "all"
|
|
244
|
-
Requires-Dist: s3fs; extra == "all"
|
|
245
244
|
Provides-Extra: create
|
|
246
245
|
Requires-Dist: earthkit-data[mars]>=0.9; extra == "create"
|
|
247
246
|
Requires-Dist: earthkit-geo>=0.2; extra == "create"
|
|
248
247
|
Requires-Dist: earthkit-meteo; extra == "create"
|
|
249
|
-
Requires-Dist:
|
|
248
|
+
Requires-Dist: ecmwflibs>=0.6.3; extra == "create"
|
|
250
249
|
Requires-Dist: entrypoints; extra == "create"
|
|
251
250
|
Requires-Dist: pyproj; extra == "create"
|
|
252
251
|
Provides-Extra: dev
|
|
253
|
-
Requires-Dist: aiohttp; extra == "dev"
|
|
254
252
|
Requires-Dist: boto3; extra == "dev"
|
|
255
253
|
Requires-Dist: earthkit-data[mars]>=0.9; extra == "dev"
|
|
256
254
|
Requires-Dist: earthkit-geo>=0.2; extra == "dev"
|
|
257
255
|
Requires-Dist: earthkit-meteo; extra == "dev"
|
|
258
|
-
Requires-Dist:
|
|
256
|
+
Requires-Dist: ecmwflibs>=0.6.3; extra == "dev"
|
|
259
257
|
Requires-Dist: entrypoints; extra == "dev"
|
|
260
258
|
Requires-Dist: gcsfs; extra == "dev"
|
|
261
259
|
Requires-Dist: kerchunk; extra == "dev"
|
|
@@ -264,26 +262,19 @@ Requires-Dist: pandoc; extra == "dev"
|
|
|
264
262
|
Requires-Dist: pyproj; extra == "dev"
|
|
265
263
|
Requires-Dist: pytest; extra == "dev"
|
|
266
264
|
Requires-Dist: requests; extra == "dev"
|
|
267
|
-
Requires-Dist: rstfmt; extra == "dev"
|
|
268
|
-
Requires-Dist: s3fs; extra == "dev"
|
|
269
265
|
Requires-Dist: sphinx; extra == "dev"
|
|
270
|
-
Requires-Dist: sphinx-argparse<0.5; extra == "dev"
|
|
271
266
|
Requires-Dist: sphinx-rtd-theme; extra == "dev"
|
|
272
267
|
Provides-Extra: docs
|
|
273
268
|
Requires-Dist: nbsphinx; extra == "docs"
|
|
274
269
|
Requires-Dist: pandoc; extra == "docs"
|
|
275
|
-
Requires-Dist: rstfmt; extra == "docs"
|
|
276
270
|
Requires-Dist: sphinx; extra == "docs"
|
|
277
|
-
Requires-Dist: sphinx-argparse
|
|
271
|
+
Requires-Dist: sphinx-argparse; extra == "docs"
|
|
278
272
|
Requires-Dist: sphinx-rtd-theme; extra == "docs"
|
|
279
|
-
Provides-Extra: kerchunk
|
|
280
|
-
Requires-Dist: gcsfs; extra == "kerchunk"
|
|
281
|
-
Requires-Dist: kerchunk; extra == "kerchunk"
|
|
282
|
-
Requires-Dist: s3fs; extra == "kerchunk"
|
|
283
273
|
Provides-Extra: remote
|
|
284
|
-
Requires-Dist: aiohttp; extra == "remote"
|
|
285
274
|
Requires-Dist: boto3; extra == "remote"
|
|
286
275
|
Requires-Dist: requests; extra == "remote"
|
|
287
|
-
Requires-Dist: s3fs; extra == "remote"
|
|
288
276
|
Provides-Extra: tests
|
|
289
277
|
Requires-Dist: pytest; extra == "tests"
|
|
278
|
+
Provides-Extra: xarray
|
|
279
|
+
Requires-Dist: gcsfs; extra == "xarray"
|
|
280
|
+
Requires-Dist: kerchunk; extra == "xarray"
|
|
@@ -86,8 +86,8 @@ To add statistics for 6h increments:
|
|
|
86
86
|
|
|
87
87
|
.. code:: bash
|
|
88
88
|
|
|
89
|
-
anemoi-datasets init-additions dataset.zarr --delta 6h
|
|
90
|
-
anemoi-datasets load-additions dataset.zarr --part 1/2 --delta 6h
|
|
89
|
+
anemoi-datasets init-additions dataset.zarr --delta 6h
|
|
90
|
+
anemoi-datasets load-additions dataset.zarr --part 1/2 --delta 6h
|
|
91
91
|
anemoi-datasets load-additions dataset.zarr --part 2/2 --delta 6h
|
|
92
92
|
anemoi-datasets finalise-additions dataset.zarr --delta 6h
|
|
93
93
|
|
|
@@ -96,7 +96,7 @@ To add statistics for 12h increments:
|
|
|
96
96
|
.. code:: bash
|
|
97
97
|
|
|
98
98
|
anemoi-datasets init-additions dataset.zarr --delta 12h
|
|
99
|
-
anemoi-datasets load-additions dataset.zarr --part 1/2 --delta 12h
|
|
99
|
+
anemoi-datasets load-additions dataset.zarr --part 1/2 --delta 12h
|
|
100
100
|
anemoi-datasets load-additions dataset.zarr --part 2/2 --delta 12h
|
|
101
101
|
anemoi-datasets finalise-additions dataset.zarr --delta 12h
|
|
102
102
|
|
|
@@ -54,12 +54,12 @@ accumulation between step 1h and step 7h if it is the most appropriate
|
|
|
54
54
|
data available, while in the second case, the source will always return
|
|
55
55
|
the accumulation between step 0h and step 6h, if available.
|
|
56
56
|
|
|
57
|
-
.. literalinclude:: accumulations1.yaml
|
|
57
|
+
.. literalinclude:: yaml/accumulations1.yaml
|
|
58
58
|
:language: yaml
|
|
59
59
|
|
|
60
60
|
or:
|
|
61
61
|
|
|
62
|
-
.. literalinclude:: accumulations2.yaml
|
|
62
|
+
.. literalinclude:: yaml/accumulations2.yaml
|
|
63
63
|
:language: yaml
|
|
64
64
|
|
|
65
65
|
.. [1]
|
|
@@ -11,7 +11,7 @@ Because the source needs to generate fields on the same grids as the
|
|
|
11
11
|
other, it requires a template field. This is provided in the recipe with
|
|
12
12
|
the ``template`` keyword:
|
|
13
13
|
|
|
14
|
-
.. literalinclude:: forcings.yaml
|
|
14
|
+
.. literalinclude:: yaml/forcings.yaml
|
|
15
15
|
:language: yaml
|
|
16
16
|
|
|
17
17
|
.. _yaml-reference:
|
|
@@ -13,13 +13,13 @@ specification`_, with the exception of the ``date``, ``time``` and
|
|
|
13
13
|
The missing keys will be filled with the default values, as defined in
|
|
14
14
|
the MARS language specification.
|
|
15
15
|
|
|
16
|
-
.. literalinclude:: mars1.yaml
|
|
16
|
+
.. literalinclude:: yaml/mars1.yaml
|
|
17
17
|
:language: yaml
|
|
18
18
|
|
|
19
19
|
Data from several levels types must be requested in separate requests,
|
|
20
20
|
with the ``join`` command.
|
|
21
21
|
|
|
22
|
-
.. literalinclude:: mars2.yaml
|
|
22
|
+
.. literalinclude:: yaml/mars2.yaml
|
|
23
23
|
:language: yaml
|
|
24
24
|
|
|
25
25
|
See :ref:`naming-variables` for information on how to name the variables
|
|
@@ -19,7 +19,7 @@ formula:
|
|
|
19
19
|
|
|
20
20
|
Additionally, some variables must be non-negative to have a physical
|
|
21
21
|
meaning (e.g. accumulated variables or `specific humidity`). To ensure
|
|
22
|
-
this, positive clipping is performed using the alternative
|
|
22
|
+
this, positive clipping is performed using the alternative formula:
|
|
23
23
|
|
|
24
24
|
.. math::
|
|
25
25
|
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
################
|
|
2
|
+
repeated_dates
|
|
3
|
+
################
|
|
4
|
+
|
|
5
|
+
The generale format of the `repeated_dates` source is:
|
|
6
|
+
|
|
7
|
+
.. literalinclude:: yaml/repeated_dates1.yaml
|
|
8
|
+
:language: yaml
|
|
9
|
+
|
|
10
|
+
**********
|
|
11
|
+
constant
|
|
12
|
+
**********
|
|
13
|
+
|
|
14
|
+
.. literalinclude:: yaml/repeated_dates2.yaml
|
|
15
|
+
:language: yaml
|
|
16
|
+
|
|
17
|
+
*************
|
|
18
|
+
climatology
|
|
19
|
+
*************
|
|
20
|
+
|
|
21
|
+
.. literalinclude:: yaml/repeated_dates3.yaml
|
|
22
|
+
:language: yaml
|
|
23
|
+
|
|
24
|
+
*********
|
|
25
|
+
closest
|
|
26
|
+
*********
|
|
27
|
+
|
|
28
|
+
.. literalinclude:: yaml/repeated_dates4.yaml
|
|
29
|
+
:language: yaml
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
.. _index-page:
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
Welcome to
|
|
5
|
-
|
|
3
|
+
#############################################
|
|
4
|
+
Welcome to `anemoi-datasets` documentation!
|
|
5
|
+
#############################################
|
|
6
6
|
|
|
7
7
|
.. warning::
|
|
8
8
|
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Scale and offset can be passed as a dictionnary...
|
|
2
|
+
|
|
3
|
+
ds = open_dataset(
|
|
4
|
+
dataset,
|
|
5
|
+
rescale={"2t": {"scale": 1.0, "offset": -273.15}},
|
|
6
|
+
)
|
|
7
|
+
|
|
8
|
+
# ... a tuple of floating points ....
|
|
9
|
+
|
|
10
|
+
ds = open_dataset(
|
|
11
|
+
dataset,
|
|
12
|
+
rescale={"2t": (1.0, -273.15)},
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
# ... or a tuple of strings representing units.
|
|
16
|
+
|
|
17
|
+
ds = open_dataset(
|
|
18
|
+
dataset,
|
|
19
|
+
rescale={"2t": ("K", "degC")},
|
|
20
|
+
)
|
|
21
|
+
|
|
22
|
+
# Several variables can be rescaled at once.
|
|
23
|
+
|
|
24
|
+
ds = open_dataset(
|
|
25
|
+
dataset,
|
|
26
|
+
rescale={
|
|
27
|
+
"2t": ("K", "degC"),
|
|
28
|
+
"tp": ("m", "mm"),
|
|
29
|
+
},
|
|
30
|
+
)
|