Update dependency @11ty/eleventy to v3 #258

Open
renovate-bot wants to merge 1 commit from renovate/11ty-eleventy-3.x into develop
Collaborator

This PR contains the following updates:

Package Type Update Change
@11ty/eleventy (source) devDependencies major ^2.0.1 -> ^3.1.0

Release Notes

11ty/eleventy (@​11ty/eleventy)

v3.1.0: Eleventy v3.1.0: 11% faster and 22% smaller!

Compare Source

Try it out in your project

npm install @​11ty/eleventy@latest

Read more about getting started with Eleventy or why you should use Eleventy.

What’s new?

Bug fixes

  • Bug fix for returning non-traditional data with eleventyConfig.addCollection API #​3467
  • Internals: consolidates TemplateMap with Dependency Graph for more accurate build order during incremental builds (fixing unrendered template errors) #​3410 (Fair warning: this was a big change!)
  • Fix duplicate permaink error on Windows after file delete and re-add #​3631
  • Fix (and better error messaging) for link.slice is not a function errors when using function permalinks #​3472 #​3619
  • Improvements to bundler-friendiness of imports (using Programmatic API in serverless contexts) #​3656
  • Fix when using eleventyConfig.setUseTemplateCache(false); and 11ty.js JavaScript templates #​3667
  • Fix for passthrough copy output locations during incremental builds #​3285
  • Check Error.cause for TemplateContentPrematureUseError when rendering by @​noelforte in https://github.com/11ty/eleventy/pull/3651
  • Fix dateValue.toLowerCase() is not a function error when using addDateParsing API #​3674

Dependency Watch

Version Production Dep Count Production Size
v3.1.0 ×142 21.4 MB
v3.0.0 ×187 27.4 MB
v2.0.1 ×215 36.4 MB
v1.0.2 ×356 73.3 MB
Major Upgrades

eleventy-benchmark Build Performance

---------------------------------------------------------
Eleventy Benchmark (Node v22.13.1, 2500 templates each)
---------------------------------------------------------
Eleventy 3.0.0                                        
---------------------------------------------------------
.liquid: ... 3 runs:          
* Median: 1.43 seconds
* Median per template: 572 µs

.njk: ... 3 runs:             
* Median: 2.03 seconds
* Median per template: 812 µs

.md: ... 3 runs:              
* Median: 1.79 seconds
* Median per template: 716 µs

---------------------------------------------------------
Eleventy 3.1.0-beta.1                                        
---------------------------------------------------------
.liquid: ... 3 runs:          
* Median: 1.3 seconds (-10%)
* Median per template: 520 µs (-10%)

.njk: ... 3 runs:             
* Median: 1.81 seconds (-11%)
* Median per template: 724 µs (-11%)

.md: ... 3 runs:              
* Median: 1.61 seconds (-11%)
* Median per template: 644 µs (-11%)

We’re showing the benchmark from the latest beta here — there were no core code changes between v3.1.0-beta.1 and v3.1.0.

v3.0.0: Eleventy v3.0.0: Possums ❤️ ESM

Compare Source

We did it. After 22 pre-releases and over a year of work, Eleventy 3.0.0 is now available. You can try it out now on your project using:

npm install @​11ty/eleventy@latest

If you’re upgrading from a previous version of Eleventy, use the Upgrade Help plugin for automated checks and help with your upgrade!

Why should you use Eleventy? Eleventy is a flexible and production-ready site generator known for its zero-client JavaScript footprint, speedy sites, speedy builds, and full control over the output.

A few numbers on the best version of Eleventy yet:

Stats v2.0.1 v3.0.0
20% smaller 35.2 MB 28.1 MB
11% fewer dependencies 213 189
9% faster npm install 4.511s* 4.103s*

*fastest time of 3 runs (bypassing local cache)

Flagship 3.0 features

  1. Eleventy is now written in ESM with full support for ESM in your projects: configuration, data files, 11ty.js templates, etc. For many projects this won’t be a breaking change and we’ll continue to support CommonJS too. Every example on the docs now includes both a CommonJS and ESM version. Docs: https://v3.11ty.dev/docs/cjs-esm/
// ESM
export default function(eleventyConfig) {}

// We’ll keep supporting CommonJS:
module.exports = function(eleventyConfig) {}
  1. Supporting more package managers and runtimes: pnpm, yarn, Deno. More examples on the docs! https://v3.11ty.dev/docs/
  2. Asynchronous configuration #​614 Docs: https://v3.11ty.dev/docs/config/
// ESM
export default async function(eleventyConfig) {}

