Skip to content

Commit afa3dda

Browse files
committed
[2025-02-03 08:22] Timezone fix patch
1 parent 19e7778 commit afa3dda

File tree

5 files changed

+9
-5
lines changed

5 files changed

+9
-5
lines changed

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "weather_provider_api"
3-
version = "2.62.0"
3+
version = "2.63.0"
44
description = "Weather Provider Libraries and API"
55
authors = ["Verbindingsteam", "Raoul Linnenbank <[email protected]>"]
66
license = "MPL-2.0"

tests/test_knmi_daggegevens.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,10 @@ def test_retrieve_weather(mock_coordinates, start, end, inseason):
3535
daggegevens_model = DagGegevensModel()
3636
ds = daggegevens_model.get_weather(coords=mock_geoposition_coordinates, begin=start, end=end, inseason=inseason)
3737

38+
print(ds["time"])
3839
assert ds is not None
3940
assert "TN" in ds
40-
assert len(ds["TN"]) == 31
41+
assert len(ds["TN"]) == 30
4142
assert isinstance(ds, xr.Dataset)
4243

4344

weather_provider_api/routers/weather/sources/knmi/models/daggegevens.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import xarray as xr
1818
from dateutil.relativedelta import relativedelta
1919
from loguru import logger
20+
from pytz import UTC
2021

2122
from weather_provider_api.routers.weather.base_models.model import WeatherModelBase
2223
from weather_provider_api.routers.weather.sources.knmi.stations import stations_history
@@ -219,7 +220,7 @@ def get_weather(
219220
ds = self._prepare_weather_data(coords, station_id, raw_ds)
220221

221222
# The KNMI model isn't working properly yet, so we have to cut out any overflow time-wise
222-
ds = ds.sel(time=slice(begin, end))
223+
ds = ds.sel(time=slice(begin.astimezone(UTC).replace(tzinfo=None), end.astimezone(UTC).replace(tzinfo=None)))
223224

224225
return ds
225226

weather_provider_api/routers/weather/sources/knmi/models/pluim.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import xarray as xr
1616
from dateutil.relativedelta import relativedelta
1717
from loguru import logger
18+
from pytz import UTC
1819

1920
from weather_provider_api.routers.weather.base_models.model import WeatherModelBase
2021
from weather_provider_api.routers.weather.sources.knmi.stations import (
@@ -157,7 +158,7 @@ def _select_weather_from_given_period(ds: xr.Dataset, begin: datetime, end: date
157158
datetime.today().replace(hour=0, minute=0, second=0),
158159
datetime.today().replace(hour=0, minute=0, second=0) + relativedelta(days=15),
159160
)
160-
ds = ds.sel(time=slice(begin, end))
161+
ds = ds.sel(time=slice(begin.astimezone(UTC).replace(tzinfo=None), end.astimezone(UTC).replace(tzinfo=None)))
161162
return ds
162163

163164
def is_async(self): # pragma: no cover

weather_provider_api/routers/weather/sources/knmi/models/uurgegevens.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import xarray as xr
1818
from dateutil.relativedelta import relativedelta
1919
from loguru import logger
20+
from pytz import UTC
2021

2122
from weather_provider_api.routers.weather.base_models.model import WeatherModelBase
2223
from weather_provider_api.routers.weather.sources.knmi.stations import stations_history
@@ -177,7 +178,7 @@ def get_weather(
177178
ds = self._prepare_weather_data(coords, station_id, raw_ds)
178179

179180
# The KNMI model isn't working properly yet, so we have to cut out any overflow time-wise
180-
ds = ds.sel(time=slice(begin, end))
181+
ds = ds.sel(time=slice(begin.astimezone(UTC).replace(tzinfo=None), end.astimezone(UTC).replace(tzinfo=None)))
181182
return ds
182183

183184
def is_async(self): # pragma: no cover

0 commit comments

Comments
 (0)