water-column-sonar-processing 25.3.1__tar.gz → 25.8.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.

Potentially problematic release.


This version of water-column-sonar-processing might be problematic. Click here for more details.

Files changed (68) hide show
  1. water_column_sonar_processing-25.3.1/LICENSE → water_column_sonar_processing-25.8.0/LICENSE-MIT +1 -1
  2. water_column_sonar_processing-25.8.0/PKG-INFO +162 -0
  3. water_column_sonar_processing-25.8.0/README.md +106 -0
  4. water_column_sonar_processing-25.8.0/pyproject.toml +90 -0
  5. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/aws/dynamodb_manager.py +6 -6
  6. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/aws/s3_manager.py +95 -90
  7. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/aws/s3fs_manager.py +5 -3
  8. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/aws/sqs_manager.py +1 -1
  9. water_column_sonar_processing-25.8.0/water_column_sonar_processing/cruise/__init__.py +5 -0
  10. water_column_sonar_processing-25.8.0/water_column_sonar_processing/cruise/create_empty_zarr_store.py +199 -0
  11. water_column_sonar_processing-25.3.1/water_column_sonar_processing/cruise/create_empty_zarr_store.py → water_column_sonar_processing-25.8.0/water_column_sonar_processing/cruise/create_empty_zarr_store_level_3.py +11 -43
  12. water_column_sonar_processing-25.8.0/water_column_sonar_processing/cruise/datatree_manager.py +21 -0
  13. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/cruise/resample_regrid.py +57 -47
  14. water_column_sonar_processing-25.8.0/water_column_sonar_processing/dataset/__init__.py +3 -0
  15. water_column_sonar_processing-25.8.0/water_column_sonar_processing/dataset/dataset_manager.py +205 -0
  16. water_column_sonar_processing-25.8.0/water_column_sonar_processing/dataset/feature_manager.py +32 -0
  17. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/geometry/geometry_manager.py +11 -12
  18. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/geometry/line_simplification.py +26 -1
  19. water_column_sonar_processing-25.8.0/water_column_sonar_processing/geometry/pmtile_generation.py +261 -0
  20. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/index/index_manager.py +18 -17
  21. water_column_sonar_processing-25.8.0/water_column_sonar_processing/model/zarr_manager.py +653 -0
  22. water_column_sonar_processing-25.8.0/water_column_sonar_processing/processing/__init__.py +6 -0
  23. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/processing/batch_downloader.py +11 -11
  24. water_column_sonar_processing-25.8.0/water_column_sonar_processing/processing/raw_to_netcdf.py +319 -0
  25. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/processing/raw_to_zarr.py +41 -31
  26. water_column_sonar_processing-25.8.0/water_column_sonar_processing/utility/__init__.py +13 -0
  27. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/utility/cleaner.py +1 -2
  28. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/utility/constants.py +26 -7
  29. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/utility/timestamp.py +1 -0
  30. water_column_sonar_processing-25.8.0/water_column_sonar_processing.egg-info/PKG-INFO +162 -0
  31. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing.egg-info/SOURCES.txt +6 -14
  32. water_column_sonar_processing-25.8.0/water_column_sonar_processing.egg-info/requires.txt +41 -0
  33. water_column_sonar_processing-25.3.1/.env-test +0 -18
  34. water_column_sonar_processing-25.3.1/.github/workflows/test_action.yaml +0 -46
  35. water_column_sonar_processing-25.3.1/.gitignore +0 -191
  36. water_column_sonar_processing-25.3.1/.pre-commit-config.yaml +0 -53
  37. water_column_sonar_processing-25.3.1/.python-version +0 -1
  38. water_column_sonar_processing-25.3.1/PKG-INFO +0 -170
  39. water_column_sonar_processing-25.3.1/README.md +0 -111
  40. water_column_sonar_processing-25.3.1/open-science-data-federation/ml/autoencoder_example.py +0 -94
  41. water_column_sonar_processing-25.3.1/open-science-data-federation/osdf_examples/foo.ipynb +0 -65
  42. water_column_sonar_processing-25.3.1/open-science-data-federation/osdf_examples/sonar_ai.ipynb +0 -1241
  43. water_column_sonar_processing-25.3.1/pyproject.toml +0 -96
  44. water_column_sonar_processing-25.3.1/tests/conftest.py +0 -77
  45. water_column_sonar_processing-25.3.1/tests/test_resources/index/calibrated_cruises.csv +0 -277
  46. water_column_sonar_processing-25.3.1/tests/test_resources/raw_to_zarr/D20070724-T042400.bot +0 -0
  47. water_column_sonar_processing-25.3.1/tests/test_resources/raw_to_zarr/D20070724-T042400.idx +0 -0
  48. water_column_sonar_processing-25.3.1/tests/test_resources/raw_to_zarr/D20070724-T042400.raw +0 -0
  49. water_column_sonar_processing-25.3.1/water_column_sonar_processing/cruise/__init__.py +0 -4
  50. water_column_sonar_processing-25.3.1/water_column_sonar_processing/cruise/datatree_manager.py +0 -21
  51. water_column_sonar_processing-25.3.1/water_column_sonar_processing/geometry/pmtile_generation.py +0 -297
  52. water_column_sonar_processing-25.3.1/water_column_sonar_processing/model/zarr_manager.py +0 -405
  53. water_column_sonar_processing-25.3.1/water_column_sonar_processing/processing/__init__.py +0 -5
  54. water_column_sonar_processing-25.3.1/water_column_sonar_processing/utility/__init__.py +0 -6
  55. water_column_sonar_processing-25.3.1/water_column_sonar_processing.egg-info/PKG-INFO +0 -170
  56. water_column_sonar_processing-25.3.1/water_column_sonar_processing.egg-info/requires.txt +0 -44
  57. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/setup.cfg +0 -0
  58. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/__init__.py +0 -0
  59. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/aws/__init__.py +0 -0
  60. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/aws/sns_manager.py +0 -0
  61. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/geometry/__init__.py +0 -0
  62. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/geometry/elevation_manager.py +0 -0
  63. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/index/__init__.py +0 -0
  64. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/model/__init__.py +0 -0
  65. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/process.py +0 -0
  66. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing/utility/pipeline_status.py +0 -0
  67. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing.egg-info/dependency_links.txt +0 -0
  68. {water_column_sonar_processing-25.3.1 → water_column_sonar_processing-25.8.0}/water_column_sonar_processing.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2024 Cooperative Institutes, Coastal and Marine Geophysics
