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.
Files changed (348) hide show
  1. anemoi_datasets-0.5.5/.github/CODEOWNERS +6 -0
  2. anemoi_datasets-0.5.5/.github/ISSUE_TEMPLATE/bug_report.md +40 -0
  3. anemoi_datasets-0.5.5/.github/ci-hpc-config.yml +18 -0
  4. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/changelog-pr-update.yml +3 -0
  5. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/changelog-release-update.yml +1 -0
  6. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/ci.yml +15 -2
  7. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/python-publish.yml +2 -0
  8. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/python-pull-request.yml +1 -1
  9. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.gitignore +2 -0
  10. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.pre-commit-config.yaml +12 -8
  11. anemoi_datasets-0.5.5/CHANGELOG.md +116 -0
  12. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/PKG-INFO +10 -19
  13. anemoi_datasets-0.5.5/docs/building/filters/rename.rst +6 -0
  14. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/incremental.rst +3 -3
  15. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/accumulations.rst +2 -2
  16. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/forcings.rst +1 -1
  17. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/mars.rst +2 -2
  18. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/netcdf.rst +1 -1
  19. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/opendap.rst +1 -1
  20. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/recentre.rst +1 -1
  21. anemoi_datasets-0.5.5/docs/building/sources/repeated_dates.rst +29 -0
  22. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/xarray-zarr.rst +1 -1
  23. anemoi_datasets-0.5.5/docs/building/sources/yaml/hindcasts.yaml +3 -0
  24. anemoi_datasets-0.5.5/docs/building/sources/yaml/repeated_dates1.yaml +6 -0
  25. anemoi_datasets-0.5.5/docs/building/sources/yaml/repeated_dates2.yaml +6 -0
  26. anemoi_datasets-0.5.5/docs/building/sources/yaml/repeated_dates3.yaml +8 -0
  27. anemoi_datasets-0.5.5/docs/building/sources/yaml/repeated_dates4.yaml +9 -0
  28. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/zenodo.rst +1 -1
  29. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources.rst +1 -0
  30. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/index.rst +3 -3
  31. anemoi_datasets-0.5.5/docs/using/code/rescale_.py +30 -0
  32. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/selecting.rst +25 -0
  33. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/pyproject.toml +14 -20
  34. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/_version.py +2 -2
  35. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/create.py +3 -2
  36. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/inspect.py +1 -1
  37. anemoi_datasets-0.5.5/src/anemoi/datasets/commands/publish.py +30 -0
  38. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/__init__.py +72 -35
  39. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/check.py +6 -0
  40. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/config.py +4 -3
  41. anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/pressure_level_relative_humidity_to_specific_humidity.py +57 -0
  42. anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/pressure_level_specific_humidity_to_relative_humidity.py +57 -0
  43. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/filters/rename.py +2 -3
  44. anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/single_level_dewpoint_to_relative_humidity.py +54 -0
  45. anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/single_level_relative_humidity_to_dewpoint.py +59 -0
  46. anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/single_level_relative_humidity_to_specific_humidity.py +115 -0
  47. anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/single_level_specific_humidity_to_relative_humidity.py +390 -0
  48. anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/speeddir_to_uv.py +77 -0
  49. anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/filters/uv_to_speeddir.py +55 -0
  50. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/__init__.py +7 -1
  51. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/accumulations.py +2 -0
  52. anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/sources/grib.py +144 -0
  53. anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/sources/hindcasts.py +61 -0
  54. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/mars.py +9 -3
  55. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/__init__.py +6 -1
  56. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/coordinates.py +6 -1
  57. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/field.py +20 -5
  58. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/fieldlist.py +16 -16
  59. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/flavour.py +126 -12
  60. anemoi_datasets-0.5.5/src/anemoi/datasets/create/functions/sources/xarray/grid.py +135 -0
  61. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/metadata.py +6 -12
  62. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/time.py +1 -5
  63. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray/variable.py +10 -10
  64. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/__init__.py +69 -0
  65. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/action.py +123 -0
  66. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/concat.py +92 -0
  67. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/context.py +59 -0
  68. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/data_sources.py +71 -0
  69. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/empty.py +42 -0
  70. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/filter.py +76 -0
  71. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/function.py +122 -0
  72. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/join.py +57 -0
  73. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/misc.py +85 -0
  74. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/pipe.py +33 -0
  75. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/repeated_dates.py +217 -0
  76. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/result.py +413 -0
  77. anemoi_datasets-0.5.5/src/anemoi/datasets/create/input/step.py +99 -0
  78. {anemoi_datasets-0.4.5/src/anemoi/datasets/create → anemoi_datasets-0.5.5/src/anemoi/datasets/create/input}/template.py +0 -42
  79. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/persistent.py +1 -1
  80. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/statistics/__init__.py +1 -1
  81. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/utils.py +3 -0
  82. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/zarr.py +4 -2
  83. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/dataset.py +11 -1
  84. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/debug.py +5 -1
  85. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/masked.py +2 -2
  86. anemoi_datasets-0.5.5/src/anemoi/datasets/data/rescale.py +147 -0
  87. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/stores.py +20 -7
  88. anemoi_datasets-0.5.5/src/anemoi/datasets/dates/__init__.py +243 -0
  89. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/dates/groups.py +92 -19
  90. anemoi_datasets-0.5.5/src/anemoi/datasets/fields.py +66 -0
  91. anemoi_datasets-0.5.5/src/anemoi/datasets/utils/fields.py +47 -0
  92. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi_datasets.egg-info/PKG-INFO +10 -19
  93. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi_datasets.egg-info/SOURCES.txt +48 -14
  94. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi_datasets.egg-info/requires.txt +10 -19
  95. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/test_create.py +7 -2
  96. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/xarray/test_netcdf.py +2 -0
  97. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/xarray/test_opendap.py +2 -0
  98. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/xarray/test_zarr.py +56 -9
  99. anemoi_datasets-0.4.5/CHANGELOG.md +0 -80
  100. anemoi_datasets-0.4.5/docs/building/filters/rename.rst +0 -3
  101. anemoi_datasets-0.4.5/docs/building/sources/yaml/hindcasts.yaml +0 -2
  102. anemoi_datasets-0.4.5/src/anemoi/datasets/create/functions/sources/grib.py +0 -59
  103. anemoi_datasets-0.4.5/src/anemoi/datasets/create/functions/sources/hindcasts.py +0 -120
  104. anemoi_datasets-0.4.5/src/anemoi/datasets/create/functions/sources/xarray/grid.py +0 -46
  105. anemoi_datasets-0.4.5/src/anemoi/datasets/create/input.py +0 -1065
  106. anemoi_datasets-0.4.5/src/anemoi/datasets/dates/__init__.py +0 -160
  107. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.gitattributes +0 -0
  108. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/ci-config.yml +0 -0
  109. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/label-public-pr.yml +0 -0
  110. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.github/workflows/readthedocs-pr-update.yml +0 -0
  111. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.readthedocs.yaml +0 -0
  112. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/.vscode/spellright.dict +0 -0
  113. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/LICENSE +0 -0
  114. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/README.md +0 -0
  115. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/Makefile +0 -0
  116. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/_static/logo.png +0 -0
  117. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/_static/style.css +0 -0
  118. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/_templates/.gitkeep +0 -0
  119. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/apply-fmt.sh +0 -0
  120. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/advanced-options.rst +0 -0
  121. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/filters/empty.rst +0 -0
  122. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/filters/noop.rst +0 -0
  123. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/filters/rotate_winds.rst +0 -0
  124. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/filters/select.rst +0 -0
  125. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/filters/unrotate_winds.rst +0 -0
  126. /anemoi_datasets-0.4.5/docs/building/sources/hindcasts.yaml → /anemoi_datasets-0.5.5/docs/building/filters/yaml/rename.yaml +0 -0
  127. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/filters.rst +0 -0
  128. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/handling-missing-dates.rst +0 -0
  129. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/handling-missing-values.rst +0 -0
  130. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/introduction.rst +0 -0
  131. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/naming-variables.rst +0 -0
  132. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/operations.rst +0 -0
  133. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/grib.rst +0 -0
  134. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/hindcasts.rst +0 -0
  135. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/xarray-kerchunk.py +0 -0
  136. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/xarray-kerchunk.rst +0 -0
  137. {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/accumulations1.yaml +0 -0
  138. {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/accumulations2.yaml +0 -0
  139. {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/forcings.yaml +0 -0
  140. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/yaml/grib1.yaml +0 -0
  141. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/yaml/grib2.yaml +0 -0
  142. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/yaml/grib3.yaml +0 -0
  143. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/yaml/grib4.yaml +0 -0
  144. {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/mars1.yaml +0 -0
  145. {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/mars2.yaml +0 -0
  146. {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/netcdf.yaml +0 -0
  147. {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/opendap.yaml +0 -0
  148. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/sources/yaml/recentre.yaml +0 -0
  149. {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/xarray-kerchunk.yaml +0 -0
  150. {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/xarray-zarr.yaml +0 -0
  151. {anemoi_datasets-0.4.5/docs/building/sources → anemoi_datasets-0.5.5/docs/building/sources/yaml}/zenodo.yaml +0 -0
  152. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/statistics.rst +0 -0
  153. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/syntax.yaml +0 -0
  154. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/Makefile +0 -0
  155. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/building1.txt +0 -0
  156. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/building1.yaml +0 -0
  157. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/building2.txt +0 -0
  158. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/building2.yaml +0 -0
  159. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/building3.txt +0 -0
  160. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/building3.yaml +0 -0
  161. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/concat.yaml +0 -0
  162. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/hindcasts.yaml +0 -0
  163. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/input.yaml +0 -0
  164. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/missing_dates.yaml +0 -0
  165. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/nan.yaml +0 -0
  166. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/building/yaml/pipe.yaml +0 -0
  167. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/check-index.sh +0 -0
  168. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/cli/compare.rst +0 -0
  169. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/cli/copy.rst +0 -0
  170. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/cli/create.rst +0 -0
  171. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/cli/inspect.rst +0 -0
  172. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/cli/introduction.rst +0 -0
  173. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/cli/scan.rst +0 -0
  174. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/conf.py +0 -0
  175. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/images.pptx +0 -0
  176. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/installing.rst +0 -0
  177. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/overview.rst +0 -0
  178. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/overview_.py +0 -0
  179. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/schemas/matrix.excalidraw +0 -0
  180. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/schemas/matrix.png +0 -0
  181. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/schemas/overview.excalidraw +0 -0
  182. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/schemas/overview.png +0 -0
  183. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/schemas/recipe.excalidraw +0 -0
  184. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/schemas/recipe.png +0 -0
  185. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/area1_.py +0 -0
  186. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/area2_.py +0 -0
  187. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/chain_.py +0 -0
  188. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/combine_example.py +0 -0
  189. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/concat1.py +0 -0
  190. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/cutout_.py +0 -0
  191. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/drop_.py +0 -0
  192. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/end_.py +0 -0
  193. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/ensembles1_.py +0 -0
  194. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/fill_missing_gaps_.py +0 -0
  195. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/frequency1_.py +0 -0
  196. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/frequency2_.py +0 -0
  197. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/grids1_.py +0 -0
  198. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/iterating_missing_dates1_.py +0 -0
  199. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/iterating_missing_dates2_.py +0 -0
  200. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/iterating_missing_dates3_.py +0 -0
  201. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/join1.py +0 -0
  202. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/matching0_.py +0 -0
  203. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/matching1_.py +0 -0
  204. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/matching2_.py +0 -0
  205. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/matching3_.py +0 -0
  206. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/matching4_.py +0 -0
  207. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/misc1.py +0 -0
  208. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/misc2.py +0 -0
  209. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/missing_.py +0 -0
  210. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/missing_dates_.py +0 -0
  211. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_cloud.py +0 -0
  212. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_combine1_.py +0 -0
  213. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_combine2_.py +0 -0
  214. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_complex.py +0 -0
  215. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_dict_.py +0 -0
  216. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_first_.py +0 -0
  217. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_list_.py +0 -0
  218. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_name.py +0 -0
  219. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_other.py +0 -0
  220. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_path.py +0 -0
  221. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/open_yaml_.py +0 -0
  222. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/rename_.py +0 -0
  223. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/reorder1_.py +0 -0
  224. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/reorder2_.py +0 -0
  225. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/select1_.py +0 -0
  226. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/select2_.py +0 -0
  227. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/shuffle_.py +0 -0
  228. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/some_attributes_.py +0 -0
  229. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/start_.py +0 -0
  230. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/statistics_.py +0 -0
  231. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/subset_example.py +0 -0
  232. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/thinning_.py +0 -0
  233. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/xy1_.py +0 -0
  234. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/xy2_.py +0 -0
  235. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/zip1_.py +0 -0
  236. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/zip2_.py +0 -0
  237. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/code/zip_xy_.py +0 -0
  238. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/combining.rst +0 -0
  239. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/configuration.rst +0 -0
  240. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/configuration.toml +0 -0
  241. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/grids.rst +0 -0
  242. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/area-1.png +0 -0
  243. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/concat.png +0 -0
  244. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/cutout-1.png +0 -0
  245. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/cutout-2.png +0 -0
  246. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/cutout-3.png +0 -0
  247. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/cutout-4.png +0 -0
  248. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/cutout-5.png +0 -0
  249. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/cutout-6.png +0 -0
  250. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/join.png +0 -0
  251. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/overlay.png +0 -0
  252. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/skip-missing.png +0 -0
  253. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/thinning-after.png +0 -0
  254. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/images/thinning-before.png +0 -0
  255. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/introduction.rst +0 -0
  256. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/matching.rst +0 -0
  257. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/methods.rst +0 -0
  258. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/miscellaneous.rst +0 -0
  259. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/missing.rst +0 -0
  260. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/opening.rst +0 -0
  261. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/other.rst +0 -0
  262. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/statistics.rst +0 -0
  263. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/subsetting.rst +0 -0
  264. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/docs/using/zip.rst +0 -0
  265. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/setup.cfg +0 -0
  266. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/__init__.py +0 -0
  267. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/__main__.py +0 -0
  268. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/__init__.py +0 -0
  269. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/cleanup.py +0 -0
  270. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/compare.py +0 -0
  271. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/copy.py +0 -0
  272. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/finalise-additions.py +0 -0
  273. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/finalise.py +0 -0
  274. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/init-additions.py +0 -0
  275. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/init.py +0 -0
  276. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/load-additions.py +0 -0
  277. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/load.py +0 -0
  278. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/patch.py +0 -0
  279. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/commands/scan.py +0 -0
  280. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/compute/__init__.py +0 -0
  281. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/compute/recentre.py +0 -0
  282. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/chunks.py +0 -0
  283. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/__init__.py +0 -0
  284. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/filters/__init__.py +0 -0
  285. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/filters/empty.py +0 -0
  286. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/filters/noop.py +0 -0
  287. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/filters/rotate_winds.py +0 -0
  288. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/filters/unrotate_winds.py +0 -0
  289. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/constants.py +0 -0
  290. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/empty.py +0 -0
  291. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/forcings.py +0 -0
  292. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/netcdf.py +0 -0
  293. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/opendap.py +0 -0
  294. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/recentre.py +0 -0
  295. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/source.py +0 -0
  296. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/tendencies.py +0 -0
  297. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray_kerchunk.py +0 -0
  298. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/xarray_zarr.py +0 -0
  299. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/functions/sources/zenodo.py +0 -0
  300. {anemoi_datasets-0.4.5/src/anemoi/datasets/create → anemoi_datasets-0.5.5/src/anemoi/datasets/create/input}/trace.py +0 -0
  301. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/patch.py +0 -0
  302. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/size.py +0 -0
  303. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/statistics/summary.py +0 -0
  304. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/create/writer.py +0 -0
  305. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/__init__.py +0 -0
  306. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/concat.py +0 -0
  307. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/debug.css +0 -0
  308. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/ensemble.py +0 -0
  309. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/forwards.py +0 -0
  310. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/grids.py +0 -0
  311. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/indexing.py +0 -0
  312. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/interpolate.py +0 -0
  313. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/join.py +0 -0
  314. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/misc.py +0 -0
  315. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/missing.py +0 -0
  316. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/select.py +0 -0
  317. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/statistics.py +0 -0
  318. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/subset.py +0 -0
  319. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/unchecked.py +0 -0
  320. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/data/xy.py +0 -0
  321. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/grids.py +0 -0
  322. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi/datasets/utils/__init__.py +0 -0
  323. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi_datasets.egg-info/dependency_links.txt +0 -0
  324. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi_datasets.egg-info/entry_points.txt +0 -0
  325. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/src/anemoi_datasets.egg-info/top_level.txt +0 -0
  326. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/concat.yaml +0 -0
  327. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/data_sources.yaml +0 -0
  328. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/join.yaml +0 -0
  329. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/missing.yaml +0 -0
  330. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/nan.yaml +0 -0
  331. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/pipe.yaml +0 -0
  332. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/recentre.yaml +0 -0
  333. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create/run.sh +0 -0
  334. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create-perturbations-full.yaml +0 -0
  335. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/create-shift.yaml +0 -0
  336. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/test_chunks.py +0 -0
  337. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/test_data.py +0 -0
  338. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/test_dates.py +0 -0
  339. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/test_indexing.py +0 -0
  340. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tests/xarray/test_kerchunk.py +0 -0
  341. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/.gitignore +0 -0
  342. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/examples/Makefile +0 -0
  343. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/examples/an-oper-2023-2023-2p5-6h-v1.yaml +0 -0
  344. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/grids/Makefile +0 -0
  345. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/grids/grids.ipynb +0 -0
  346. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/grids/grids1.yaml +0 -0
  347. {anemoi_datasets-0.4.5 → anemoi_datasets-0.5.5}/tools/grids/grids2.yaml +0 -0
  348. {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
@@ -5,6 +5,9 @@ on:
5
5
  branches:
6
6
  - main
7
7
  - develop
8
+ paths-ignore:
9
+ - .pre-commit-config.yaml
10
+ - .readthedocs.yaml
8
11
  jobs:
9
12
  Check-Changelog:
10
13
  name: Check Changelog Action
@@ -4,6 +4,7 @@ name: "Update Changelog"
4
4
  on:
5
5
  release:
6
6
  types: [released]
7
+ workflow_dispatch: ~
7
8
 
8
9
  permissions:
9
10
  pull-requests: write
@@ -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
@@ -15,6 +15,8 @@ jobs:
15
15
 
16
16
  checks:
17
17
  uses: ecmwf-actions/reusable-workflows/.github/workflows/qa-pytest-pyproject.yml@v2
18
+ with:
19
+ python-version: "3.9"
18
20
 
19
21
  deploy:
20
22
  needs: [checks, quality]
@@ -5,7 +5,7 @@ name: Code Quality checks for PRs
5
5
 
6
6
  on:
7
7
  push:
8
- pull_request_target:
8
+ pull_request:
9
9
  types: [opened, synchronize, reopened]
10
10
 
11
11
  jobs:
@@ -120,6 +120,7 @@ celerybeat.pid
120
120
  *.sage.py
121
121
 
122
122
  # Environments
123
+ .envrc
123
124
  .env
124
125
  .venv
125
126
  env/
@@ -193,3 +194,4 @@ _dev/
193
194
  test.ipynb
194
195
  *tmp_data/
195
196
  tempCodeRunnerFile.python
197
+ Untitled-*.py
@@ -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 is to exclude for documentation code snippets
41
- exclude: 'docs/(.*/)?[a-z]\w+_.py$'
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: v0.9.1
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.4.5
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: eccodes>=2.37; extra == "all"
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: eccodes>=2.37; extra == "create"
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: eccodes>=2.37; extra == "dev"
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<0.5; extra == "docs"
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"
@@ -0,0 +1,6 @@
1
+ ########
2
+ rename
3
+ ########
4
+
5
+ .. literalinclude:: yaml/rename.yaml
6
+ :language: yaml
@@ -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 anemoi-datasets
90
- anemoi-datasets load-additions dataset.zarr --part 1/2 --delta 6h anemoi-datasets
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 anemoi-datasets
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
@@ -2,5 +2,5 @@
2
2
  netcdf
3
3
  ########
4
4
 
5
- .. literalinclude:: netcdf.yaml
5
+ .. literalinclude:: yaml/netcdf.yaml
6
6
  :language: yaml
@@ -2,5 +2,5 @@
2
2
  opendap
3
3
  #########
4
4
 
5
- .. literalinclude:: opendap.yaml
5
+ .. literalinclude:: yaml/opendap.yaml
6
6
  :language: yaml
@@ -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 fomula :
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
@@ -2,5 +2,5 @@
2
2
  xarray-zarr
3
3
  #############
4
4
 
5
- .. literalinclude:: xarray-zarr.yaml
5
+ .. literalinclude:: yaml/xarray-zarr.yaml
6
6
  :language: yaml
@@ -0,0 +1,3 @@
1
+ ---
2
+ input:
3
+ hincasts:
@@ -0,0 +1,6 @@
1
+
2
+ repeated_dates:
3
+ mode: mode
4
+ # ... parameters related to the mode ...
5
+ source:
6
+ # ... a source definition ...
@@ -0,0 +1,6 @@
1
+ repeated_dates:
2
+ mode: constant
3
+ source:
4
+ xarray-zarr:
5
+ url: dem.zarr
6
+ variable: dem
@@ -0,0 +1,8 @@
1
+ repeated_dates:
2
+ mode: climatology
3
+ year: 2019
4
+ day: 15
5
+ source:
6
+ grib:
7
+ path: some/path/to/data.grib
8
+ param: [some_param]
@@ -0,0 +1,9 @@
1
+ repeated_dates:
2
+ mode: closest
3
+ frequency: 24h
4
+ maximum: 30d
5
+ skip_all_nans: true
6
+ source:
7
+ grib:
8
+ path: path/to/data.grib
9
+ param: [some_param]
@@ -4,5 +4,5 @@
4
4
 
5
5
  https://zenodo.org/records/6470725
6
6
 
7
- .. literalinclude:: zenodo.yaml
7
+ .. literalinclude:: yaml/zenodo.yaml
8
8
  :language: yaml
@@ -28,6 +28,7 @@ The following `sources` are currently available:
28
28
  sources/netcdf
29
29
  sources/opendap
30
30
  sources/recentre
31
+ sources/repeated_dates
31
32
  sources/xarray-kerchunk
32
33
  sources/xarray-zarr
33
34
  sources/zenodo
@@ -1,8 +1,8 @@
1
1
  .. _index-page:
2
2
 
3
- ####################################
4
- Welcome to Anemoi's documentation!
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
+ )