← Back to all sparks
G

gutenbergr

ANALYTICS
Velocity0.0

Search and download public domain texts from Project Gutenberg in R

gutenbergr has been rebuilt around caching and mirror resilience

text-miningr-statscachingreliabilityapi-clientopen-data
Current state
gutenbergr downloads Project Gutenberg texts into R. Its recent releases are a sustained reliability push driven largely by one contributor: a download cache with its own function family, mirror discovery with a known-good fallback, a User-Agent string identifying the client, and a section-marker helper. The newest releases are narrow compatibility and duplication fixes on top of that base.
Where it's heading
Development is aimed squarely at the failure modes of depending on a volunteer-run mirror network — cache locally, degrade gracefully when the mirror list cannot be parsed, and identify yourself politely to the servers. The version sequence in this feed is not monotonic, so recency here follows publication date rather than version number.
Prediction
Further work should continue along the caching and mirror-handling line, with dataset refreshes as the Gutenberg catalogue changes.

Recent moves

  1. 1mo ago

    Mirror listing adapted to readMDTable 0.4.0

    Adjusts mirror parsing to an upstream API change that now returns a named list of tibbles. Dependency upkeep on the mirror-resilience work.

    View source ↗
  2. 3mo ago

    Fixed duplicated lines for multi-author works

    A download correctness fix affecting works with more than one author. Narrow, but it silently corrupted output for the affected texts.

    View source ↗
  3. 3mo ago

    Mirror selection now uses the published mirror list

    Replaces the heuristic local-mirror guess with selection from the discovered mirror list, merges the language columns properly, and refreshes the bundled datasets. Note this release published after 0.5.0 — the feed's versions are not in order.

    View source ↗
  4. 5mo ago

    Section markers, a User-Agent string and usage vignettes

    Adds gutenberg_add_sections() for forward-filled section markers and makes downloads identify themselves to the mirror. The User-Agent change is small code but good citizenship on a volunteer-run network.

    View source ↗
  5. 6mo ago

    Mirror fallback instead of hard errors

    Falls back to a known stable mirror and gives instructional messages rather than erroring when the mirror list cannot be reached. Directly addresses the most common way the package fails for users.

    View source ↗
  6. 7mo ago

    Downloads are now cached, with a cache management API

    Introduces caching of downloaded works, optionally persisting across sessions, plus a gutenberg_cache_* family to list, delete and configure it. The foundation the later reliability releases build on.

    View source ↗