roms-tools 0.1.0__tar.gz → 1.0.0__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 (74) hide show
  1. {roms_tools-0.1.0 → roms_tools-1.0.0}/.github/workflows/sphinx.yaml +6 -5
  2. roms_tools-1.0.0/.github/workflows/tests.yaml +57 -0
  3. {roms_tools-0.1.0 → roms_tools-1.0.0}/PKG-INFO +8 -3
  4. {roms_tools-0.1.0 → roms_tools-1.0.0}/README.md +6 -2
  5. {roms_tools-0.1.0 → roms_tools-1.0.0}/ci/environment.yml +2 -0
  6. roms_tools-1.0.0/coverage.toml +5 -0
  7. roms_tools-1.0.0/docs/api.rst +53 -0
  8. roms_tools-1.0.0/docs/boundary_forcing.ipynb +23106 -0
  9. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/grid.ipynb +1124 -362
  10. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/index.rst +5 -2
  11. roms_tools-1.0.0/docs/initial_conditions.ipynb +12042 -0
  12. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/methods.rst +13 -2
  13. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/references.bib +19 -2
  14. roms_tools-1.0.0/docs/surface_forcing.ipynb +10576 -0
  15. roms_tools-1.0.0/docs/tides.ipynb +2668 -0
  16. roms_tools-1.0.0/docs/vertical_coordinate.ipynb +2688 -0
  17. {roms_tools-0.1.0 → roms_tools-1.0.0}/pyproject.toml +1 -0
  18. {roms_tools-0.1.0 → roms_tools-1.0.0}/roms_tools/__init__.py +4 -2
  19. {roms_tools-0.1.0 → roms_tools-1.0.0}/roms_tools/_version.py +1 -1
  20. roms_tools-1.0.0/roms_tools/setup/boundary_forcing.py +757 -0
  21. roms_tools-1.0.0/roms_tools/setup/datasets.py +1154 -0
  22. roms_tools-1.0.0/roms_tools/setup/download.py +118 -0
  23. {roms_tools-0.1.0 → roms_tools-1.0.0}/roms_tools/setup/fill.py +118 -5
  24. {roms_tools-0.1.0 → roms_tools-1.0.0}/roms_tools/setup/grid.py +145 -19
  25. roms_tools-1.0.0/roms_tools/setup/initial_conditions.py +557 -0
  26. roms_tools-1.0.0/roms_tools/setup/mixins.py +395 -0
  27. roms_tools-1.0.0/roms_tools/setup/plot.py +203 -0
  28. roms_tools-1.0.0/roms_tools/setup/surface_forcing.py +596 -0
  29. roms_tools-1.0.0/roms_tools/setup/tides.py +711 -0
  30. {roms_tools-0.1.0 → roms_tools-1.0.0}/roms_tools/setup/topography.py +18 -3
  31. roms_tools-1.0.0/roms_tools/setup/utils.py +352 -0
  32. roms_tools-1.0.0/roms_tools/setup/vertical_coordinate.py +494 -0
  33. roms_tools-1.0.0/roms_tools/tests/test_boundary_forcing.py +706 -0
  34. roms_tools-1.0.0/roms_tools/tests/test_datasets.py +370 -0
  35. roms_tools-1.0.0/roms_tools/tests/test_grid.py +226 -0
  36. roms_tools-1.0.0/roms_tools/tests/test_initial_conditions.py +520 -0
  37. roms_tools-1.0.0/roms_tools/tests/test_surface_forcing.py +2622 -0
  38. roms_tools-1.0.0/roms_tools/tests/test_tides.py +365 -0
  39. roms_tools-1.0.0/roms_tools/tests/test_topography.py +78 -0
  40. roms_tools-1.0.0/roms_tools/tests/test_utils.py +16 -0
  41. roms_tools-1.0.0/roms_tools/tests/test_vertical_coordinate.py +337 -0
  42. {roms_tools-0.1.0 → roms_tools-1.0.0}/roms_tools.egg-info/PKG-INFO +8 -3
  43. {roms_tools-0.1.0 → roms_tools-1.0.0}/roms_tools.egg-info/SOURCES.txt +21 -3
  44. {roms_tools-0.1.0 → roms_tools-1.0.0}/roms_tools.egg-info/requires.txt +1 -0
  45. roms_tools-0.1.0/.github/workflows/tests.yaml +0 -46
  46. roms_tools-0.1.0/docs/api.rst +0 -30
  47. roms_tools-0.1.0/docs/atmospheric_forcing.ipynb +0 -6698
  48. roms_tools-0.1.0/docs/tides.ipynb +0 -1485
  49. roms_tools-0.1.0/roms_tools/setup/atmospheric_forcing.py +0 -993
  50. roms_tools-0.1.0/roms_tools/setup/datasets.py +0 -48
  51. roms_tools-0.1.0/roms_tools/setup/plot.py +0 -58
  52. roms_tools-0.1.0/roms_tools/setup/tides.py +0 -676
  53. roms_tools-0.1.0/roms_tools/tests/test_setup.py +0 -181
  54. {roms_tools-0.1.0 → roms_tools-1.0.0}/.github/workflows/pre-commit.yaml +0 -0
  55. {roms_tools-0.1.0 → roms_tools-1.0.0}/.github/workflows/pypipublish.yaml +0 -0
  56. {roms_tools-0.1.0 → roms_tools-1.0.0}/.gitignore +0 -0
  57. {roms_tools-0.1.0 → roms_tools-1.0.0}/.pre-commit-config.yaml +0 -0
  58. {roms_tools-0.1.0 → roms_tools-1.0.0}/.readthedocs.yaml +0 -0
  59. {roms_tools-0.1.0 → roms_tools-1.0.0}/LICENSE +0 -0
  60. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/Makefile +0 -0
  61. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/_templates/autosummary/class.rst +0 -0
  62. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/conf.py +0 -0
  63. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/images/Step1.png +0 -0
  64. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/images/Step2.png +0 -0
  65. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/images/Step3.png +0 -0
  66. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/images/Step4.png +0 -0
  67. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/installation.rst +0 -0
  68. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/make.bat +0 -0
  69. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/references.rst +0 -0
  70. {roms_tools-0.1.0 → roms_tools-1.0.0}/docs/support.rst +0 -0
  71. {roms_tools-0.1.0 → roms_tools-1.0.0}/roms_tools/setup/__init__.py +0 -0
  72. {roms_tools-0.1.0 → roms_tools-1.0.0}/roms_tools.egg-info/dependency_links.txt +0 -0
  73. {roms_tools-0.1.0 → roms_tools-1.0.0}/roms_tools.egg-info/top_level.txt +0 -0
  74. {roms_tools-0.1.0 → roms_tools-1.0.0}/setup.cfg +0 -0
