Skip to content

Releases: 11ty/eleventy-fetch

Eleventy Fetch v5.1.0

08 May 19:13
Compare
Choose a tag to compare
Metric Fetch v5.0.2 Fetch v5.1.0 Change
node_modules Weight 1.7 MB 0.9 MB -47%
Dependency Count 19 10 -47%
  • Removes flat-cache dependency #56
  • Swap from graceful-fs to node:fs from @outslept #63
  • Fixes Missing cache type error #61
  • Refetch data on transient network failures by @gorbak25 #57 #58
  • Fix bug with partially purged cache files on CI servers #59 #60
  • Backwards compatibility with existing cache files is preserved (note that breaking compatibility with existing cache files is considered a semver major breaking change).

Full Changelog: v5.0.2...v5.1.0
Milestone: https://github.com/11ty/eleventy-fetch/milestone/6?closed=1

Eleventy Fetch v5.1.0-beta.3

23 Apr 21:00
Compare
Choose a tag to compare
Pre-release
  • Dependency cleanup (swap from graceful-fs to node:fs) from @outslept #63

Full Changelog: v5.1.0-beta.2...v5.1.0-beta.3

Eleventy Fetch v5.1.0-beta.2

20 Mar 20:45
Compare
Choose a tag to compare
Pre-release
  • Fixes Missing cache type error #61

Full Changelog: v5.1.0-beta.1...v5.1.0-beta.2

Eleventy Fetch v5.1.0-beta.1

17 Mar 20:16
Compare
Choose a tag to compare
Pre-release
  • Refetch data on transient network failures by @gorbak25 #57 #59
  • Fix bug with partially purged cache files on CI servers #59
  • Removes flat-cache dependency: πŸ‹πŸ»β€β™€οΈ weight 1.6 MB to 1 MB and βœ… dependency count 18 to 11. #56
  • Backwards compatibility with existing cache files is preserved (otherwise this would be a major breaking change).

Milestone: https://github.com/11ty/eleventy-fetch/milestone/6?closed=1
Full Changelog: v5.0.2...v5.1.0-beta.1

Eleventy Fetch v5.0.2

07 Jan 23:20
Compare
Choose a tag to compare
  • Improved advanced API (you might not need this). Existing default export creates an instance and couples data fetching together. This release adds a Fetch named export to create a Fetch instance without fetching data automatically. Works with the concurrency queue. Use the queue() method to fetch data.
import CachedFetch, { Fetch } from "@11ty/eleventy-fetch";

let data = await CachedFetch(source, options);

// is the same as:
let inst = Fetch(source, options);
let data = await inst.queue();
  • Adds wasLastFetchCacheHit() on Fetch instances, used to solve bug with Eleventy Image disk cache 11ty/eleventy-img#146
  • Improved efficiency: Adds top level instance cache and a few internal caches to avoid duplicate fetch or file system read calls.
  • Adds internal directory manager to avoid duplicate fs.mkdir calls
  • Improved debug logs

Full Changelog: v5.0.1...v5.0.2

Eleventy Fetch v5.0.2-beta.2

04 Jan 03:53
Compare
Choose a tag to compare
Pre-release
  • Adds internal directory manager to avoid duplicate fs.mkdir calls
  • Improved debug logs

Full Changelog: v5.0.2-beta.1...v5.0.2-beta.2

Eleventy Fetch v5.0.2-beta.1

19 Dec 20:10
Compare
Choose a tag to compare
Pre-release
  • Improved advanced API (you might not need this). Existing default export creates an instance and couples data fetching together. This release adds a Fetch named export to create a Fetch instance that does not automatically fetch data and works with the concurrency queue. Use async queue() to fetch data.
import { Fetch } from "@11ty/eleventy-fetch";

let inst = Fetch(source, options);
let data = await inst.queue();

same as:

import CachedFetch from "@11ty/eleventy-fetch";

let data = await CachedFetch(source, options);
  • Adds wasLastFetchCacheHit() on Fetch instances, used to solve bug with Eleventy Image disk cache 11ty/eleventy-img#146
  • Improved efficiency: Adds top level instance cache and a few internal caches to avoid duplicate fetch or file system read calls.

Full Changelog: v5.0.1...v5.0.2-beta.1

Eleventy Fetch v5.0.1

16 Nov 20:34
Compare
Choose a tag to compare
  • Fix internals issue with missing default options on queue() function for 11ty/eleventy-img, related to 11ty/eleventy-img#252

Full Changelog: v5.0.0...v5.0.1

Eleventy Fetch v5.0.1-beta.1

16 Nov 20:07
Compare
Choose a tag to compare
Pre-release

Full Changelog: v5.0.0...v5.0.1-beta.1

Eleventy Fetch v5.0.0

16 Nov 19:26
Compare
Choose a tag to compare

11ty.dev docs for Fetch have been updated for v5.0.0: https://www.11ty.dev/docs/plugins/fetch/

npm install @11ty/eleventy-fetch@5.0.0
  • Breaking: requires Node 18+
  • Breaking: Use native fetch() and drop node-fetch dependency by @uncenter in #37
  • Not Breaking: for compatibility this package is still CommonJS (not ESM)
  • Support URL instance target #41
  • Use AbortSignal for fetch timeouts #39
  • Support custom function source (async-friendly) @doug-wade in #32
  • Allow custom filename via filenameFormat by @chriskirknielsen in #49
  • Add prettier @uncenter in #38
  • Cache request verbs (e.g. POST versus GET) separately (and request body) by @Zegnat in #34
  • Upgrade dependencies to get rid of deprecation warnings by @Zegnat in #46
  • Upgrades flat-cache dependency from v3 to v6 (internal API changes)
  • Update debug module name Eleventy:Fetch by @uncenter in #40
  • Adds support for type: "xml" (alias for "text")
  • Adds support for type: "parsed-xml" #53 returns a JS object via @rgrove’s https://github.com/rgrove/parse-xml
  • Adds returnType: "response" option to return (and cache) Response metadata, including url, status, headers, body.
  • Adds requestId option to control reuse, de-duping, unique cache keys when caching non-URL sources. Fixes a few more bugs with de-duping internally when HTTP methods and body requests are used for cache keys.