// CommonJS
module.exports = async function(eleventyConfig) {}
  1. For-free performance improvement to built-in slugify, inputPathToUrl universal filters (via memoization) #​840 Docs: https://v3.11ty.dev/docs/memoize/
  2. Named config export improves consistency for plugins #​3246 and set*Directory configuration API methods #​1503 Docs: https://v3.11ty.dev/docs/config-shapes/#optional-export-config-object and https://v3.11ty.dev/docs/config/#configuration-options
export default function(eleventyConfig) {
  eleventyConfig.setInputDirectory(".");
  eleventyConfig.setOutputDirectory("_site");
};

export const config = {
  dir: {
    input: ".",
    output: "_site"
  },
};
  1. Virtual Templates, configuration API to add content (great for plugins, used by the new RSS plugin!) #​1612 Docs: https://v3.11ty.dev/docs/virtual-templates/
export default function(eleventyConfig) {
  eleventyConfig.addTemplate("robots.njk", "User-agent: *\nAllow: /", {
    permalink: "/robots.txt",
  });
};
  1. IdAttribute plugin adds id attributes to headings for on-page anchor links (supports all template-languages) #​3363 Docs: https://v3.11ty.dev/docs/plugins/id-attribute/
<h1>Welcome to my web site</h1> becomes <h1 id="welcome-to-my-web-site">Welcome to my web site</h1>
  1. Plain-text Bundler included: https://v3.11ty.dev/docs/plugins/bundle/
export default function(eleventyConfig) {
  eleventyConfig.addBundle("css"); // Adds {% css %} paired shortcode to create per-page CSS bundles
};
  1. InputPath to URL plugin lets you link directly to an input file path (and we’ll output the right URL) Docs: https://www.11ty.dev/docs/plugins/inputpath-to-url/
<a href="my-template.md">Home</a> becomes <a href="/my-template/">Home</a>
  1. Use arbitrary JavaScript with the js Front Matter #​2819 Docs: https://v3.11ty.dev/docs/data-frontmatter/#javascript-front-matter
---js
const hello = "hi";
---
{{ hello }}
  1. page.rawInput unlocks access to raw template content #​1206 https://v3.11ty.dev/docs/data-eleventy-supplied/#page-variable
  2. addPreprocessor configuration API to modify raw content before rendering works for file ignores and drafts #​188 Docs: https://v3.11ty.dev/docs/config-preprocessors/
  3. addDateParsing configuration API to add your own custom date parsing logic #​867 Docs: https://v3.11ty.dev/docs/dates/#configuration-api-for-custom-date-parsing
  4. eleventyDataSchema data option to validate data cascade values #​879 Docs: https://v3.11ty.dev/docs/data-validate/
  5. Reserved Eleventy properties in data cascade are now frozen #​1173 Docs: https://v3.11ty.dev/docs/data-eleventy-supplied/#frozen-data
  6. Support for asynchronous plugins and async-friendly addPlugin configuration API #​2675 Docs: https://v3.11ty.dev/docs/plugins/#plugins-are-configuration
  7. useLayouts option for Custom Template Languages allows opt-out of Eleventy Layouts #​2830 Docs: https://v3.11ty.dev/docs/languages/custom/#uselayouts
  8. renderTransforms Universal Filter will run project transforms on an arbitrary block of content (useful for RSS and other feeds) #​3294
  9. --incremental=filename.md on the command line #​3324 Docs: https://v3.11ty.dev/docs/usage/#incremental-for-partial-incremental-builds
  10. renderContent Universal Filter now included with Render Plugin #​3370 Docs: https://v3.11ty.dev/docs/plugins/render/#rendercontent-filter
  11. Dev Server updates including onRequest API for handling requests dynamically during development (used with the new Image Transform plugin)

Breaking Changes and Upgrade Path

Rather than navigating this list manually, use the Upgrade Help plugin for automated project checks and upgrade help!

Minutiae

Full Eleventy v3 Milestone (177 closed): https://github.com/11ty/eleventy/milestone/40?closed=1
Full Changelog: https://github.com/11ty/eleventy/compare/v2.0.1...v3.0.0

Thank You Notes

This release would not have been possible without our community and supporters.

  • To everyone that has built something with Eleventy: thank you!
  • To everyone that has answered a question about Eleventy: on the Discord, on social media, in GitHub issues or discussion, at your local meetup or coffee shop: thank you!
  • To everyone that attended the 11ty Conference earlier this year: thank you!
  • To everyone that brought a well-intentioned complaint about something you didn’t like about Eleventy: thank you!
  • To everyone that dropped a few nice words of appreciation: thank you!
  • To everyone that has supported us and made this release possible: thank you!