@@ -8,22 +8,23 @@ on:
8
8
  jobs:
9
9
  docs:
10
10
  runs-on: ubuntu-latest
11
- defaults:
12
- run:
13
- shell: bash -l {0}
14
11
  steps:
15
12
  - uses: actions/checkout@v4
16
13
  - name: Create conda environment
17
- uses: mamba-org/provision-with-micromamba@main
14
+ uses: mamba-org/setup-micromamba@v1
18
15
  with:
19
16
  cache-downloads: true
17
+ cache-environment: true
20
18
  micromamba-version: 'latest'
21
19
  environment-file: ci/environment.yml
22
- extra-specs: |
20
+ create-args: |
23
21
  python=${{ matrix.python-version }}
24
22
  - name: Install roms-tools
23
+ shell: micromamba-shell {0}
25
24
  run: |
25
+ python - V
26
26
  python -m pip install -e . --no-deps --force-reinstall
27
27
  - name: Build Docs
28
+ shell: bash -l {0}
28
29
  run: |
29
30
  cd docs ; make fresh; make html
@@ -0,0 +1,57 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ pull_request:
8
+ branches:
9
+ - main
10
+
11
+ jobs:
12
+
13
+ test:
14
+ name: ${{ matrix.python-version }}-build
15
+ runs-on: ubuntu-latest
16
+ strategy:
17
+ matrix:
18
+ python-version: ["3.10", "3.11", "3.12"]
19
+ steps:
20
+ - uses: actions/checkout@v4
21
+
22
+ - name: Create conda environment
23
+ uses: mamba-org/setup-micromamba@v1
24
+ with:
25
+ cache-downloads: true
26
+ cache-environment: true
27
+ micromamba-version: 'latest'
28
+ environment-file: ci/environment.yml
29
+ create-args: |
30
+ python=${{ matrix.python-version }}
31
+
32
+ - name: Conda info
33
+ run: conda info
34
+
35
+ - name: Install roms-tools
36
+ shell: micromamba-shell {0}
37
+ run: |
38
+ python - V
39
+ python -m pip install -e . --no-deps --force-reinstall
40
+
41
+ - name: Running Tests
42
+ shell: bash -l {0}
43
+ run: |
44
+ python -V
45
+ coverage run --rcfile=coverage.toml -m pytest --verbose roms_tools/tests/test_datasets.py roms_tools/tests/test_grid.py roms_tools/tests/test_topography.py roms_tools/tests/test_tides.py roms_tools/tests/test_surface_forcing.py roms_tools/tests/test_initial_conditions.py roms_tools/tests/test_vertical_coordinate.py roms_tools/tests/test_boundary_forcing.py roms_tools/tests/test_utils.py
46
+
47
+ - name: Get coverage report
48
+ shell: bash -l {0}
49
+ run: |
50
+ coverage report -m ; coverage xml
51
+
52
+ - name: Upload coverage reports to Codecov
53
+ uses: codecov/codecov-action@v4.0.1
54
+ with:
55
+ token: ${{ secrets.CODECOV_TOKEN }}
56
+ files: ./coverage.xml
57
+ flags: unittests # optional
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: roms-tools
3
- Version: 0.1.0
3
+ Version: 1.0.0
4
4
  Summary: Tools for running and analysing UCLA-ROMS simulations
