climaemet 1.6.0
CRAN release: 2026-06-03
- Documentation, user-facing messages and internal code were reviewed and refactored with AI assistance to improve consistency, maintainability, wording and roxygen2 tag ordering.
- Tests now rely less on live AEMET API calls and cover additional forecast-parsing branches using local fixtures.
- Requests now use a configurable timeout via
options(climaemet_timeout = 60). -
aemet_api_key()now usestools::R_user_dir()for persistent API key storage. Existing users are migrated automatically to the new location, ensuring backward compatibility. -
aemet_forecast_fires()has been updated to support the new API, which now returns six risk levels. Risk values are returned as named factors instead of numeric level codes.
climaemet 1.5.0
CRAN release: 2026-01-11
- Updated code for deprecations in ggplot2 >= 3.5.0.
- Messages, warnings and errors are now more informative thanks to cli.
- Performance improvements: climaemet now uses
httr2::req_throttle()to manage API calls. The rate is strictly limited to the AEMET API policy: no more than 40 connections per minute per API key. - The minimum R version is now >= 4.1.0.
- Documentation and tests were updated.
climaemet 1.4.2
CRAN release: 2025-06-25
- Functions were adapted to new AEMET API response codes (#74).
-
aemet_municwas updated with January 2025 data. -
ggwindrose()now usesggplot2::coord_radial()instead ofggplot2::coord_polar()and gains thestack_reverseargument to change the order of the stacks on each petal (see #72). - The minimum required ggplot2 version is now >= 3.5.0 because
ggwindrose()now usesggplot2::coord_radial().
climaemet 1.4.1
CRAN release: 2025-03-25
- The API key with the highest remaining quota is now selected when performing a call. In prior versions, the API key was chosen randomly. This is expected to reduce API throttling.
- Use CRAN DOI: 10.32614/CRAN.package.climaemet.
-
aemet_forecast_fires()now usesterra::combineLevels()(terra >= 1.8-10).
climaemet 1.4.0
CRAN release: 2024-08-28
- Increased the timeout limit with
httr2::req_timeout(). - Improved handling of invalid, duplicated and empty API keys.
- Added terra to
Suggests. -
aemet_alert_zones()retrieves the AEMET geographical zones used for meteorological alerts. -
aemet_alerts()retrieves current meteorological alerts issued by AEMET. -
aemet_forecast_fires()retrieves forecast wildfire risk levels as aSpatRaster.
climaemet 1.3.0
CRAN release: 2024-06-23
- It is possible to use several API keys to avoid API throttling. See
?climaemet::aemet_api_key(#53). - Migrate from httr to httr2 (#50).
- Added the
dms2decdegrees_2()helper. - Added mapSpain to
Suggests. - Progress bars are used in downloads thanks to cli. Most functions gain a new
progress = TRUEargument. - Updated
aemet_municwith January 2024 data. -
aemet_beaches()andaemet_forecast_beaches()are new functions for beaches (#54).
climaemet 1.2.1
CRAN release: 2024-01-30
-
aemet_monthly_period(extract_metadata = TRUE)now honors thestartandendarguments. - Documentation was updated.
climaemet 1.2.0
CRAN release: 2023-08-30
- Metadata can now be extracted from each API call using the
extract_metadata = TRUEargument (#40). - The
aemet_stations()result is cached temporarily intempdir(), avoiding unnecessary API calls. - The API call system has improved to avoid API throttling.
climaemet 1.1.1
CRAN release: 2023-05-25
- Fix an error in the conversion to sf objects.
- Documentation was improved.
climaemet 1.1.0
CRAN release: 2023-02-16
- Added lubridate and scales to
Suggests. - Added the
aemet_municdataset. - Added
vignette("extending-climaemet", package = "climaemet"). - Fixed an error in
ggclimat_walter_lieth()(#35). - Improved
get_data_aemet()andget_metadata_aemet()to support more endpoints. -
aemet_forecast_daily(),aemet_forecast_tidy(),aemet_forecast_hourly()andaemet_forecast_vars_available()are new forecast functions.
climaemet 1.0.1
CRAN release: 2022-02-24
- Added a new citation.
- Updated examples.
- climaemet no longer emits messages when loaded.
- Removed the lubridate dependency.
climaemet 1.0.0
CRAN release: 2021-09-16
- climaemet joined the rOpenSpain project and its repository moved to https://github.com/rOpenSpain/climaemet.
Breaking changes
- The
apikeyargument has been deprecated in all functions. The API key is now globally managed via an environment variable. Seeaemet_api_key().
Major changes
- API functions gain new arguments, such as
verbose, to check results. - Tabular results are now returned as tibble objects.
- Results are parsed into the correct formats when possible, including numbers and dates.
- Spatial support: the
return_sfargument returns sf objects instead of tibble objects. sf (>= 0.9) is listed inSuggests, so it is not strictly required.
Enhancements
- New example datasets:
climaemet_9434_climatogram,climaemet_9434_tempandclimaemet_9434_wind. - Plot functions gain new arguments (
verboseand...). Colors can now be passed to the plotting functions. -
aemet_daily_clim()is now vectorized and can also retrieve all stations withstation = "all". -
aemet_last_obs()is now vectorized and can also retrieve all stations withstation = "all". -
get_metadata_aemet()is a new function. -
ggclimat_walter_lieth()is a new function. It is now the default forclimatogram_*functions (experimental). Old behavior can be reproduced with optionggplot2 = FALSE.
climaemet 0.2.0
CRAN release: 2020-07-17
-
climatogram_normal()is a new function for plotting a Walter-Lieth climate diagram from climatological normal values. -
climatogram_period()is a new function for plotting a Walter-Lieth climate diagram for a specified period. -
ggstripes_station()has been renamed toclimatestripes_station(). -
ggwindrose()is a new function for plotting wind roses. -
windrose_days()is a new function for plotting a wind rose for a weather station over a range of days. -
windrose_period()is a new function for plotting a wind rose for a weather station over a specified period.