Thank you to @​bobmonsour, @​pdehaan, @​Snapstromegon, @​cdransf, @​5t3ph, @​BenDMyers, @​siakaramalegos, @​shivjm, @​dleatherman, @​darthmall, @​clottman, @​nachtfunke, @​David-Large, Olivia Nicholson, and @​mneumegen for their community contributions!

Thank you for the code contributions from @​VividVisions, @​mayank99, @​Zearin, @​chriskirknielsen, @​mendhak, @​fqueze, @​shivjm, @​rdela, @​w0whitaker, @​vrugtehagel, @​sachac, @​Snapstromegon, @​alifeee, @​uncenter, @​Zwyx, @​mayankkamboj47, @​aschrab, @​jgarber623, @​korverdev, @​mathertel, @​mathieuprog, @​epelc, @​Ryuno-Ki, @​lexoyo, @​satgo1546, @​KiwiKilian


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [@11ty/eleventy](https://www.11ty.dev/) ([source](https://github.com/11ty/eleventy)) | devDependencies | major | [`^2.0.1` -> `^3.1.0`](https://renovatebot.com/diffs/npm/@11ty%2feleventy/2.0.1/3.1.0) | --- ### Release Notes <details> <summary>11ty/eleventy (@&#8203;11ty/eleventy)</summary> ### [`v3.1.0`](https://github.com/11ty/eleventy/releases/tag/v3.1.0): Eleventy v3.1.0: 11% faster and 22% smaller! [Compare Source](https://github.com/11ty/eleventy/compare/v3.0.0...v3.1.0) #### Try it out in your project npm install @&#8203;11ty/eleventy@latest Read more about [getting started with Eleventy](https://www.11ty.dev/docs/) or [why you should use Eleventy](https://www.11ty.dev/#why-should-you-use-eleventy). - **v3.1.0 Issue Milestone**: https://github.com/11ty/eleventy/milestone/47?closed=1 - **Compare with v3.0.0**: https://github.com/11ty/eleventy/compare/v3.0.0...v3.1.0 #### What’s new? - Support for Import Attributes [#&#8203;3580](https://github.com/11ty/eleventy/issues/3580) e.g. `import data from './data.json' with { type: 'json' };`, see https://github.com/11ty/eleventy-dependency-tree-esm/issues/2 and https://github.com/11ty/eleventy-dependency-tree-esm/issues/4 - Build performance improvements over v3.0.0 in https://github.com/11ty/eleventy/pull/3493 - Improve build performance ~50ms (dynamic dev server import only on --serve) by [@&#8203;boehs](https://github.com/boehs) in https://github.com/11ty/eleventy/pull/3689 - Adds `html-relative` Passthrough Copy mode for relative asset references in HTML. Learn more at https://github.com/11ty/eleventy/pull/3573 (from issue [#&#8203;3552](https://github.com/11ty/eleventy/issues/3552)) - A whole bunch of Dev Server updates and fixes, most notably https://github.com/11ty/eleventy-dev-server/releases/tag/v2.0.7 - Add subpath export for UserConfig type definitions ([#&#8203;3460](https://github.com/11ty/eleventy/issues/3460)) by [@&#8203;noelforte](https://github.com/noelforte) in https://github.com/11ty/eleventy/pull/3562 - IdAttribute plugin has `checkDuplicates` option (always enabled by default, now allows you to disable) [#&#8203;3560](https://github.com/11ty/eleventy/issues/3560) Docs: https://www.11ty.dev/docs/plugins/id-attribute/#with-options - Error messaging improvements: - Improved error messaging when attempting to link to a `permalink: false` template (in the HTML `<base>` plugin) [#&#8203;3503](https://github.com/11ty/eleventy/issues/3503) - Better errors with Custom template types with non-string permalink values: [#&#8203;3472](https://github.com/11ty/eleventy/issues/3472) - Improved error messaging with syntax errors in `.11ty.js` files [#&#8203;3571](https://github.com/11ty/eleventy/issues/3571) - Improved require(esm) error messaging to reflect proper support in Node v22.12 [#&#8203;3568](https://github.com/11ty/eleventy/issues/3568) - Error stack improvements by [@&#8203;noelforte](https://github.com/noelforte) in https://github.com/11ty/eleventy/pull/3572 #### Bug fixes - Bug fix for returning non-traditional data with `eleventyConfig.addCollection` API [#&#8203;3467](https://github.com/11ty/eleventy/issues/3467) <!----> - Internals: consolidates TemplateMap with Dependency Graph for more accurate build order during incremental builds (fixing unrendered template errors) [#&#8203;3410](https://github.com/11ty/eleventy/issues/3410) *(Fair warning: this was a big change!)* - Fix duplicate permaink error on Windows after file delete and re-add [#&#8203;3631](https://github.com/11ty/eleventy/issues/3631) - Fix (and better error messaging) for `link.slice is not a function` errors when using function permalinks [#&#8203;3472](https://github.com/11ty/eleventy/issues/3472) [#&#8203;3619](https://github.com/11ty/eleventy/issues/3619) - Improvements to bundler-friendiness of imports (using Programmatic API in serverless contexts) [#&#8203;3656](https://github.com/11ty/eleventy/issues/3656) - Fix when using `eleventyConfig.setUseTemplateCache(false);` and `11ty.js` JavaScript templates [#&#8203;3667](https://github.com/11ty/eleventy/issues/3667) - Fix for passthrough copy output locations during incremental builds [#&#8203;3285](https://github.com/11ty/eleventy/issues/3285) - Check `Error.cause` for `TemplateContentPrematureUseError` when rendering by [@&#8203;noelforte](https://github.com/noelforte) in https://github.com/11ty/eleventy/pull/3651 - Fix `dateValue.toLowerCase() is not a function` error when using addDateParsing API [#&#8203;3674](https://github.com/11ty/eleventy/issues/3674) <!----> - Improvements to engine consistency (improved use of Nunjucks cache) [#&#8203;3736](https://github.com/11ty/eleventy/issues/3736) - Fixes `eleventy.templateModified` listeners warning [#&#8203;3735](https://github.com/11ty/eleventy/issues/3735) - Fixes for bugs with merging Arrays in `eleventyComputed`. Arrays are now treated as a single entity when merging over non-computed data. Arrays will still be merged in the data cascade from multiple `eleventyComputed` entries. [#&#8203;3728](https://github.com/11ty/eleventy/issues/3728) - Fix bug with collection definition on subsequent builds [#&#8203;3711](https://github.com/11ty/eleventy/issues/3711) - HtmlBasePlugin: Fix confusing error message by [@&#8203;noelleleigh](https://github.com/noelleleigh) in https://github.com/11ty/eleventy/pull/3709 - Fix import-related error with CommonJS modules in Node 23 by [@&#8203;vrugtehagel](https://github.com/vrugtehagel) in https://github.com/11ty/eleventy/pull/3519 [#&#8203;3518](https://github.com/11ty/eleventy/issues/3518) - Fix for InputPathToUrl plugin to support unencoded paths with spaces [#&#8203;3559](https://github.com/11ty/eleventy/issues/3559) [#&#8203;3583](https://github.com/11ty/eleventy/issues/3583) #### Dependency Watch <table> <thead> <tr> <th>Version</th> <th>Production Dep Count</th> <th>Production Size</th> </tr> </thead> <tbody> <tr> <td><code>v3.1.0</code></td> <td><code>×142</code></td> <td><code>21.4 MB</code></td> </tr> <tr> <td><code>v3.0.0</code></td> <td><code>×187</code></td> <td><code>27.4 MB</code></td> </tr> <tr> <td><code>v2.0.1</code></td> <td><code>×215</code></td> <td><code>36.4 MB</code></td> </tr> <tr> <td><code>v1.0.2</code></td> <td><code>×356</code></td> <td><code>73.3 MB</code></td> </tr> </tbody> </table> - Bumps `liquidjs` dependency to `10.21.0` (from `10.17.0`) - Removes `rifraf` dependency by [@&#8203;jeffalo](https://github.com/jeffalo) [#&#8203;3622](https://github.com/11ty/eleventy/issues/3622) [#&#8203;3673](https://github.com/11ty/eleventy/issues/3673) - A bunch of improvements from [@&#8203;e18e](https://github.com/e18e) org folks! Upstream issue: https://github.com/e18e/ecosystem-issues/issues/164 - Dependency optimization by [@&#8203;outslept](https://github.com/outslept) in https://github.com/11ty/eleventy/pull/3715 - Replace glob packages with lighter alternatives – `fast-glob` + `is-glob` -> `tinyglobby`, `micromatch` -> `picomatch` by [@&#8203;pralkarz](https://github.com/pralkarz) in https://github.com/11ty/eleventy/pull/3680 ##### Major Upgrades - `@11ty/dependency-tree` from v3 to v4 (bumps to Node 18+) https://github.com/11ty/eleventy-dependency-tree/releases/tag/v4.0.0 - `@11ty/dependency-tree-esm` from v1 to v2 (bumps to Node 18+) https://github.com/11ty/eleventy-dependency-tree-esm/releases/tag/v2.0.0 - `@11ty/eleventy-utils` from v1 to v2 (bumps to Node 18+) https://github.com/11ty/eleventy-utils/releases/tag/v2.0.0 - `@11ty/recursive-copy` from v3 to v4 (bumps to Node 18+, dependency cleanup) https://github.com/11ty/recursive-copy/releases/tag/v4.0.0 - `entities` from v5 to v6 (upstream change related to deep import paths https://github.com/fb55/entities/releases/tag/v6.0.0) #### [`eleventy-benchmark`](https://github.com/11ty/eleventy-benchmark) Build Performance --------------------------------------------------------- Eleventy Benchmark (Node v22.13.1, 2500 templates each) --------------------------------------------------------- Eleventy 3.0.0 --------------------------------------------------------- .liquid: ... 3 runs: * Median: 1.43 seconds * Median per template: 572 µs .njk: ... 3 runs: * Median: 2.03 seconds * Median per template: 812 µs .md: ... 3 runs: * Median: 1.79 seconds * Median per template: 716 µs --------------------------------------------------------- Eleventy 3.1.0-beta.1 --------------------------------------------------------- .liquid: ... 3 runs: * Median: 1.3 seconds (-10%) * Median per template: 520 µs (-10%) .njk: ... 3 runs: * Median: 1.81 seconds (-11%) * Median per template: 724 µs (-11%) .md: ... 3 runs: * Median: 1.61 seconds (-11%) * Median per template: 644 µs (-11%) *We’re showing the benchmark from the latest beta here — there were no core code changes between v3.1.0-beta.1 and v3.1.0.* ### [`v3.0.0`](https://github.com/11ty/eleventy/releases/tag/v3.0.0): Eleventy v3.0.0: Possums ❤️ ESM [Compare Source](https://github.com/11ty/eleventy/compare/v2.0.1...v3.0.0) We did it. After 22 pre-releases and over a year of work, Eleventy 3.0.0 is now available. You can try it out now on your project using: ```js npm install @&#8203;11ty/eleventy@latest ``` **If you’re upgrading from a previous version** of Eleventy, use the [Upgrade Help plugin](https://v3.11ty.dev/docs/plugins/upgrade-help/) for automated checks and help with your upgrade! **[Why should you use Eleventy?](https://v3.11ty.dev/#why-should-you-use-eleventy)** Eleventy is a flexible and production-ready site generator known for its zero-client JavaScript footprint, [speedy sites, speedy builds](https://v3.11ty.dev/docs/performance/), and [full control over the output](https://www.youtube.com/watch?v=b4frtsT4Cgo). A few numbers on the best version of Eleventy yet: | Stats | `v2.0.1` | `v3.0.0` | | - | - | - | | 20% smaller | 35.2 MB | 28.1 MB | | 11% fewer dependencies | 213 | 189 | | 9% faster npm install | 4.511s\* | 4.103s\* | *\*fastest time of 3 runs (bypassing local cache)* #### Flagship 3.0 features 1. Eleventy is now written in ESM with **full** support for ESM in your projects: configuration, data files, 11ty.js templates, etc. For many projects this won’t be a breaking change and we’ll continue to support CommonJS too. Every example on the docs now includes both a CommonJS and ESM version. Docs: https://v3.11ty.dev/docs/cjs-esm/ ```js // ESM export default function(eleventyConfig) {} // We’ll keep supporting CommonJS: module.exports = function(eleventyConfig) {} ``` 2. Supporting more package managers and runtimes: pnpm, yarn, Deno. More examples on the docs! https://v3.11ty.dev/docs/ 3. Asynchronous configuration [#&#8203;614](https://github.com/11ty/eleventy/issues/614) Docs: https://v3.11ty.dev/docs/config/ ```js // ESM export default async function(eleventyConfig) {} // CommonJS module.exports = async function(eleventyConfig) {} ``` 4. For-free performance improvement to built-in `slugify`, `inputPathToUrl` universal filters (via memoization) [#&#8203;840](https://github.com/11ty/eleventy/issues/840) Docs: https://v3.11ty.dev/docs/memoize/ 5. Named `config` export improves consistency for plugins [#&#8203;3246](https://github.com/11ty/eleventy/issues/3246) and `set*Directory` configuration API methods [#&#8203;1503](https://github.com/11ty/eleventy/issues/1503) Docs: https://v3.11ty.dev/docs/config-shapes/#optional-export-config-object and https://v3.11ty.dev/docs/config/#configuration-options ```js export default function(eleventyConfig) { eleventyConfig.setInputDirectory("."); eleventyConfig.setOutputDirectory("_site"); }; export const config = { dir: { input: ".", output: "_site" }, }; ``` 6. Virtual Templates, configuration API to add content (great for plugins, used by the new RSS plugin!) [#&#8203;1612](https://github.com/11ty/eleventy/issues/1612) Docs: https://v3.11ty.dev/docs/virtual-templates/ ```js export default function(eleventyConfig) { eleventyConfig.addTemplate("robots.njk", "User-agent: *\nAllow: /", { permalink: "/robots.txt", }); }; ``` 7. IdAttribute plugin adds `id` attributes to headings for on-page anchor links (supports all template-languages) [#&#8203;3363](https://github.com/11ty/eleventy/issues/3363) Docs: https://v3.11ty.dev/docs/plugins/id-attribute/ ```html <h1>Welcome to my web site</h1> becomes <h1 id="welcome-to-my-web-site">Welcome to my web site</h1> ``` 8. Plain-text Bundler included: https://v3.11ty.dev/docs/plugins/bundle/ ```js export default function(eleventyConfig) { eleventyConfig.addBundle("css"); // Adds {% css %} paired shortcode to create per-page CSS bundles }; ``` 9. InputPath to URL plugin lets you link directly to an input file path (and we’ll output the right URL) Docs: https://www.11ty.dev/docs/plugins/inputpath-to-url/ ```html <a href="my-template.md">Home</a> becomes <a href="/my-template/">Home</a> ``` 10. Use arbitrary JavaScript with the `js` Front Matter [#&#8203;2819](https://github.com/11ty/eleventy/issues/2819) Docs: https://v3.11ty.dev/docs/data-frontmatter/#javascript-front-matter ```js ---js const hello = "hi"; --- {{ hello }} ``` 11. `page.rawInput` unlocks access to raw template content [#&#8203;1206](https://github.com/11ty/eleventy/issues/1206) https://v3.11ty.dev/docs/data-eleventy-supplied/#page-variable 12. `addPreprocessor` configuration API to modify raw content before rendering works for file ignores and drafts [#&#8203;188](https://github.com/11ty/eleventy/issues/188) Docs: https://v3.11ty.dev/docs/config-preprocessors/ 13. `addDateParsing` configuration API to add your own custom date parsing logic [#&#8203;867](https://github.com/11ty/eleventy/issues/867) Docs: https://v3.11ty.dev/docs/dates/#configuration-api-for-custom-date-parsing 14. `eleventyDataSchema` data option to validate data cascade values [#&#8203;879](https://github.com/11ty/eleventy/issues/879) Docs: https://v3.11ty.dev/docs/data-validate/ 15. Reserved Eleventy properties in data cascade are now frozen [#&#8203;1173](https://github.com/11ty/eleventy/issues/1173) Docs: https://v3.11ty.dev/docs/data-eleventy-supplied/#frozen-data 16. Support for asynchronous plugins and async-friendly `addPlugin` configuration API [#&#8203;2675](https://github.com/11ty/eleventy/issues/2675) Docs: https://v3.11ty.dev/docs/plugins/#plugins-are-configuration 17. `useLayouts` option for Custom Template Languages allows opt-out of Eleventy Layouts [#&#8203;2830](https://github.com/11ty/eleventy/issues/2830) Docs: https://v3.11ty.dev/docs/languages/custom/#uselayouts 18. `renderTransforms` Universal Filter will run project transforms on an arbitrary block of content (useful for RSS and other feeds) [#&#8203;3294](https://github.com/11ty/eleventy/issues/3294) 19. `--incremental=filename.md` on the command line [#&#8203;3324](https://github.com/11ty/eleventy/issues/3324) Docs: https://v3.11ty.dev/docs/usage/#incremental-for-partial-incremental-builds 20. `renderContent` Universal Filter now included with Render Plugin [#&#8203;3370](https://github.com/11ty/eleventy/issues/3370) Docs: https://v3.11ty.dev/docs/plugins/render/#rendercontent-filter 21. Dev Server updates including [`onRequest` API for handling requests dynamically during development](https://github.com/11ty/eleventy-dev-server/releases/tag/v2.0.0) (used with the new [Image Transform plugin](https://v3.11ty.dev/docs/plugins/image/#eleventy-transform)) #### Breaking Changes and Upgrade Path **Rather than navigating this list manually, use the [Upgrade Help plugin](https://v3.11ty.dev/docs/plugins/upgrade-help/) for automated project checks and upgrade help!** - Requires Node 18 or newer. - Removes Serverless and Edge plugins. - Use of bundled Eleventy plugins from CommonJS requires changing `require("@&#8203;11ty/eleventy")` to `await import("@&#8203;11ty/eleventy")` for ESM reasons. We provide [helpful error messaging for this](https://www.zachleat.com/web/future-friendly-esm/). - `pug`, `ejs`, `haml`, `mustache`, and `handlebars` template languages moved from core to official plugins: - `handlebars`: https://v3.11ty.dev/docs/languages/handlebars/ - `mustache`: https://v3.11ty.dev/docs/languages/mustache/ - `ejs`: https://v3.11ty.dev/docs/languages/ejs/ - `haml`: https://v3.11ty.dev/docs/languages/haml/ - `pug`: https://v3.11ty.dev/docs/languages/pug/ - Throw errors if `--config=` command line file is missing [#&#8203;3373](https://github.com/11ty/eleventy/issues/3373) - The `htmlOutputSuffix` feature was removed [#&#8203;3327](https://github.com/11ty/eleventy/issues/3327) - Aliased custom templates must be declared in active formats [#&#8203;3302](https://github.com/11ty/eleventy/issues/3302) - `--formats=` and `--formats=""` on command line means no formats (previously aliased to `*`) [#&#8203;3255](https://github.com/11ty/eleventy/issues/3255) - Custom Template Language `compileOptions.permalink` option changed from `true` to `"raw"` [#&#8203;2780](https://github.com/11ty/eleventy/issues/2780) - Major semver updates of dependencies: - `js-yaml` [v3 to v4 Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md#400---2021-01-03) - Better error messaging when using tabs in YAML - Numbers are now parsed according to YAML 1.2 spec (from 1.1) - `@sindresorhus/slugify` [v2 to v3 Changelog](https://github.com/sindresorhus/slugify/releases/tag/v2.0.0): Node 12+, Pure ESM - `bcp-47-normalize` [v1 to v2 Changelog](https://github.com/wooorm/bcp-47-normalize/releases/tag/2.0.0): Pure ESM - `dependency-graph` [v0.x to v1 Changelog](https://github.com/jriecken/dependency-graph/blob/master/CHANGELOG.md#100-dec-5-2023) - `iso-639-1` [v2 to v3 Changelog](https://github.com/meikidd/iso-639-1/blob/master/CHANGELOG.md#v300): Pure ESM - `markdown-it` [v13 to v14 Changelog](https://github.com/markdown-it/markdown-it/blob/master/CHANGELOG.md#1400---2023-12-08): Pure ESM, removed `dist` folder - [Full list of breaking changes](https://github.com/11ty/eleventy/issues?q=milestone%3A%22Eleventy+3.0.0%22+is%3Aclosed+label%3Abreaking-change) #### Minutiae - Packages are now published using [npm package provenance](https://github.blog/security/supply-chain-security/introducing-npm-package-provenance/). - The code base is using tabs 😱😈 [#&#8203;3098](https://github.com/11ty/eleventy/issues/3098) **Full Eleventy v3 Milestone** (177 closed): https://github.com/11ty/eleventy/milestone/40?closed=1 **Full Changelog**: https://github.com/11ty/eleventy/compare/v2.0.1...v3.0.0 #### Thank You Notes This release would not have been possible without our community and supporters. - To everyone that has built something with Eleventy: thank you! - To everyone that has answered a question about Eleventy: on the Discord, on social media, in GitHub issues or discussion, at your local meetup or coffee shop: thank you! - To everyone that attended the [11ty Conference](https://conf.11ty.dev/) earlier this year: thank you! - To everyone that brought a well-intentioned complaint about something you didn’t like about Eleventy: thank you! - To everyone that dropped a few nice words of appreciation: ***thank you!*** - To everyone that has supported us and made this release possible: ***thank you!*** Thank you to [@&#8203;bobmonsour](https://github.com/bobmonsour), [@&#8203;pdehaan](https://github.com/pdehaan), [@&#8203;Snapstromegon](https://github.com/Snapstromegon), [@&#8203;cdransf](https://github.com/cdransf), [@&#8203;5t3ph](https://github.com/5t3ph), [@&#8203;BenDMyers](https://github.com/BenDMyers), [@&#8203;siakaramalegos](https://github.com/siakaramalegos), [@&#8203;shivjm](https://github.com/shivjm), [@&#8203;dleatherman](https://github.com/dleatherman), [@&#8203;darthmall](https://github.com/darthmall), [@&#8203;clottman](https://github.com/clottman), [@&#8203;nachtfunke](https://github.com/nachtfunke), [@&#8203;David-Large](https://github.com/David-Large), Olivia Nicholson, and [@&#8203;mneumegen](https://github.com/mneumegen) for their community contributions! Thank you for the code contributions from [@&#8203;VividVisions](https://github.com/VividVisions), [@&#8203;mayank99](https://github.com/mayank99), [@&#8203;Zearin](https://github.com/Zearin), [@&#8203;chriskirknielsen](https://github.com/chriskirknielsen), [@&#8203;mendhak](https://github.com/mendhak), [@&#8203;fqueze](https://github.com/fqueze), [@&#8203;shivjm](https://github.com/shivjm), [@&#8203;rdela](https://github.com/rdela), [@&#8203;w0whitaker](https://github.com/w0whitaker), [@&#8203;vrugtehagel](https://github.com/vrugtehagel), [@&#8203;sachac](https://github.com/sachac), [@&#8203;Snapstromegon](https://github.com/Snapstromegon), [@&#8203;alifeee](https://github.com/alifeee), [@&#8203;uncenter](https://github.com/uncenter), [@&#8203;Zwyx](https://github.com/Zwyx), [@&#8203;mayankkamboj47](https://github.com/mayankkamboj47), [@&#8203;aschrab](https://github.com/aschrab), [@&#8203;jgarber623](https://github.com/jgarber623), [@&#8203;korverdev](https://github.com/korverdev), [@&#8203;mathertel](https://github.com/mathertel), [@&#8203;mathieuprog](https://github.com/mathieuprog), [@&#8203;epelc](https://github.com/epelc), [@&#8203;Ryuno-Ki](https://github.com/Ryuno-Ki), [@&#8203;lexoyo](https://github.com/lexoyo), [@&#8203;satgo1546](https://github.com/satgo1546), [@&#8203;KiwiKilian](https://github.com/KiwiKilian) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC43IiwidGFyZ2V0QnJhbmNoIjoiZGV2ZWxvcCIsImxhYmVscyI6W119-->
samuel-p was assigned by renovate-bot 2024-12-08 21:01:09 +00:00
renovate-bot force-pushed renovate/11ty-eleventy-3.x from 5614d82200 to f6c8b327aa 2024-12-11 01:01:10 +00:00 Compare
renovate-bot force-pushed renovate/11ty-eleventy-3.x from f6c8b327aa to 618d648546 2025-01-20 23:01:18 +00:00 Compare
renovate-bot force-pushed renovate/11ty-eleventy-3.x from 618d648546 to 6029134e3d 2025-01-21 00:01:12 +00:00 Compare
renovate-bot force-pushed renovate/11ty-eleventy-3.x from 6029134e3d to eb2caa2957 2025-02-02 20:01:08 +00:00 Compare
renovate-bot force-pushed renovate/11ty-eleventy-3.x from eb2caa2957 to f2a592bdf0 2025-02-15 14:01:08 +00:00 Compare
renovate-bot force-pushed renovate/11ty-eleventy-3.x from f2a592bdf0 to 3ac9022db5 2025-02-15 15:01:10 +00:00 Compare
renovate-bot force-pushed renovate/11ty-eleventy-3.x from 3ac9022db5 to 67e3215012 2025-03-29 15:01:43 +00:00 Compare
renovate-bot force-pushed renovate/11ty-eleventy-3.x from 67e3215012 to dbb0a5a435 2025-04-11 21:02:06 +00:00 Compare
renovate-bot force-pushed renovate/11ty-eleventy-3.x from dbb0a5a435 to 7c434d43ff 2025-04-11 22:01:57 +00:00 Compare
renovate-bot force-pushed renovate/11ty-eleventy-3.x from 7c434d43ff to 84989cbeee 2025-04-11 22:26:03 +00:00 Compare
renovate-bot force-pushed renovate/11ty-eleventy-3.x from 84989cbeee to e8a5596d61 2025-04-11 23:01:47 +00:00 Compare
renovate-bot force-pushed renovate/11ty-eleventy-3.x from e8a5596d61 to 0d50ed3785 2025-05-13 14:01:52 +00:00 Compare
Some checks failed
Build and Deploy Website / Build Website (push) Has been skipped
Build and Deploy Website / Deploy Website (push) Has been skipped
Build and Deploy Website / Build Dev Website (push) Failing after 10s
Build and Deploy Website / Deploy Dev Website (push) Has been skipped
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/11ty-eleventy-3.x:renovate/11ty-eleventy-3.x
git checkout renovate/11ty-eleventy-3.x

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git checkout develop
git merge --no-ff renovate/11ty-eleventy-3.x
git checkout renovate/11ty-eleventy-3.x
git rebase develop
git checkout develop
git merge --ff-only renovate/11ty-eleventy-3.x
git checkout renovate/11ty-eleventy-3.x
git rebase develop
git checkout develop
git merge --no-ff renovate/11ty-eleventy-3.x
git checkout develop
git merge --squash renovate/11ty-eleventy-3.x
git checkout develop
git merge --ff-only renovate/11ty-eleventy-3.x
git checkout develop
git merge renovate/11ty-eleventy-3.x
git push origin develop
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: samuel-p/sp-codes.de#258
No description provided.