5
5
  Author-email: Nora Loose <nora.loose@gmail.com>, Thomas Nicholas <tom@cworthy.org>
6
6
  License: Apache-2
@@ -19,6 +19,7 @@ Requires-Python: >=3.10
19
19
  Description-Content-Type: text/markdown
20
20
  License-File: LICENSE
21
21
  Requires-Dist: xarray>=2022.6.0
22
+ Requires-Dist: xarray-datatree
22
23
  Requires-Dist: numpy
23
24
  Requires-Dist: netcdf4
24
25
  Requires-Dist: pooch
@@ -31,8 +32,12 @@ Requires-Dist: numba
31
32
 
32
33
  # ROMS-Tools
33
34
 
34
- [![Documentation Status](https://readthedocs.org/projects/roms-tools/badge/?version=latest)](https://roms-tools.readthedocs.io/en/latest/?badge=latest)
35
35
  [![PyPI version](https://badge.fury.io/py/roms-tools.svg)](https://badge.fury.io/py/roms-tools)
36
+ [![codecov](https://codecov.io/gh/CWorthy-ocean/roms-tools/graph/badge.svg?token=5S1oNu39xE)](https://codecov.io/gh/CWorthy-ocean/roms-tools)
37
+ [![Documentation Status](https://readthedocs.org/projects/roms-tools/badge/?version=latest)](https://roms-tools.readthedocs.io/en/latest/?badge=latest)
38
+ ![Run Tests](https://github.com/CWorthy-ocean/roms-tools/actions/workflows/tests.yaml/badge.svg)
39
+ ![Supported Python Versions](https://img.shields.io/pypi/pyversions/roms-tools)
40
+
36
41
 
37
42
  ## Overview
38
43
 
@@ -59,7 +64,7 @@ pip install -e .
59
64
 
60
65
  ### Run the tests
61
66
 
62
- Before running the tests you can install and activate the following conda environment:
67
+ Before running the tests, you can install and activate the following conda environment:
63
68
 
64
69
  ```bash
65
70
  cd roms-tools
@@ -1,7 +1,11 @@
1
1
  # ROMS-Tools
2
2
 
3
- [![Documentation Status](https://readthedocs.org/projects/roms-tools/badge/?version=latest)](https://roms-tools.readthedocs.io/en/latest/?badge=latest)
4
3
  [![PyPI version](https://badge.fury.io/py/roms-tools.svg)](https://badge.fury.io/py/roms-tools)
4
+ [![codecov](https://codecov.io/gh/CWorthy-ocean/roms-tools/graph/badge.svg?token=5S1oNu39xE)](https://codecov.io/gh/CWorthy-ocean/roms-tools)
5
+ [![Documentation Status](https://readthedocs.org/projects/roms-tools/badge/?version=latest)](https://roms-tools.readthedocs.io/en/latest/?badge=latest)
6
+ ![Run Tests](https://github.com/CWorthy-ocean/roms-tools/actions/workflows/tests.yaml/badge.svg)
7
+ ![Supported Python Versions](https://img.shields.io/pypi/pyversions/roms-tools)
8
+
5
9
 
6
10
  ## Overview
7
11
 
@@ -28,7 +32,7 @@ pip install -e .
28
32
 
29
33
  ### Run the tests
30
34
 
31
- Before running the tests you can install and activate the following conda environment:
35
+ Before running the tests, you can install and activate the following conda environment:
32
36
 
33
37
  ```bash
34
38
  cd roms-tools
@@ -9,6 +9,7 @@ dependencies:
9
9
  - matplotlib
10
10
  - cartopy
11
11
  - xarray
12
+ - xarray-datatree
12
13
  - netcdf4
13
14
  - pooch
14
15
  - packaging
@@ -19,6 +20,7 @@ dependencies:
19
20
  - flake8
20
21
  - black
21
22
  - pre-commit
23
+ - coverage
22
24
  # docs
23
25
  - sphinx
24
26
  - nbsphinx
@@ -0,0 +1,5 @@
1
+ [tool.coverage.run]
2
+ omit = [
3
+ "roms_tools/tests/*",
4
+ "**/__init__.py",
5
+ ]
@@ -0,0 +1,53 @@
1
+ API Reference
2
+ #############
3
+
4
+
5
+ Grid
6
+ ------------------------
7
+
8
+ .. autosummary::
9
+ :toctree: generated/
10
+
11
+ roms_tools.Grid
12
+
13
+ Vertical Coordinate
14
+ ------------------------
15
+
16
+ .. autosummary::
17
+ :toctree: generated/
18
+
19
+ roms_tools.VerticalCoordinate
20
+
21
+ Tidal Forcing
22
+ ------------------
23
+
24
+ .. autosummary::
25
+ :toctree: generated/
26
+
27
+ roms_tools.TidalForcing
28
+
29
+ Surface Forcing
30
+ ----------------
31
+
32
+ .. autosummary::
33
+ :toctree: generated/
34
+
35
+ roms_tools.SurfaceForcing
36
+
37
+ Initial Conditions
38
+ --------------------
39
+
40
+ .. autosummary::
41
+ :toctree: generated/
42
+
43
+ roms_tools.InitialConditions
44
+
45
+ Boundary Forcing
46
+ --------------------
47
+
48
+ .. autosummary::
49
+ :toctree: generated/
50
+
51
+ roms_tools.BoundaryForcing
52
+
53
+ =======