Skip to content

Bump @11ty/eleventy-img from 6.0.4 to 7.0.0 in the npm-major-upgrades group - #1158

Merged
jgerigmeyer merged 3 commits into
mainfrom
dependabot/npm_and_yarn/npm-major-upgrades-219192d8eb
Aug 14, 2026
Merged

Bump @11ty/eleventy-img from 6.0.4 to 7.0.0 in the npm-major-upgrades group#1158
jgerigmeyer merged 3 commits into
mainfrom
dependabot/npm_and_yarn/npm-major-upgrades-219192d8eb

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 14, 2026

Copy link
Copy Markdown
Contributor

Bumps @11ty/eleventy-img 6.0.4 → 7.0.0, which removed statsSync in favor of an async-only API.

Making image() async isn't viable here: it's called from inside the img macro in embed.macros.njk (~179 call sites), and Nunjucks macros compile synchronously — an async shortcode inside one silently renders empty.

So image() stays synchronous, and metadata is pre-computed instead:

  • cacheImageMetadata() runs statsOnly over every source image into a lookup keyed by canonical path, hooked to eleventy.before. ~0.4s for 656 images — header reads only, no processing.
  • finishImages() on eleventy.after awaits the generation that renders kick off but can't await, and fails the build naming any image that errored. It also writes the local HTML cache, which may only happen once every image is known to have succeeded.
  • image_cache.json now carries the eleventy-img version, so a cache from a different version is discarded rather than serving stale markup.

Output impact

Of 663 HTML files, 612 are byte-identical to the v6 build and 51 differ only because v7 drops the redundant width descriptor when a srcset has a single candidate (srcset="x.webp 160w"srcset="x.webp"). No other differences.


Bumps the npm-major-upgrades group with 1 update: @11ty/eleventy-img.

Updates @11ty/eleventy-img from 6.0.4 to 7.0.0

Release notes

Sourced from @​11ty/eleventy-img's releases.

Image v7.0.0: The Memory Efficiency Release

TL;DR: ESM-only, Node 22+ minimum, and huge memory and performance wins over v6.

Thank you to @​sentience, @​valadaptive, @​kirthi-b, @​jens-struct, and @​jornmineur for their contributions to this release!

Issue Milestone: https://github.com/11ty/eleventy-img/milestone/25?closed=1 Full Changelog: v6.0.4...v7.0.0

Breaking changes

  • Node 22 or newer is required. This matches Core v4. #351
  • The package is now ESM. This is unlikely to require any changes as the Node minimum now supports require(esm). #300
    • ESM: import Image from "@11ty/eleventy-img"
    • CommonJS friendly: const Image = await import("@11ty/eleventy-img")
  • Upgrades sharp from v0.33 to v0.35 #352, #289
    • You can review the upstream v0.34 and v0.35 changelogs.

And a few breaking changes that are unlikely to affect most projects:

  • If you use the Transform method and set both width and eleventy:widths on the same element, note that eleventy:widths now takes priority. #314
  • Image.statsSync and Image.statsByDimensionsSync have been removed after being deprecated in 2024. Use the statsOnly feature instead, like so: await Image(src, { statsOnly: true, /* …options */ }). Helpful error messaging is provided if your project uses these (so don’t worry about it until you run into it, they weren’t commonly used). #211 #295
  • Removes the <eleventy-image> WebC component (use the transform method instead) #305

New Features

  • New passthrough format (usage: formats: ["passthrough"]) copies and uses the source file directly, while still adding width and height attributes to the generated output. Useful when you've already optimized your source images and want to skip the optimization pipeline — about 20× faster in local benchmarks. [Example on #212](11ty/image#212). Also #133, #183, #309
  • New eleventy:sizes attribute allows overriding any sizes attribute in markup #306
  • New manualCacheKey option to improve the cropping API #271 #274 by @​jens-struct

Bug Fixes

  • Huge memory usage improvements from @​sentience in #313 and @​jornmineur in #302 #319 (v6 had issues, but we’ve eclipsed v5 performance with this release 🏆)
  • Removes the w descriptor when only one size is used in srcset, fixing valid HTML output when only one width is used and no sizes is present (#298).
  • Fixes eleventy:ignore appearing in output on <img> tags inside <picture> elements — by @​valadaptive in #303.
  • Decodes HTML entities on <img src> when read back from HTML, by @​kirthi-b #349 #307

Internals

Image v7.0.0-alpha.5

This is likely the last pre-release before v7 stable.

  • Breaking change: Node minimum is now 22+ (matching core v4) #351
  • Breaking change: removes deprecated (since 2024) synchronous functions Image.statsSync and Image.statsByDimensionsSync #211 #295
  • Breaking change: ugprades to sharp v0.35 #352 see upstream sharp changes

... (truncated)

Commits
Maintainer changes

This version was pushed to npm by GitHub Actions, a new releaser for @​11ty/eleventy-img since your current version.


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Bumps the npm-major-upgrades group with 1 update: [@11ty/eleventy-img](https://github.com/11ty/image).


Updates `@11ty/eleventy-img` from 6.0.4 to 7.0.0
- [Release notes](https://github.com/11ty/image/releases)
- [Commits](11ty/image@v6.0.4...v7.0.0)

---
updated-dependencies:
- dependency-name: "@11ty/eleventy-img"
  dependency-version: 7.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: npm-major-upgrades
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Aug 14, 2026
@jgerigmeyer
jgerigmeyer requested a review from jamesnw August 14, 2026 16:21
@jgerigmeyer

Copy link
Copy Markdown
Member

@jamesnw I'd appreciate your review on this before merge.

@jamesnw jamesnw left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good to me, and seems to work. 🚀

@jgerigmeyer
jgerigmeyer merged commit c3b5a8c into main Aug 14, 2026
7 checks passed
@jgerigmeyer
jgerigmeyer deleted the dependabot/npm_and_yarn/npm-major-upgrades-219192d8eb branch August 14, 2026 18:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants