NEWS


fred 0.3.2 (2026-11-01)

fred_cache_info() sizes were 1,024 times too large

size_human started counting from kilobytes and then stepped up a unit before reporting, so a 47 KB cache was reported as "47.1 MB". Sizes now use the right unit.

API errors are no longer reported as connection failures

fred_request(), which every data function goes through, let httr2::req_perform() raise on any HTTP error and reported all of them as "Failed to connect to the FRED API. Check your internet connection". A mistyped series ID or an unregistered API key, both HTTP 400, sent users to check their network, and the status-specific handling for 400, 404 and 429 below it was unreachable. HTTP errors now reach that handling, and a 400 quotes FRED's own explanation ("The series does not exist.", "The value for variable api_key is not registered.").

Cached series now expire after 24 hours

fred_series() cached each request under a key built from its arguments and returned that copy on every later call, with no expiry. A call such as fred_series("UNRATE") therefore kept returning the observations from the first time it ran, without new releases or revisions, until the cache was cleared or cache = FALSE was passed. Cached copies are now downloaded again once they are 24 hours old. Set options(fred.cache_ttl = ) to a number of hours to change this (Inf restores the old behaviour).

fred 0.3.1 (2026-09-09)

Resubmission of 0.3.0, which CRAN's incoming checks rejected on 2026-09-08. Two problems, both now fixed.

fred 0.3.0

A research-grade upgrade in three logical blocks: (1) discoverability and reference data, (2) workflow utilities and the default plot method, and (3) reproducibility helpers. 35 exports + 4 S3 methods, 275 tests, three new vignettes.

Examples now fail gracefully when the FRED API is unreachable

Every \donttest{} example that reaches the FRED API is wrapped in try(). 14 blocks were affected. CRAN runs these in its additional-issues donttest check, on build machines the upstream host routinely refuses or rate-limits, and an example that could not reach it was an ERROR rather than a printed condition. The options(op) cache restore stays outside the try() so it runs either way.

This is the CRAN Repository Policy requirement that a package using an internet resource fail gracefully when the resource is unavailable. It is the rule obr was archived under on 2026-08-22.

Discoverability and reference data

Workflow utilities and plotting

Reproducibility helpers

Vignettes

Documentation

fred 0.2.0 (2026-04-11)

New features

Internals

fred 0.1.2 (2026-03-19)

fred 0.1.1

fred 0.1.0