Upgrade dependencies, including major version of @11ty/eleventy-img - #1148
Open
dependabot[bot] wants to merge 8 commits into
Open
Upgrade dependencies, including major version of @11ty/eleventy-img#1148dependabot[bot] wants to merge 8 commits into
dependabot[bot] wants to merge 8 commits into
Conversation
Bumps the npm-minor-upgrades group with 3 updates: [eslint](https://github.com/eslint/eslint), [globals](https://github.com/sindresorhus/globals) and [rollup](https://github.com/rollup/rollup). Updates `eslint` from 10.7.0 to 10.8.0 - [Release notes](https://github.com/eslint/eslint/releases) - [Commits](eslint/eslint@v10.7.0...v10.8.0) Updates `globals` from 17.7.0 to 17.8.0 - [Release notes](https://github.com/sindresorhus/globals/releases) - [Commits](sindresorhus/globals@v17.7.0...v17.8.0) Updates `rollup` from 4.62.2 to 4.62.3 - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](rollup/rollup@v4.62.2...v4.62.3) --- updated-dependencies: - dependency-name: eslint dependency-version: 10.8.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm-minor-upgrades - dependency-name: globals dependency-version: 17.8.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm-minor-upgrades - dependency-name: rollup dependency-version: 4.62.3 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm-minor-upgrades ... Signed-off-by: dependabot[bot] <support@github.com>
jgerigmeyer
approved these changes
Aug 3, 2026
…1184cdb91 * main: allow running shadow-repo manually Automated webmentions update
Contributor
Author
|
Looks like these dependencies are updatable in another way, so this is no longer needed. |
dependabot
Bot
deleted the
dependabot/npm_and_yarn/npm-minor-upgrades-e1184cdb91
branch
August 7, 2026 08:05
jgerigmeyer
restored the
dependabot/npm_and_yarn/npm-minor-upgrades-e1184cdb91
branch
August 7, 2026 16:25
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Dependabot's minor/patch group, plus three majors that needed attention:
@11ty/eleventy-img6 → 7,chalk5 → 6,markdown-it14 → 15. Onlyeleventy-img required code changes.
eleventy-img v7
v7 removed
statsSync— the API is async-only. The obvious fix (makeimage()async) doesn't work here: theimageshortcode is called frominside the
imgmacro inembed.macros.njk, used in ~179 places, andNunjucks macros compile synchronously. An async shortcode inside one
silently renders empty. Converting the macro would cascade through 62
content files.
Instead,
image()stays synchronous and metadata is pre-computed:cacheImageMetadata()runsstatsOnlyover every source image andstores the results in a map keyed by canonical path. Hooked to
eleventy.before, so it also re-runs on each watch-mode rebuild.Costs ~0.4s for 656 images — header reads only, no image processing.
imgOptionsFor(src), so the pre-pass andthe render path derive identical options from one canonical path.
image(). Content refers to thesame file in several ways (e.g.
./src/images//projects/w3c.jpg, whichv6 normalized internally).
unreadable images report the underlying sharp error.
image_cache.jsonnow carries the installed eleventy-img version. Acache written by a different version is discarded, so an upgrade can't
leave stale markup in local builds while production regenerates it.
Image generation failures now name the image
Generation is still started during render without being awaited, since
templates are synchronous. Previously a failure surfaced as an unhandled
rejection — a bare sharp stack with no indication of which image caused
it, and the build could exit before generation finished. The work is now
tracked and awaited in
eleventy.after, which fails the build with theoffending sources listed.
Output impact
Diffed a full build under the old and new dependency sets: of 668 HTML
files, 617 are byte-identical and 51 differ only because v7's
generateHTMLomits the redundant width descriptor when a srcset has asingle candidate (
srcset="x.webp 160w"→srcset="x.webp"). Spec-validand visually identical. No other differences anywhere.
markdown-it 15 and chalk 6 — no changes needed
linkifyis never enabled)markdown-it/lib/*subpathsvalidateLink/normalizeLinkusage;markdown-it-deflistisn't adependency
markdown-it-anchor/-footnote/-markverified working under v15engines.nodeis^24Rendering all 364 markdown files through v14 and v15 with the real plugin
stack produced zero output differences.
Also
...globals.es6fromeslint.config.js. That key doesn't existin the
globalspackage, so it was spreadingundefined— a silentno-op. It was also redundant:
ecmaVersion: 2022already supplies thematching ECMAScript globals. Pre-existing, not a regression from this
branch.
Verification
yarn build:prod(NETLIFY=true, which bypasses the local HTML cacheentirely) clean
and regenerated; a matching one is reused without a rewrite
source named, rather than logging and continuing