hydroserverpy 1.3.0b1__tar.gz → 1.3.0b3__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 hydroserverpy might be problematic. Click here for more details.

Files changed (76) hide show
  1. {hydroserverpy-1.3.0b1/src/hydroserverpy.egg-info → hydroserverpy-1.3.0b3}/PKG-INFO +1 -1
  2. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/setup.cfg +1 -1
  3. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/etl/data_archive.py +1 -1
  4. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/etl/data_source.py +1 -1
  5. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/etl/orchestration_system.py +2 -2
  6. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/sta/datastream.py +1 -1
  7. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/sta/thing.py +1 -1
  8. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/sta/datastream.py +0 -2
  9. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl_csv/hydroserver_etl_csv.py +17 -23
  10. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3/src/hydroserverpy.egg-info}/PKG-INFO +1 -1
  11. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/LICENSE +0 -0
  12. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/README.md +0 -0
  13. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/pyproject.toml +0 -0
  14. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/setup.py +0 -0
  15. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/__init__.py +0 -0
  16. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/__init__.py +0 -0
  17. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/client.py +0 -0
  18. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/__init__.py +0 -0
  19. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/base.py +0 -0
  20. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/etl/__init__.py +0 -0
  21. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/etl/orchestration_configuration.py +0 -0
  22. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/iam/__init__.py +0 -0
  23. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/iam/account.py +0 -0
  24. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/iam/apikey.py +0 -0
  25. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/iam/collaborator.py +0 -0
  26. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/iam/role.py +0 -0
  27. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/iam/workspace.py +0 -0
  28. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/sta/__init__.py +0 -0
  29. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/sta/observation.py +0 -0
  30. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/sta/observed_property.py +0 -0
  31. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/sta/processing_level.py +0 -0
  32. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/sta/result_qualifier.py +0 -0
  33. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/sta/sensor.py +0 -0
  34. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/models/sta/unit.py +0 -0
  35. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/__init__.py +0 -0
  36. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/base.py +0 -0
  37. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/etl/__init__.py +0 -0
  38. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/etl/data_archive.py +0 -0
  39. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/etl/data_source.py +0 -0
  40. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/etl/orchestration_system.py +0 -0
  41. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/iam/__init__.py +0 -0
  42. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/iam/role.py +0 -0
  43. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/iam/workspace.py +0 -0
  44. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/sta/__init__.py +0 -0
  45. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/sta/observed_property.py +0 -0
  46. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/sta/processing_level.py +0 -0
  47. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/sta/result_qualifier.py +0 -0
  48. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/sta/sensor.py +0 -0
  49. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/sta/thing.py +0 -0
  50. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/services/sta/unit.py +0 -0
  51. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/api/utils.py +0 -0
  52. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/__init__.py +0 -0
  53. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/extractors/__init__.py +0 -0
  54. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/extractors/base.py +0 -0
  55. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/extractors/ftp_extractor.py +0 -0
  56. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/extractors/http_extractor.py +0 -0
  57. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/extractors/local_file_extractor.py +0 -0
  58. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/hydroserver_etl.py +0 -0
  59. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/loaders/__init__.py +0 -0
  60. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/loaders/base.py +0 -0
  61. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/loaders/hydroserver_loader.py +0 -0
  62. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/timestamp_parser.py +0 -0
  63. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/transformers/__init__.py +0 -0
  64. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/transformers/base.py +0 -0
  65. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/transformers/csv_transformer.py +0 -0
  66. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/transformers/json_transformer.py +0 -0
  67. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl/types.py +0 -0
  68. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl_csv/__init__.py +0 -0
  69. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/etl_csv/exceptions.py +0 -0
  70. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/quality/__init__.py +0 -0
  71. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy/quality/service.py +0 -0
  72. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy.egg-info/SOURCES.txt +0 -0
  73. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy.egg-info/dependency_links.txt +0 -0
  74. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy.egg-info/requires.txt +0 -0
  75. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy.egg-info/top_level.txt +0 -0
  76. {hydroserverpy-1.3.0b1 → hydroserverpy-1.3.0b3}/src/hydroserverpy.egg-info/zip-safe +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hydroserverpy
3
- Version: 1.3.0b1
3
+ Version: 1.3.0b3
4
4
  Requires-Python: <4,>=3.9
5
5
  License-File: LICENSE
6
6
  Requires-Dist: requests>=2
@@ -1,6 +1,6 @@
1
1
  [metadata]
2
2
  name = hydroserverpy
3
- version = 1.3.0b1
3
+ version = 1.3.0b3
4
4
 
5
5
  [options]
6
6
  package_dir =
@@ -58,7 +58,7 @@ class DataArchive(
58
58
  """The datastreams this data archive provides data for."""
59
59
 
60
60
  if self._datastreams is None:
61
- self._datastreams = self.client.datastreams.list(data_archive=self.uid, fetch_all=True)
61
+ self._datastreams = self.client.datastreams.list(data_archive=self.uid, fetch_all=True).items
62
62
 
63
63
  return self._datastreams
64
64
 
@@ -61,7 +61,7 @@ class DataSource(
61
61
  """The datastreams this data source provides data for."""
62
62
 
63
63
  if self._datastreams is None:
64
- self._datastreams = self.client.datastreams.list(data_source=self.uid, fetch_all=True)
64
+ self._datastreams = self.client.datastreams.list(data_source=self.uid, fetch_all=True).items
65
65
 
66
66
  return self._datastreams
67
67
 
@@ -47,7 +47,7 @@ class OrchestrationSystem(HydroServerBaseModel):
47
47
  if self._datasources is None:
48
48
  self._datasources = self.client.datasources.list(
49
49
  orchestration_system=self.uid, fetch_all=True
50
- )
50
+ ).items
51
51
 
52
52
  return self._datasources
53
53
 
@@ -58,6 +58,6 @@ class OrchestrationSystem(HydroServerBaseModel):
58
58
  if self._dataarchives is None:
59
59
  self._dataarchives = self.client.dataarchives.list(
60
60
  orchestration_system=self.uid, fetch_all=True
61
- )
61
+ ).items
62
62
 