3
+ Copyright (c) 2025 Cooperative Institutes, Coastal and Marine Geophysics
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -0,0 +1,162 @@
1
+ Metadata-Version: 2.4
2
+ Name: water-column-sonar-processing
3
+ Version: 25.8.0
4
+ Summary: Processing tool for water column sonar data.
5
+ Author-email: Rudy Klucik <rudy.klucik@noaa.gov>
6
+ Maintainer-email: Rudy Klucik <rudy.klucik@noaa.gov>
7
+ License-Expression: MIT
8
+ Project-URL: Homepage, https://echo.fish
9
+ Project-URL: Repository, https://github.com/CI-CMG/water-column-sonar-processing
10
+ Project-URL: Issues, https://github.com/CI-CMG/water-column-sonar-processing/issues
11
+ Keywords: ocean,sonar,water column,zarr
12
+ Requires-Python: >=3.12
13
+ Description-Content-Type: text/markdown
14
+ License-File: LICENSE-MIT
15
+ Requires-Dist: aiobotocore==2.23.0
16
+ Requires-Dist: boto3==1.38.23
17
+ Requires-Dist: botocore==1.38.23
18
+ Requires-Dist: echopype==0.10.1
19
+ Requires-Dist: fiona==1.10.1
20
+ Requires-Dist: geopandas==1.1.1
21
+ Requires-Dist: mock==5.2.0
22
+ Requires-Dist: moto[all]==5.1.8
23
+ Requires-Dist: moto[server]==5.1.8
24
+ Requires-Dist: multidict==6.6.3
25
+ Requires-Dist: netcdf4==1.6.5
26
+ Requires-Dist: networkx==3.5.0
27
+ Requires-Dist: numcodecs==0.15.1
28
+ Requires-Dist: numpy==1.26.4
29
+ Requires-Dist: pandas==2.3.0
30
+ Requires-Dist: pooch==1.8.2
31
+ Requires-Dist: pyarrow==20.0.0
32
+ Requires-Dist: pykalman==0.10.1
33
+ Requires-Dist: python-dotenv==1.1.1
34
+ Requires-Dist: requests==2.32.4
35
+ Requires-Dist: s3fs==2025.5.1
36
+ Requires-Dist: scipy==1.15.1
37
+ Requires-Dist: setuptools==80.9.0
38
+ Requires-Dist: shapely==2.1.1
39
+ Requires-Dist: xarray==2025.7.0
40
+ Requires-Dist: xbatcher[tensorflow]==0.4.0
41
+ Requires-Dist: zarr==2.18.7
42
+ Provides-Extra: dev
43
+ Requires-Dist: bandit[toml]==1.8.0; extra == "dev"
44
+ Requires-Dist: bandit; extra == "dev"
45
+ Requires-Dist: black; extra == "dev"
46
+ Requires-Dist: build; extra == "dev"
47
+ Requires-Dist: isort; extra == "dev"
48
+ Requires-Dist: matplotlib; extra == "dev"
49
+ Requires-Dist: pooch==1.8.2; extra == "dev"
50
+ Requires-Dist: pre-commit; extra == "dev"
51
+ Requires-Dist: pyinstaller; extra == "dev"
52
+ Requires-Dist: pytest; extra == "dev"
53
+ Requires-Dist: ruff; extra == "dev"
54
+ Requires-Dist: tqdm; extra == "dev"
55
+ Dynamic: license-file
56
+
57
+ # Water Column Sonar Processing
58
+ Processing tool for converting Level_0 water column sonar data to Level_1 and Level_2 derived data sets as well as generating geospatial information.
59
+
60
+ ![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/CI-CMG/water-column-sonar-processing/test_action.yaml)
61
+ ![PyPI - Implementation](https://img.shields.io/pypi/v/ci-cmg-water-column-sonar-processing) ![GitHub License](https://img.shields.io/github/license/CI-CMG/water-column-sonar-processing) ![PyPI - Downloads](https://img.shields.io/pypi/dd/ci-cmg-water-column-sonar-processing) ![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/CI-CMG/water-column-sonar-processing) ![GitHub repo size](https://img.shields.io/github/repo-size/CI-CMG/water-column-sonar-processing)
62
+
63
+ # Setting up the Python Environment
64
+ > Python 3.12.11
65
+
66
+ # Installing Dependencies
67
+ ```
68
+ source .venv/bin/activate
69
+
70
+ uv pip install --upgrade pip
71
+
72
+ uv pip install -r pyproject.toml --all-extras
73
+
74
+ uv run pre-commit install
75
+ ```
76
+
77
+ # Pytest
78
+ ```
79
+ uv run pytest --cache-clear tests -W ignore::DeprecationWarning
80
+ ```
81
+ or
82
+ > pytest --cache-clear --cov=src tests/ --cov-report=xml
83
+
84
+ # Instructions
85
+ Following this tutorial:
86
+ https://packaging.python.org/en/latest/tutorials/packaging-projects/
87
+
88
+ # Pre Commit Hook
89
+ see here for installation: https://pre-commit.com/
90
+ https://dev.to/rafaelherik/using-trufflehog-and-pre-commit-hook-to-prevent-secret-exposure-edo
91
+ ```
92
+ uv run pre-commit install --allow-missing-config
93
+ # or
94
+ uv run pre-commit install
95
+ ```
96
+
97
+ # Black
98
+ https://ljvmiranda921.github.io/notebook/2018/06/21/precommits-using-black-and-flake8/
99
+ ```
100
+ Settings > Black
101
+ Execution mode: Package
102
+ Python Interpreter: .../.venv/bin/python
103
+ Use Black Formatter: X On Code reformat, X On Save
104
+ ```
105
+
106
+ # Linting
107
+ Ruff
108
+ https://plugins.jetbrains.com/plugin/20574-ruff
109
+
110
+ # Colab Test
111
+ https://colab.research.google.com/drive/1KiLMueXiz9WVB9o4RuzYeGjNZ6PsZU7a#scrollTo=AayVyvpBdfIZ
112
+
113
+ # Test Coverage
114
+ TODO
115
+
116
+ # Tag a Release
117
+ Step 1 --> increment the semantic version in the zarr_manager.py "metadata" & the "pyproject.toml"
118
+ ```commandline
119
+ git tag -a v25.8.0 -m "Releasing v25.8.0"
120
+ git push origin --tags
121
+ ```
122
+
123
+ # To Publish To PROD
124
+ ```
125
+ uv build --no-sources
126
+ uv publish
127
+ ```
128
+
129
+ # TODO:
130
+ add https://pypi.org/project/setuptools-scm/
131
+ for extracting the version
132
+
133
+ # Security scanning
134
+ > bandit -r water_column_sonar_processing/
135
+
136
+ # Data Debugging
137
+ Experimental Plotting in Xarray (hvPlot):
138
+ https://colab.research.google.com/drive/18vrI9LAip4xRGEX6EvnuVFp35RAiVYwU#scrollTo=q9_j9p2yXsLV
139
+
140
+ HB0707 Zoomable Cruise:
141
+ https://hb0707.s3.us-east-1.amazonaws.com/index.html
142
+
143
+
144
+ # UV Debugging
145
+ ```
146
+ uv lock --check
147
+ uv lock
148
+ uv sync --extra dev
149
+ ```
150
+
151
+ # Fixing S3FS Problems
152
+ ```commandline
153
+ To enable/disa asyncio for the debugger, follow the steps:
154
+ Open PyCharm
155
+ Use Shift + Shift (Search Everywhere)
156
+ In the popup type: Registry and press Enter
157
+ Find "Registry" in the list of results and click on it.
158
+ In the new popup find python.debug.asyncio.repl line and check the respective checkbox
159
+ Press Close.
160
+ Restart the IDE.
161
+ The asyncio support will be enabled in the debugger.
162
+ ```
@@ -0,0 +1,106 @@
1
+ # Water Column Sonar Processing
2
+ Processing tool for converting Level_0 water column sonar data to Level_1 and Level_2 derived data sets as well as generating geospatial information.
3
+
4
+ ![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/CI-CMG/water-column-sonar-processing/test_action.yaml)
5
+ ![PyPI - Implementation](https://img.shields.io/pypi/v/ci-cmg-water-column-sonar-processing) ![GitHub License](https://img.shields.io/github/license/CI-CMG/water-column-sonar-processing) ![PyPI - Downloads](https://img.shields.io/pypi/dd/ci-cmg-water-column-sonar-processing) ![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/CI-CMG/water-column-sonar-processing) ![GitHub repo size](https://img.shields.io/github/repo-size/CI-CMG/water-column-sonar-processing)
6
+
7
+ # Setting up the Python Environment
8
+ > Python 3.12.11
9
+
10
+ # Installing Dependencies
11
+ ```
12
+ source .venv/bin/activate
13
+
14
+ uv pip install --upgrade pip
15
+
16
+ uv pip install -r pyproject.toml --all-extras
17
+
18
+ uv run pre-commit install
19
+ ```
20
+
21
+ # Pytest
22
+ ```
23
+ uv run pytest --cache-clear tests -W ignore::DeprecationWarning
24
+ ```
25
+ or
26
+ > pytest --cache-clear --cov=src tests/ --cov-report=xml
27
+
28
+ # Instructions
29
+ Following this tutorial:
30
+ https://packaging.python.org/en/latest/tutorials/packaging-projects/
31
+
32
+ # Pre Commit Hook
33
+ see here for installation: https://pre-commit.com/
34
+ https://dev.to/rafaelherik/using-trufflehog-and-pre-commit-hook-to-prevent-secret-exposure-edo
35
+ ```
36
+ uv run pre-commit install --allow-missing-config
37
+ # or
38
+ uv run pre-commit install
39
+ ```
40
+
41
+ # Black
42
+ https://ljvmiranda921.github.io/notebook/2018/06/21/precommits-using-black-and-flake8/
43
+ ```
44
+ Settings > Black
45
+ Execution mode: Package
46
+ Python Interpreter: .../.venv/bin/python
47
+ Use Black Formatter: X On Code reformat, X On Save
48
+ ```
49
+
50
+ # Linting
51
+ Ruff
52
+ https://plugins.jetbrains.com/plugin/20574-ruff
53
+
54
+ # Colab Test
55
+ https://colab.research.google.com/drive/1KiLMueXiz9WVB9o4RuzYeGjNZ6PsZU7a#scrollTo=AayVyvpBdfIZ
56
+
57
+ # Test Coverage
58
+ TODO
59
+
60
+ # Tag a Release
61
+ Step 1 --> increment the semantic version in the zarr_manager.py "metadata" & the "pyproject.toml"
62
+ ```commandline
63
+ git tag -a v25.8.0 -m "Releasing v25.8.0"
64
+ git push origin --tags
65
+ ```
66
+
67
+ # To Publish To PROD
68
+ ```
69
+ uv build --no-sources
70
+ uv publish
71
+ ```
72
+
73
+ # TODO:
74
+ add https://pypi.org/project/setuptools-scm/
75
+ for extracting the version
76
+
77
+ # Security scanning
78
+ > bandit -r water_column_sonar_processing/
79
+
80
+ # Data Debugging
81
+ Experimental Plotting in Xarray (hvPlot):
82
+ https://colab.research.google.com/drive/18vrI9LAip4xRGEX6EvnuVFp35RAiVYwU#scrollTo=q9_j9p2yXsLV
83
+
84
+ HB0707 Zoomable Cruise:
85
+ https://hb0707.s3.us-east-1.amazonaws.com/index.html
86
+
87
+
88
+ # UV Debugging
89
+ ```
90
+ uv lock --check
91
+ uv lock
92
+ uv sync --extra dev
93
+ ```
94
+
95
+ # Fixing S3FS Problems
96
+ ```commandline
97
+ To enable/disa asyncio for the debugger, follow the steps:
98
+ Open PyCharm
99
+ Use Shift + Shift (Search Everywhere)
100
+ In the popup type: Registry and press Enter
101
+ Find "Registry" in the list of results and click on it.
102
+ In the new popup find python.debug.asyncio.repl line and check the respective checkbox
103
+ Press Close.
104
+ Restart the IDE.
105
+ The asyncio support will be enabled in the debugger.
106
+ ```
@@ -0,0 +1,90 @@
1
+ [build-system]
2
+ requires = ["setuptools"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "water-column-sonar-processing"
7
+ version = "25.8.0"
8
+ authors = [
9
+ { name="Rudy Klucik", email="rudy.klucik@noaa.gov" },
10
+ ]
11
+ maintainers = [
12
+ { name="Rudy Klucik", email="rudy.klucik@noaa.gov" },
13
+ ]
14
+ description = "Processing tool for water column sonar data."
15
+ keywords = ["ocean", "sonar", "water column", "zarr"]
16
+ readme = "README.md"
17
+ requires-python = ">=3.12"
18
+ license = "MIT"
19
+ license-files = ["LICENSE-MIT"]
20
+
21
+ dependencies = [
22
+ "aiobotocore==2.23.0",
23
+ # "aiohttp[speedups]",
24
+ "boto3==1.38.23",
25
+ "botocore==1.38.23",
26
+ "echopype==0.10.1",
27
+ "fiona==1.10.1",
28
+ "geopandas==1.1.1",
29
+ # "keras==3.9.2",
30
+ "mock==5.2.0",
31
+ "moto[all]==5.1.8",
32
+ "moto[server]==5.1.8",
33
+ "multidict==6.6.3",
34
+ "netcdf4==1.6.5",
35
+ "networkx==3.5.0",
36
+ "numcodecs==0.15.1", # problem with blosc
37
+ "numpy==1.26.4",
38
+ "pandas==2.3.0",
39
+ #"pelicanfs==1.0.2", # TODO: add this
40
+ "pooch==1.8.2",
41
+ "pyarrow==20.0.0",
42
+ "pykalman==0.10.1",
43
+ "python-dotenv==1.1.1",
44
+ "requests==2.32.4",
45
+ "s3fs==2025.5.1",
46
+ "scipy==1.15.1",
47
+ "setuptools==80.9.0",
48
+ "shapely==2.1.1",
49
+ # "tensorflow==2.18.0",
50
+ "xarray==2025.7.0",
51
+ "xbatcher[tensorflow]==0.4.0",
52
+ "zarr==2.18.7",
53
+ ]
54
+
55
+ [project.optional-dependencies]
56
+ dev = [
57
+ "bandit[toml]==1.8.0",
58
+ "bandit",
59
+ "black",
60
+ "build",
61
+ "isort",
62
+ "matplotlib",
63
+ "pooch==1.8.2",
64
+ "pre-commit",
65
+ "pyinstaller",
66
+ "pytest",
67
+ "ruff",
68
+ "tqdm",
69
+ ]
70
+
71
+ [project.urls]
72
+ Homepage = "https://echo.fish"
73
+ Repository = "https://github.com/CI-CMG/water-column-sonar-processing"
74
+ Issues = "https://github.com/CI-CMG/water-column-sonar-processing/issues"
75
+
76
+ [tool.bandit]
77
+ exclude_dirs = ["tests"]
78
+
79
+ [tool.pre-commit-hooks.bandit]
80
+ exclude = ["*/tests/*"]
81
+
82
+ [tool.isort]
83
+ known_first_party = "water_column_sonar_processing"
84
+ multi_line_output = 3
85
+ force_grid_wrap = 0
86
+ include_trailing_comma = true
87
+ combine_as_imports = true
88
+
89
+ [tool.black]
90
+ line-length = 88
@@ -127,7 +127,7 @@ class DynamoDBManager:
127
127
  # assert status_code == 200, "Problem, unable to update dynamodb table."
128
128
  # assert response['ConsumedCapacity']['TableName'] == table_name
129
129
  except Exception as err:
130
- print(f"Problem was encountered while updating item: {err}")
130
+ raise RuntimeError(f"Problem was encountered while updating item, {err}")
131
131
 
132
132
  #####################################################################
133
133
  # TODO: change to "get_cruise_as_df"
@@ -135,7 +135,7 @@ class DynamoDBManager:
135
135
  self,
136
136
  # ship_name,
137
137
  cruise_name,
138
- # sensor_name,
138
+ # sensor_name, # TODO: need to add this back for EK80
139
139
  table_name,
140
140
  ) -> pd.DataFrame:
141
141
  """
@@ -230,7 +230,7 @@ class DynamoDBManager:
230
230
  # if len(response["Items"]) == 0 and "LastEvaluatedKey" not in response:
231
231
  # return pd.DataFrame() # If no results, return empty dataframe
232
232
  #
233
- # data = response["Items"]
233
+ # dataset = response["Items"]
234
234
  #
235
235
  # while response.get('LastEvaluatedKey'): #"LastEvaluatedKey" in response:
236
236
  # response = self.dynamodb_client.scan(
@@ -252,10 +252,10 @@ class DynamoDBManager:
252
252
  # ConsistentRead=True,
253
253
  # ExclusiveStartKey=response["LastEvaluatedKey"],
254
254
  # )
255
- # data.extend(response["Items"])
255
+ # dataset.extend(response["Items"])
256
256
  #
257
257
  # deserializer = self.type_deserializer
258
- # df = pd.DataFrame([deserializer.deserialize({"M": i}) for i in data])
258
+ # df = pd.DataFrame([deserializer.deserialize({"M": i}) for i in dataset])
259
259
  #
260
260
  # return df.sort_values(by="START_TIME", ignore_index=True)
261
261
 
@@ -273,7 +273,7 @@ class DynamoDBManager:
273
273
  response = self.dynamodb_client.delete_item(
274
274
  Key={"CRUISE_NAME": {"S": cruise_name}, "FILE_NAME": {"S": file_name}},
275
275
  TableName=table_name,
276
- ReturnConsumedCapacity="TOTALS",
276
+ ReturnConsumedCapacity="TOTAL",
277
277
  )
278
278
  # TODO: there should be attributes included in response but they are missing
279
279
  # if response["ResponseMetadata"]["HTTPStatusCode"] != 200: