Skip to content

Commit 9bce327

Browse files
committed
fix: raise in case of failed timestamp conversion
1 parent 35d967a commit 9bce327

9 files changed

Lines changed: 15 additions & 15 deletions

File tree

src/gps_logger_parser/gps/axytrek.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class AXYTREKParser(GPSHarmonizationMixin, CSVParser):
6161
def harmonize_data(self, data):
6262
# Combine Date and Time columns into timestamp
6363
data["timestamp"] = pd.to_datetime(
64-
data["Date"] + " " + data["Time"], errors="coerce"
64+
data["Date"] + " " + data["Time"], errors="raise"
6565
)
6666
return super().harmonize_data(data)
6767

src/gps_logger_parser/gps/base.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ class GPSParser(GPSHarmonizationMixin, CSVParser):
5757
def harmonize_data(self, data):
5858
# Combine Date and Time columns into timestamp
5959
data["timestamp"] = pd.to_datetime(
60-
data["UTC_date"] + " " + data["UTC_time"], errors="coerce"
60+
data["UTC_date"] + " " + data["UTC_time"], errors="raise"
6161
)
6262
return super().harmonize_data(data)
6363

src/gps_logger_parser/gps/catlog.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ class GPSCatTrackParser(GPSHarmonizationMixin, CSVParser):
5757
def harmonize_data(self, data):
5858
# Combine Date and Time columns into timestamp
5959
data["timestamp"] = pd.to_datetime(
60-
data["Date"] + " " + data["Time"], errors="coerce"
60+
data["Date"] + " " + data["Time"], errors="raise"
6161
)
6262
return super().harmonize_data(data)
6363

src/gps_logger_parser/gps/ho11.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ def harmonize_data(self, data):
4949
# Combine Date and Time columns into timestamp
5050
data["timestamp"] = pd.to_datetime(
5151
data["Date"] + " " + data["Time"],
52-
errors="coerce",
52+
errors="raise",
5353
format="%d.%m.%Y %H:%M:%S",
5454
)
5555
return super().harmonize_data(data)

src/gps_logger_parser/gps/igotu.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ class IGotU_GT_Parser(GPSHarmonizationMixin, CSVParser):
4747
def harmonize_data(self, data):
4848
# Combine Date and Time columns into timestamp
4949
data["timestamp"] = pd.to_datetime(
50-
data["Date"] + " " + data["Time"], errors="coerce"
50+
data["Date"] + " " + data["Time"], errors="raise"
5151
)
5252
return super().harmonize_data(data)
5353

src/gps_logger_parser/gps/jm.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -107,14 +107,14 @@ def harmonize_data(self, data):
107107
data["timestamp"] = pd.to_datetime(
108108
self.start_date + " " + data["__original__time"],
109109
format="%d.%m.%Y %H:%M:%S",
110-
errors="coerce",
110+
errors="raise",
111111
)
112112
else:
113113
# Fallback if start_date not available
114114
data["timestamp"] = pd.to_datetime(
115115
data["__original__date"].astype(str) + " " + data["__original__time"],
116116
format="%d %H:%M:%S",
117-
errors="coerce",
117+
errors="raise",
118118
)
119119

120120
# Recreate geometry column now that lat/lon are finalized
@@ -292,7 +292,7 @@ def harmonize_data(self, data):
292292
data["timestamp"] = pd.to_datetime(
293293
data["__original__UTC_date"] + " " + data["__original__UTC_time"],
294294
format="%d.%m.%Y %H:%M:%S",
295-
errors="coerce",
295+
errors="raise",
296296
)
297297
return data
298298

src/gps_logger_parser/gps/mixin.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,14 +61,14 @@ def harmonize_data(self, data):
6161
if data[col_name].dtype != "object":
6262
data[col_name] = data[col_name].astype(str)
6363
elif pd_dtype == "float64":
64-
data[col_name] = pd.to_numeric(data[col_name], errors="coerce")
64+
data[col_name] = pd.to_numeric(data[col_name], errors="raise")
6565
elif pd_dtype == "Int64":
6666
# Convert to numeric first, then to nullable Int64
67-
data[col_name] = pd.to_numeric(data[col_name], errors="coerce")
67+
data[col_name] = pd.to_numeric(data[col_name], errors="raise")
6868
# Round to handle floating point values before conversion
6969
data[col_name] = data[col_name].round().astype("Int64")
7070
elif pd_dtype == "datetime64[ns]":
71-
data[col_name] = pd.to_datetime(data[col_name], errors="coerce")
71+
data[col_name] = pd.to_datetime(data[col_name], errors="raise")
7272

7373
# Create geometry column from latitude and longitude (WGS84)
7474
# Note: This creates geometry from current lat/lon values

src/gps_logger_parser/gps/pathtrack.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ def harmonize_data(self, data):
6868
+ ":"
6969
+ data["second"].astype(str),
7070
format="%Y/%m/%d %H:%M:%S",
71-
errors="coerce",
71+
errors="raise",
7272
)
7373
return super().harmonize_data(data)
7474

@@ -176,7 +176,7 @@ def harmonize_data(self, data):
176176
+ ":"
177177
+ data["second"].astype(str),
178178
format="%Y/%m/%d %H:%M:%S",
179-
errors="coerce",
179+
errors="raise",
180180
)
181181
return super().harmonize_data(data)
182182

src/gps_logger_parser/gps/unknown.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ def harmonize_data(self, data):
5858
# Combine Date and Time columns into timestamp
5959
data["timestamp"] = pd.to_datetime(
6060
data["Date"] + " " + data["Time"],
61-
errors="coerce",
61+
errors="raise",
6262
format="%d.%m.%Y %H:%M:%S",
6363
)
6464
return super().harmonize_data(data)
@@ -81,7 +81,7 @@ def harmonize_data(self, data):
8181
# Combine Date and Time columns into timestamp
8282
data["timestamp"] = pd.to_datetime(
8383
data["Date"] + " " + data["Time"],
84-
errors="coerce",
84+
errors="raise",
8585
format="%d.%m.%Y %H:%M:%S",
8686
)
8787
return super().harmonize_data(data)

0 commit comments

Comments
 (0)