63
63
  return self._dataarchives
@@ -183,7 +183,7 @@ class Datastream(HydroServerBaseModel):
183
183
  """The data archives of this datastream."""
184
184
 
185
185
  if self._data_archives is None:
186
- self._data_archives = self.client.dataarchives.list(datastream=self.uid, fetch_all=True)
186
+ self._data_archives = self.client.dataarchives.list(datastream=self.uid, fetch_all=True).items
187
187
 
188
188
  return self._data_archives
189
189
 
@@ -66,7 +66,7 @@ class Thing(HydroServerBaseModel):
66
66
  """The datastreams collected at this thing."""
67
67
 
68
68
  if self._datastreams is None:
69
- self._datastreams = self.client.datastreams.list(thing=self.uid, fetch_all=True)
69
+ self._datastreams = self.client.datastreams.list(thing=self.uid, fetch_all=True).items
70
70
 
71
71
  return self._datastreams
72
72
 
@@ -267,8 +267,6 @@ class DatastreamService(HydroServerBaseService):
267
267
  "data": observations.values.tolist()
268
268
  }
269
269
 
270
- print(body)
271
-
272
270
  self.client.request(
273
271
  "post", path, headers=headers, params=params, data=json.dumps(body, default=self.default_serializer)
274
272
  )
@@ -179,12 +179,12 @@ class HydroServerETLCSV:
179
179
  """
180
180
 
181
181
  try:
182
+ timestamp_key = (self._data_source.settings["transformer"].get("timestampKey") or
183
+ self._data_source.settings["transformer"]["timestamp"]["key"])
182
184
  self._timestamp_column_index = (
183
- row.index(self._data_source.settings["transformer"]["timestampKey"])
184
- if isinstance(
185
- self._data_source.settings["transformer"]["timestampKey"], str
186
- )
187
- else int(self._data_source.settings["transformer"]["timestampKey"]) - 1
185
+ row.index(timestamp_key)
186
+ if isinstance(timestamp_key, str)
187
+ else int(timestamp_key) - 1
188
188
  )
189
189
  if self._timestamp_column_index > len(row):
190
190
  raise ValueError
@@ -216,26 +216,24 @@ class HydroServerETLCSV:
216
216
  """
217
217
 
218
218
  try:
219
- if (
220
- self._data_source.settings["transformer"].get("timestampFormat") in ["utc", "constant", "ISO8601"]
221
- or self._data_source.settings["transformer"].get("timestampFormat")
222
- is None
223
- ):
224
- timestamp = isoparse(row[self._timestamp_column_index])
225
- else:
219
+ timestamp_format = (self._data_source.settings["transformer"].get("timestampFormat") or
220
+ self._data_source.settings["transformer"].get("timestamp", {}).get("format"))
221
+ if timestamp_format == "custom":
226
222
  timestamp = datetime.strptime(
227
- row[self._timestamp_column_index],
228
- self._data_source.settings["transformer"].get("timestampFormat"),
223
+ row[self._timestamp_column_index], timestamp_format,
229
224
  )
225
+ else:
226
+ timestamp = isoparse(row[self._timestamp_column_index])
230
227
  except ValueError as e:
231
228
  raise TimestampParsingError(str(e)) from e
232
229
 
233
230
  if timestamp.tzinfo is None:
234
- if not self._data_source.settings["transformer"].get(
231
+ timestamp_offset = self._data_source.settings["transformer"].get(
235
232
  "timestampOffset"
236
233
  ) or self._data_source.settings["transformer"].get(
237
- "timestampOffset"
238
- ).endswith(
234
+ "timestamp", {}
235
+ ).get("offset")
236
+ if not timestamp_offset or timestamp_offset.endswith(
239
237
  "0000"
240
238
  ):
241
239
  timestamp = timestamp.replace(tzinfo=timezone.utc)
@@ -243,13 +241,9 @@ class HydroServerETLCSV:
243
241
  try:
244
242
  timestamp = timestamp.replace(
245
243
  tzinfo=datetime.strptime(
246
- self._data_source.settings["transformer"].get(
247
- "timestampOffset"
248
- )[:-2]
244
+ timestamp_offset[:-2]
249
245
  + ":"
250
- + self._data_source.settings["transformer"].get(
251
- "timestampOffset"
252
- )[3:],
246
+ + timestamp_offset[3:],
253
247
  "%z",
254
248
  ).tzinfo
255
249
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hydroserverpy
3
- Version: 1.3.0b1
3
+ Version: 1.3.0b3
4
4
  Requires-Python: <4,>=3.9
5
5
  License-File: LICENSE
6
6
  Requires-Dist: requests>=2
File without changes