eo-tides 0.6.1.dev6__tar.gz → 0.6.2.dev8__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.
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/.github/workflows/on-release-main.yml +6 -3
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/PKG-INFO +1 -1
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/eo_tides/model.py +55 -15
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/pyproject.toml +1 -1
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/tests/test_utils.py +10 -13
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/tests/testing.ipynb +39 -4
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/.editorconfig +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/.github/actions/setup-python-env/action.yml +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/.github/workflows/check-links.yml +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/.github/workflows/main.yml +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/.github/workflows/paper.yml +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/.gitignore +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/.pre-commit-config.yaml +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/CITATION.cff +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/CONTRIBUTING.md +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/Dockerfile +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/LICENSE +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/Makefile +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/README.md +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/codecov.yaml +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/api.md +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/dtu23_download.jpg +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/eo-tides-abstract.gif +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/eo-tides-logo-128.png +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/eo-tides-logo-256.png +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/eo-tides-logo.gif +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/eo-tides-logo.png +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/eot20_download.jpg +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/fes_ftp.jpg +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/fes_myproducts.jpg +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/fes_productselection.jpg +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/fes_subscriptions.jpg +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/got_download.jpg +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/tide_models_clipped.jpg +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/assets/tpxo_download.jpg +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/changelog.md +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/credits.md +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/index.md +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/install.md +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/migration.md +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/notebooks/Case_study_intertidal.ipynb +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/notebooks/Model_tides.ipynb +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/notebooks/Satellite_data.ipynb +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/notebooks/Tide_statistics.ipynb +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/notebooks/Validating_tides.ipynb +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/setup.md +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/docs/stylesheets/extra.css +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/eo_tides/__init__.py +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/eo_tides/eo.py +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/eo_tides/stats.py +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/eo_tides/utils.py +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/eo_tides/validation.py +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/mkdocs.yml +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/paper/benchmarking.ipynb +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/paper/figures/joss_abstract.png +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/paper/figures/joss_fig_gesla.png +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/paper/figures/joss_fig_list.png +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/paper/figures/joss_fig_pixel.png +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/paper/figures/joss_fig_stats.png +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/paper/paper.bib +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/paper/paper.md +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/paper/paper.pdf +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/tests/conftest.py +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/tests/data/GESLA3_ALL 2.csv +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/tests/data/IDO71013_2020.csv +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/tests/data/broome-62650-aus-bom +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/tests/data/san_diego_ca-569a-usa-uhslc +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/tests/data/sydney_fort_denison-60370-aus-bom +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/tests/data/tide_models.tar.gz +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/tests/test_eo.py +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/tests/test_model.py +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/tests/test_stats.py +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/tests/test_validation.py +0 -0
- {eo_tides-0.6.1.dev6 → eo_tides-0.6.2.dev8}/uv.lock +0 -0
@@ -12,7 +12,7 @@ jobs:
|
|
12
12
|
steps:
|
13
13
|
- uses: actions/checkout@v4
|
14
14
|
with:
|
15
|
-
fetch-depth: 0
|
15
|
+
fetch-depth: 0 # Need full history for tags
|
16
16
|
|
17
17
|
- name: Export tag
|
18
18
|
id: vars
|
@@ -27,12 +27,15 @@ jobs:
|
|
27
27
|
RELEASE_VERSION: ${{ steps.vars.outputs.tag }}
|
28
28
|
if: ${{ github.event_name == 'release' }}
|
29
29
|
|
30
|
-
# For merges to main,
|
30
|
+
# For merges to main, incremement patch version by one
|
31
|
+
# and use ".devN" suffix based on commits since tag
|
31
32
|
- name: Set dev version
|
32
33
|
run: |
|
33
34
|
LATEST_TAG=$(git describe --tags --abbrev=0)
|
35
|
+
IFS='.' read -r MAJOR MINOR PATCH <<< "$LATEST_TAG"
|
36
|
+
PATCH=$((PATCH + 1))
|
34
37
|
DEV_NUM=$(git rev-list $LATEST_TAG..HEAD --count)
|
35
|
-
DEV_VERSION="$
|
38
|
+
DEV_VERSION="$MAJOR.$MINOR.$PATCH.dev$DEV_NUM"
|
36
39
|
sed -i "s/^version = \".*\"/version = \"$DEV_VERSION\"/" pyproject.toml
|
37
40
|
if: ${{ github.event_name == 'push' }}
|
38
41
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: eo-tides
|
3
|
-
Version: 0.6.
|
3
|
+
Version: 0.6.2.dev8
|
4
4
|
Summary: Tide modelling tools for large-scale satellite earth observation analysis
|
5
5
|
Project-URL: Homepage, https://GeoscienceAustralia.github.io/eo-tides/
|
6
6
|
Project-URL: Repository, https://github.com/GeoscienceAustralia/eo-tides
|
@@ -3,6 +3,7 @@ from __future__ import annotations
|
|
3
3
|
|
4
4
|
import os
|
5
5
|
import textwrap
|
6
|
+
import warnings
|
6
7
|
from concurrent.futures import ProcessPoolExecutor
|
7
8
|
from concurrent.futures.process import BrokenProcessPool
|
8
9
|
from functools import partial
|
@@ -83,6 +84,7 @@ def _model_tides(
|
|
83
84
|
cutoff,
|
84
85
|
crop,
|
85
86
|
crop_buffer,
|
87
|
+
append_node,
|
86
88
|
):
|
87
89
|
"""Worker function applied in parallel by `model_tides`. Handles the
|
88
90
|
extraction of tide modelling constituents and tide modelling using
|
@@ -104,12 +106,12 @@ def _model_tides(
|
|
104
106
|
lon,
|
105
107
|
lat,
|
106
108
|
type=pytmd_model.type,
|
107
|
-
crop=crop,
|
109
|
+
crop=True if crop == "auto" else crop,
|
108
110
|
buffer=crop_buffer,
|
109
111
|
method=method,
|
110
112
|
extrapolate=extrapolate,
|
111
113
|
cutoff=cutoff,
|
112
|
-
append_node=
|
114
|
+
append_node=append_node,
|
113
115
|
)
|
114
116
|
|
115
117
|
# TODO: Return constituents
|
@@ -117,16 +119,45 @@ def _model_tides(
|
|
117
119
|
# print(amp.shape, ph.shape, c)
|
118
120
|
# print(pd.DataFrame({"amplitude": amp}))
|
119
121
|
|
120
|
-
|
122
|
+
except ValueError:
|
123
|
+
# If on-the-fly cropping is auto, try again with crop turned off
|
124
|
+
if crop == "auto":
|
125
|
+
warnings.warn(
|
126
|
+
"On-the-fly cropping is not compatible with the provided "
|
127
|
+
"clipped model files; running with `crop=False`."
|
128
|
+
)
|
129
|
+
|
130
|
+
# Read tidal constants and interpolate to grid points
|
131
|
+
amp, ph, c = pytmd_model.extract_constants(
|
132
|
+
lon,
|
133
|
+
lat,
|
134
|
+
type=pytmd_model.type,
|
135
|
+
crop=False,
|
136
|
+
buffer=crop_buffer,
|
137
|
+
method=method,
|
138
|
+
extrapolate=extrapolate,
|
139
|
+
cutoff=cutoff,
|
140
|
+
append_node=append_node,
|
141
|
+
)
|
142
|
+
|
143
|
+
# Otherwise, raise error if cropping if set to True
|
144
|
+
else:
|
145
|
+
error_msg = (
|
146
|
+
"On-the-fly cropping (e.g. `crop=True`) is not compatible with your "
|
147
|
+
"provided clipped model files. Please set `crop=False` or `crop='auto'`, "
|
148
|
+
"or run your analysis on unclipped global model files to avoid this error."
|
149
|
+
)
|
150
|
+
raise Exception(error_msg) from None
|
151
|
+
|
152
|
+
# Raise error if constituent files do not cover analysis extent
|
121
153
|
except IndexError:
|
122
|
-
error_msg =
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
raise Exception(textwrap.dedent(error_msg).strip()) from None
|
154
|
+
error_msg = (
|
155
|
+
f"The {model} tide model constituent files do not cover the analysis extent "
|
156
|
+
f"({min(lon):.2f}, {max(lon):.2f}, {min(lat):.2f}, {max(lat):.2f}). "
|
157
|
+
"This can occur if you are using clipped model files to improve run times. "
|
158
|
+
"Consider using model files that cover your entire analysis area."
|
159
|
+
)
|
160
|
+
raise Exception(error_msg) from None
|
130
161
|
|
131
162
|
# Calculate complex phase in radians for Euler's
|
132
163
|
cph = -1j * ph * np.pi / 180.0
|
@@ -397,8 +428,9 @@ def model_tides(
|
|
397
428
|
method: str = "linear",
|
398
429
|
extrapolate: bool = True,
|
399
430
|
cutoff: float | None = None,
|
400
|
-
crop: bool =
|
431
|
+
crop: bool | str = "auto",
|
401
432
|
crop_buffer: float | None = 5,
|
433
|
+
append_node: bool = False,
|
402
434
|
parallel: bool = True,
|
403
435
|
parallel_splits: int | str = "auto",
|
404
436
|
parallel_max: int | None = None,
|
@@ -503,15 +535,22 @@ def model_tides(
|
|
503
535
|
Extrapolation cutoff in kilometers. The default is None, which
|
504
536
|
will extrapolate for all points regardless of distance from the
|
505
537
|
valid tide modelling domain.
|
506
|
-
crop : bool, optional
|
538
|
+
crop : bool or str, optional
|
507
539
|
Whether to crop tide model constituent files on-the-fly to
|
508
|
-
improve performance. Defaults to
|
509
|
-
|
540
|
+
improve performance. Defaults to "auto", which will attempt to
|
541
|
+
apply on-the-fly cropping where possible (some clipped model
|
542
|
+
files restricted entirely to the western hemisphere are not
|
543
|
+
suitable for on-the-fly cropping). Set `crop_buffer` to
|
544
|
+
customise the buffer distance used to crop the files.
|
510
545
|
crop_buffer : int or float, optional
|
511
546
|
The buffer distance in degrees used to crop tide model
|
512
547
|
constituent files around the modelling area. Defaults to 5,
|
513
548
|
which will crop constituents using a five degree buffer on
|
514
549
|
either side of the analysis extent.
|
550
|
+
append_node: bool, optional
|
551
|
+
Apply adjustments to harmonic constituents to allow for periodic
|
552
|
+
modulations over the 18.6-year nodal period (lunar nodal tide).
|
553
|
+
Default is False.
|
515
554
|
parallel : bool, optional
|
516
555
|
Whether to parallelise tide modelling. If multiple tide models
|
517
556
|
are requested, these will be run in parallel. If enough workers
|
@@ -600,6 +639,7 @@ def model_tides(
|
|
600
639
|
cutoff=np.inf if cutoff is None else cutoff,
|
601
640
|
crop=crop,
|
602
641
|
crop_buffer=crop_buffer,
|
642
|
+
append_node=append_node,
|
603
643
|
)
|
604
644
|
|
605
645
|
# If automatic parallel splits, calculate optimal value
|
@@ -72,7 +72,7 @@ def test_clip_models():
|
|
72
72
|
|
73
73
|
# Set modelling location
|
74
74
|
x, y = 122.28, -18.06
|
75
|
-
time = pd.date_range(start="2000-01", end="2001-
|
75
|
+
time = pd.date_range(start="2000-01", end="2001-02", freq="5h")
|
76
76
|
|
77
77
|
# Model using unclipped vs clipped files
|
78
78
|
df_unclipped = model_tides(
|
@@ -81,7 +81,7 @@ def test_clip_models():
|
|
81
81
|
time=time,
|
82
82
|
model="HAMTIDE11",
|
83
83
|
directory=in_dir,
|
84
|
-
crop=False,
|
84
|
+
# crop=False,
|
85
85
|
)
|
86
86
|
df_clipped = model_tides(
|
87
87
|
x=x,
|
@@ -89,7 +89,6 @@ def test_clip_models():
|
|
89
89
|
time=time,
|
90
90
|
model="HAMTIDE11",
|
91
91
|
directory=out_dir,
|
92
|
-
crop=False,
|
93
92
|
)
|
94
93
|
|
95
94
|
# Verify both produce the same results
|
@@ -98,15 +97,15 @@ def test_clip_models():
|
|
98
97
|
|
99
98
|
# Test clipping across multiple global locations using synthetic HAMTIDE11 data
|
100
99
|
@pytest.mark.parametrize(
|
101
|
-
"bbox, name",
|
100
|
+
"bbox, point, name",
|
102
101
|
[
|
103
|
-
((-166, 14, -151, 29), "hawaii"), # entirely W of prime meridian
|
104
|
-
((-13, 49, 6, 60), "uk"), # crossing prime meridian
|
105
|
-
((105
|
106
|
-
((-
|
102
|
+
((-166, 14, -151, 29), (19.60, -155.46), "hawaii"), # entirely W of prime meridian
|
103
|
+
((-13, 49, 6, 60), (51.47, 0.84), "uk"), # crossing prime meridian
|
104
|
+
((105, -48, 160, -5), (-25.59, 153.03), "aus"), # entirely E of prime meridian
|
105
|
+
((-257, 7, -120, 63), (19.59, -155.45), "pacific"), # crossing antimeridian
|
107
106
|
],
|
108
107
|
)
|
109
|
-
def test_clip_models_bbox(bbox, name):
|
108
|
+
def test_clip_models_bbox(bbox, point, name):
|
110
109
|
# Set input and output paths
|
111
110
|
in_dir = "tests/data/tide_models_synthetic/"
|
112
111
|
out_dir = f"tests/data/tide_models_synthetic_{name}/"
|
@@ -121,8 +120,8 @@ def test_clip_models_bbox(bbox, name):
|
|
121
120
|
)
|
122
121
|
|
123
122
|
# Set modelling location based on bbox centroid
|
124
|
-
|
125
|
-
time = pd.date_range(start="2000-01", end="2001-
|
123
|
+
y, x = point
|
124
|
+
time = pd.date_range(start="2000-01", end="2001-02", freq="5h")
|
126
125
|
|
127
126
|
# Model using unclipped vs clipped files
|
128
127
|
df_unclipped = model_tides(
|
@@ -131,7 +130,6 @@ def test_clip_models_bbox(bbox, name):
|
|
131
130
|
time=time,
|
132
131
|
model="HAMTIDE11",
|
133
132
|
directory=in_dir,
|
134
|
-
crop=False,
|
135
133
|
)
|
136
134
|
df_clipped = model_tides(
|
137
135
|
x=x,
|
@@ -139,7 +137,6 @@ def test_clip_models_bbox(bbox, name):
|
|
139
137
|
time=time,
|
140
138
|
model="HAMTIDE11",
|
141
139
|
directory=out_dir,
|
142
|
-
crop=False,
|
143
140
|
)
|
144
141
|
|
145
142
|
# Verify both produce the same results
|
@@ -175,7 +175,7 @@
|
|
175
175
|
},
|
176
176
|
{
|
177
177
|
"cell_type": "code",
|
178
|
-
"execution_count":
|
178
|
+
"execution_count": 2,
|
179
179
|
"metadata": {},
|
180
180
|
"outputs": [
|
181
181
|
{
|
@@ -235,11 +235,46 @@
|
|
235
235
|
},
|
236
236
|
{
|
237
237
|
"cell_type": "code",
|
238
|
-
"execution_count":
|
238
|
+
"execution_count": 3,
|
239
239
|
"metadata": {},
|
240
|
-
"outputs": [
|
240
|
+
"outputs": [
|
241
|
+
{
|
242
|
+
"name": "stdout",
|
243
|
+
"output_type": "stream",
|
244
|
+
"text": [
|
245
|
+
"\u001b[1m============================= test session starts ==============================\u001b[0m\n",
|
246
|
+
"platform linux -- Python 3.10.15, pytest-8.3.3, pluggy-1.5.0 -- /env/bin/python3.10\n",
|
247
|
+
"cachedir: .pytest_cache\n",
|
248
|
+
"rootdir: /home/jovyan/Robbi/eo-tides\n",
|
249
|
+
"configfile: pyproject.toml\n",
|
250
|
+
"plugins: anyio-4.6.2.post1, nbval-0.11.0\n",
|
251
|
+
"collected 25 items / 20 deselected / 5 selected \u001b[0m\u001b[1m\n",
|
252
|
+
"\n",
|
253
|
+
"tests/test_utils.py::test_clip_models \u001b[32mPASSED\u001b[0m\u001b[33m [ 20%]\u001b[0m\n",
|
254
|
+
"tests/test_utils.py::test_clip_models_bbox[bbox0-point0-hawaii] \u001b[32mPASSED\u001b[0m\u001b[33m [ 40%]\u001b[0m\n",
|
255
|
+
"tests/test_utils.py::test_clip_models_bbox[bbox1-point1-uk] \u001b[32mPASSED\u001b[0m\u001b[33m [ 60%]\u001b[0m\n",
|
256
|
+
"tests/test_utils.py::test_clip_models_bbox[bbox2-point2-aus] \u001b[32mPASSED\u001b[0m\u001b[33m [ 80%]\u001b[0m\n",
|
257
|
+
"tests/test_utils.py::test_clip_models_bbox[bbox3-point3-pacific] \u001b[32mPASSED\u001b[0m\u001b[33m [100%]\u001b[0m\n",
|
258
|
+
"\n",
|
259
|
+
"\u001b[33m=============================== warnings summary ===============================\u001b[0m\n",
|
260
|
+
"<frozen importlib._bootstrap>:241\n",
|
261
|
+
" <frozen importlib._bootstrap>:241: RuntimeWarning: numpy.ndarray size changed, may indicate binary incompatibility. Expected 16 from C header, got 96 from PyObject\n",
|
262
|
+
"\n",
|
263
|
+
"tests/test_utils.py: 20 warnings\n",
|
264
|
+
" /env/lib/python3.10/site-packages/pyproj/transformer.py:817: DeprecationWarning: Conversion of an array with ndim > 0 to a scalar is deprecated, and will error in future. Ensure you extract a single element from your array before performing this operation. (Deprecated NumPy 1.25.)\n",
|
265
|
+
" return self._transformer._transform_point(\n",
|
266
|
+
"\n",
|
267
|
+
"tests/test_utils.py::test_clip_models_bbox[bbox0-point0-hawaii]\n",
|
268
|
+
" /home/jovyan/Robbi/eo-tides/eo_tides/model.py:127: UserWarning: On-the-fly cropping is not compatible with the provided clipped model files; running with `crop=False`.\n",
|
269
|
+
" warnings.warn(\"On-the-fly cropping is not compatible with the provided \"\n",
|
270
|
+
"\n",
|
271
|
+
"-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html\n",
|
272
|
+
"\u001b[33m================ \u001b[32m5 passed\u001b[0m, \u001b[33m\u001b[1m20 deselected\u001b[0m, \u001b[33m\u001b[1m22 warnings\u001b[0m\u001b[33m in 16.32s\u001b[0m\u001b[33m ================\u001b[0m\n"
|
273
|
+
]
|
274
|
+
}
|
275
|
+
],
|
241
276
|
"source": [
|
242
|
-
"!export EO_TIDES_TIDE_MODELS=./tests/data/tide_models && pytest tests/test_utils.py --verbose -k
|
277
|
+
"!export EO_TIDES_TIDE_MODELS=./tests/data/tide_models && pytest tests/test_utils.py --verbose -k test_clip_models"
|
243
278
|
]
|
244
279
|
},
|
245
280
|
{
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|