History#
[v0.15.0] - 2026-05-26#
:sparkles: New Features#
a54391e- radiation correction (commit by @martibosch)
:bug: Bug Fixes#
cc3cdf7- require requests-cache>=1.3.2 for requests 2.34 compat (commit by @martibosch)
:wrench: Chores#
867ddfa- handle xr optional import/type checking better (commit by @martibosch)
[v0.14.0] - 2026-03-11#
:sparkles: New Features#
0ee898f- tqdm progress bar in partitioned time series clients (commit by @martibosch)
:recycle: Refactors#
e6f1928- DRY clients with time series mixins (commit by @martibosch)
:white_check_mark: Tests#
de6ee44- avoid xarray importerror from xproj (xarray/pull/10285) (commit by @martibosch)
[v0.13.0] - 2026-03-06#
:sparkles: New Features#
000708d- utils.long_to_stationbench function (commit by @martibosch)
:bug: Bug Fixes#
8c0bba3- remove unsupported UGZ client draft (commit by @martibosch)4778e0e- update cached recent files in meteoswiss client (commit by @martibosch)
:recycle: Refactors#
a78e2d3- DRY LONLAT_CRS as constant in utils (commit by @martibosch)
[v0.12.0] - 2026-02-01#
:boom: BREAKING CHANGES#
due to
4b73db5- ECV constants in settings; added_temperatureto dew point (commit by @martibosch):ECV constants in settings; added
_temperatureto dew pointdue to
9256199- improve performance by not sorting in_post_process_ts_df(commit by @martibosch):improve performance by not sorting in
_post_process_ts_df
:sparkles: New Features#
4b73db5- ECV constants in settings; added_temperatureto dew point (commit by @martibosch)15ca56b- request vs file based clients (commit by @martibosch)7faf3af- xclim integration, unit support with pint, updated user-guide (commit by @martibosch)9256199- improve performance by not sorting in_post_process_ts_df(commit by @martibosch)
:bug: Bug Fixes#
3de3f48- swap lon/lat cols for meteoswiss client (commit by @martibosch)8fb5f1b- avoid GeoSeries.progress_apply to support pandas 3 (commit by @martibosch)
:recycle: Refactors#
49f6f37- improve client initialization and base class structure (commit by @martibosch)d4f15ad- move mixins to clients module (commit by @martibosch)
[v0.11.0] - 2026-01-22#
:boom: BREAKING CHANGES#
due to
a57d978- ensure that self._region is in the client’s CRS (commit by @martibosch):ensure that self._region is in the client’s CRS
due to
b1f6f7d- fix incorrect heatwave detection, now using gb and cumsum (commit by @martibosch):fix incorrect heatwave detection, now using gb and cumsum
:sparkles: New Features#
a57d978- ensure that self._region is in the client’s CRS (commit by @martibosch)b1f6f7d- fix incorrect heatwave detection, now using gb and cumsum (commit by @martibosch)1d6cf99- raise informative ValueError in utils.long_to_cube without xr (commit by @martibosch)
:bug: Bug Fixes#
cd70c4b- get meteoswiss past year from recent file if not in historical (commit by @martibosch)
[v0.10.0] - 2025-12-01#
:boom: BREAKING CHANGES#
due to
2362ae3- default Agrometeo CRS to lon/lat (some stations have no lv03) (commit by @martibosch):default Agrometeo CRS to lon/lat (some stations have no lv03)
:sparkles: New Features#
2362ae3- default Agrometeo CRS to lon/lat (some stations have no lv03) (commit by @martibosch)
:bug: Bug Fixes#
2aa354e- ensure same CRS in stations_gdf sjoin (commit by @martibosch)982c050-endvar definition inMeteoSwissClient.get_ts_df(commit by @martibosch)
[v0.9.0] - 2025-12-01#
:boom: BREAKING CHANGES#
due to
043e229- remove metoffice client (discontinued points api service) (commit by @martibosch):remove metoffice client (discontinued points api service)
:sparkles: New Features#
043e229- remove metoffice client (discontinued points api service) (commit by @martibosch)7c282d7- outsource regionmixin/types to pyregeon (commit by @martibosch)
[v0.8.0] - 2025-08-28#
:sparkles: New Features#
b6fc8eb- add MeteoSwiss client (commit by @martibosch)ef006c5- update/expand ECV dicts (commit by @martibosch)
:bug: Bug Fixes#
52b874d- do NOT add prev/next day in heatwaves (commit by @martibosch)
[v0.7.0] - 2025-08-10#
:sparkles: New Features#
4c57dc1- GHCNh nodata for region/period warning - TODO: global approach (commit by @martibosch)a851310- NETATMO_ON_GET_ERROR setting (commit by @martibosch)9a5617a- heatwave detection (commit by @martibosch)9525f5e- catch netatmo error code 9 (commit by @martibosch)
:white_check_mark: Tests#
79da984- ensure elev > 1 so that elev adj tests pass (commit by @martibosch)
[v0.6.0] - 2025-06-30#
:sparkles: New Features#
4290ec2- netatmo: dont fetch token for cache, better API error handling (commit by @martibosch)1816790- update GHCNh client to new station list csv format (commit by @martibosch)9390cee- add station ids as dimensionless coords in vector data cubes (commit by @martibosch)89938d5- added AWEL client (commit by @martibosch)
:bug: Bug Fixes#
3a66ddf- filter ts_df date range using pd.Timestamp (also in Meteocat) (commit by @martibosch)b938939- correct axis aggregation in outlier detection (commit by @martibosch)
:recycle: Refactors#
6f07086- stations_gdf in BaseClient with _stations_gdf_id_col attr (commit by @martibosch)
:white_check_mark: Tests#
69ce3d7- mock requests with pook also for AEMET (commit by @martibosch)
[v0.5.0] - 2025-04-10#
:sparkles: New Features#
5df1c84- use yearly ghcnh files with pandas (drop polars/pyarrow) (commit by @martibosch)
:bug: Bug Fixes#
783c027- dms to decimal conversion (for aemet) (commit by @martibosch)
:wrench: Chores#
34d6684- update project license in pyproject.toml (commit by @martibosch)
[v0.4.1] - 2025-03-27#
:bug: Bug Fixes#
f8a1815- utils tests for standardized time/station cols; no posargs (commit by @martibosch)
[v0.4.0] - 2025-03-27#
:boom: BREAKING CHANGES#
due to
efcb356- stations gdf and ts df id col as abstract attrs and settings (commit by @martibosch):stations gdf and ts df id col as abstract attrs and settings
due to
7466e5c- filter ts range in agrometeo - TODO: find a better approach (commit by @martibosch):filter ts range in agrometeo - TODO: find a better approach
:sparkles: New Features#
e29a4a2- long_to_wide function for time series data frames in utils (commit by @martibosch)9d77eff- addedlong_to_cubeutils function (commit by @martibosch)efcb356- stations gdf and ts df id col as abstract attrs and settings (commit by @martibosch)5c5e69f- split Netatmo ts requests in time range to respect API limits (commit by @martibosch)deaf616- QC module plus Netatmo+QC example notebook (commit by @martibosch)fb3c78d- netatmo progress_apply from init to stations_gdf, more logging (commit by @martibosch)
:bug: Bug Fixes#
76473ae- pl set null invalid dates then ignore (avoid errors in ghcnh) (commit by @martibosch)a183f95- drop stale osmnx import in base client (commit by @martibosch)7466e5c- filter ts range in agrometeo - TODO: find a better approach (commit by @martibosch)
:recycle: Refactors#
9b60e79- usepd.DataFrame.unstackinlong_to_wide(commit by @martibosch)7fa3145- remove staleNetatmoConnect.getmethod (commit by @martibosch)
[v0.3.0] - 2025-03-16#
:boom: BREAKING CHANGES#
due to
7f30983- rename kws->kwargs, update docstrings and type annots (commit by @martibosch):rename kws->kwargs, update docstrings and type annots
:sparkles: New Features#
4ca51b0- noaa/ghcnh client (commit by @martibosch)
:bug: Bug Fixes#
e5c6b0f- drop optimize arg for netatmo, add missing docstring for ts (commit by @martibosch)1ebd514- drop MetOfficeres_paramargument (API only supports hourly) (commit by @martibosch)
:recycle: Refactors#
7f30983- rename kws->kwargs, update docstrings and type annots (commit by @martibosch)609131a- rm stale Netatmo bounds code, real time param as bool (commit by @martibosch)d2161c4- only one stations endpoint mixin (commit by @martibosch)ab2d50d- type definitions in utils (commit by @martibosch)c58c320- use separate (reusable) region mixin for base client (commit by @martibosch)
[v0.2.0] - 2025-03-13#
:boom: BREAKING CHANGES#
due to
826aeec- add 3.13 support, drop python 3.9 support (commit by @martibosch):add 3.13 support, drop python 3.9 support
:sparkles: New Features#
19a450d- netatmo client with mocking in tests (commit by @martibosch)826aeec- add 3.13 support, drop python 3.9 support (commit by @martibosch)
:recycle: Refactors#
1d446de- fix comments on base client (commit by @martibosch)747471b- separate_ts_df_from_endpointmethod in base client (commit by @martibosch)
[v0.1.1] - 2024-10-09#
:recycle: Refactors#
624cf9b- hardcopy abstract attribute to drop better_abc requirement (commit by @martibosch)
0.1.0 (2023-04-18)#
First release on PyPI. [v0.1.1]: https://github.com/martibosch/meteora/compare/v0.1.0…v0.1.1 [v0.2.0]: https://github.com/martibosch/meteora/compare/v0.1.1…v0.2.0 [v0.3.0]: https://github.com/martibosch/meteora/compare/v0.2.0…v0.3.0 [v0.4.0]: https://github.com/martibosch/meteora/compare/v0.3.0…v0.4.0 [v0.4.1]: https://github.com/martibosch/meteora/compare/v0.4.0…v0.4.1 [v0.5.0]: https://github.com/martibosch/meteora/compare/v0.4.1…v0.5.0 [v0.6.0]: https://github.com/martibosch/meteora/compare/v0.5.0…v0.6.0 [v0.7.0]: https://github.com/martibosch/meteora/compare/v0.6.0…v0.7.0 [v0.8.0]: https://github.com/martibosch/meteora/compare/v0.7.0…v0.8.0 [v0.9.0]: https://github.com/martibosch/meteora/compare/v0.8.0…v0.9.0 [v0.10.0]: https://github.com/martibosch/meteora/compare/v0.9.0…v0.10.0 [v0.11.0]: https://github.com/martibosch/meteora/compare/v0.10.0…v0.11.0 [v0.12.0]: https://github.com/martibosch/meteora/compare/v0.11.0…v0.12.0 [v0.13.0]: https://github.com/martibosch/meteora/compare/v0.12.0…v0.13.0 [v0.14.0]: https://github.com/martibosch/meteora/compare/v0.13.0…v0.14.0 [v0.15.0]: https://github.com/martibosch/meteora/compare/v0.14.0…v0.15.0