Releases: 11ty/eleventy
Eleventy v2.0.1: a Bug Fix Release
Eleventy v2.0.1 is now available! You can try it out in your project now:
npm install @11ty/eleventy@latest
- Read more about project versus global installation.
New to 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.
- Build a blog from scratch in 6 minutes with Eleventy
- Watch The State of Eleventy in Two Minutes
- Read more about Eleventy’s project goals.
Features and Fixes
- Fixed:
this.eleventy
in JavaScript template functions #2790 - Fixed:
lodash
security audits #2877 - Fixed: pagination targets with object bracket notation #2851
- Fixed:
11ty.js
templates were too aggressively cached on watch/serve #2839 #2838 - Fixed: Handlebars partials were too aggressively cached on watch/serve #2799
- Fixed: Configuration reload fixes #2864 #2869 #2867
- New: Serverless pagination now works with Arrays and Objects #2853 #2544 Learn more: https://www.11ty.dev/docs/plugins/serverless/#dynamic-slugs-to-subset-your-pagination
- Typo fixes by @deining in #2845
Housekeeping
- Full milestone/issue list: https://github.com/11ty/eleventy/milestone/43?closed=1
- Full changelog: v2.0.0...v2.0.1
Thank You Notes
This project would not be possible without our lovely community. Thank you to everyone that built something with Eleventy (×684 authors on our web site!), wrote a blog post about Eleventy, contributed code, wrote a plugins, helped with documentation, asked questions, answered questions, braved The Leaderboards, participated on Discord, filed issues, attended (or organized!) a meetup, said a kind word on social media ❤️.
- A huge thank you to Netlify, especially: @biilmann, Chris Bach, Lauren Sell (alum), and Claire Knight, without whom this release would not have been possible.
- 🏆 A special thanks to @pdehaan for their tireless contributions on the Eleventy Issue tracker.
- Yet more thanks to the all star Discord Moderators and Meetup Coordinators @BenDMyers, @clottman, @dleatherman, @darthmall, @nachtfunke, @siakaramalegos and @5t3ph.
- All of our supporters on Open Collective ❤️
- Contribute on Open Collective
- How else can you contribute to Eleventy?
Open Collective Supporters
- Gold Sponsors: Sanity.io, Nordhealth, CloudCannon, Transloadit
- Silver Sponsors: Unabridged Software, PQINA, Bejamas, Nathan Smith, Monarch Air Group, Getform.io, Mercury Jets, OCEG
- Backers: Tyler Gaw, Ariel Salminen, Peter deHaan, Melanie Sumner, Ben Nash, Alejandro Rodríguez, Mat Marquis, Philip Borenstein, Jérôme Coupé, Nicolas Hoizey, Mike Aparicio, Ben Myers, Katie Sylor-Miller, Mark Buskbjerg, mortendk, Aaron Hans, Lauris Consulting, John Meyerhofer, Todd Libby, shawn j sandy, Luke Bonaccorsi, Higby, Jenn Schiffer, Dimitrios Grammatikogiannis, Devin Clark, Eric Bailey, Manuel Matuzovic, Tim Giles, Kyosuke Nakamura, Rob Sterlini, Horacio Gonzalez, Hans Gerwitz, Makoto Kawasaki, Josh Crain, Richard Hemmer, Nick Nisi, John SJ Anderson, Ryan Swaney, Alistair Shepherd, Ivo Herrmann, Flaki, Angelique Weger, John Hall, Scott McCracken, James Steinbach, Miriam Suzanne, Bentley Davis, Ara Abcarians, vince falconi, Martin Schneider, Stephanie Eckles, Frontend Weekly Tokyo, Dorin Vancea, Chris Burnell, Ximenav Vf., Rich Holman, Kasper Storgaard, Kevin Healy, Greg Gibson, Michelle Barker, Alesandro Ortiz, David A. Herron, Paul Robert Lloyd, Andrea Vaghi, Bryan Robinson, Ashur Cabrera, Raymond Camden, John Meguerian, Joe Lamyman, Dan Ryan, Sam, Brett Nelson, Paul Welsh, Ingo Steinke, Noel Forte, Melanie Richards, Marco Zehe, Wes Ruvalcaba, Luc Poupard, Entle Web Solutions, Ken Hawkins, Fershad Irani, Nikita Dubko, Aaron Gustafson, Chris, Christian Miles, Benjamin Geese, Marcus Relacion, Netin nopeustesti, Raphael Höser, Cthos, Sia Karamalegos, Jon Kuperman, Saneef Ansari, Michel van der Kroef, Flemming Meyer, Colin Fahrion, Dan Burzo, Dan Ott, Mobilemall.pk, Cheap VPS, David Darnes, Jon Roobottom, Dana Byerly, Oisín Quinn, Renkaatsopivasti, Windesol Sähkön Kilpailutus, Luke Mitchell, SignpostMarv, THE PADDING, Bob Monsour, Richmond Insulation, Patrick Byrne, zapscribbles, Frank Reding, quinnanya, Cory Birdsong, Aram ZS, Andy Stevenson, Robin Rendle, HelppoHinta.fi, Tanner Dolby, jpoehnelt, xdesro, Alex Zappa, Richmond Concrete, Alexander Wunschik, Tom, CelineDesign, Nic Chan, Duc Lam, Stephen Bell, Robert Haselbacher, Lene, Brett DeWoody, alistairtweedie, Meta Tier List, Iva Tech, Daniel Saunders, Josh Vickerson, Dan Urbanowicz, dan leatherman, Jens Grochtdreis, CBD Review, Eric Gallager, Softermii, Eric Carlisle, Claus Conrad, Anna E. Cook, David Luhr, Matt Obee, Kiekkotorni - Nikotiinipussit
Eleventy v2.0.0: Now with twice as many Possums
🚨 The full release notes are available on The Eleventy Blog: Eleventy v2.0.0 or you can watch me talk about v2.0 on YouTube.
Eleventy v2.0.0 is now available! You can try it out now:
# Local project
npm install @11ty/eleventy@latest
# Global install
npm install @11ty/eleventy@latest -g
- Read more about local versus global installation.
- Watch a short video about 2.0 on YouTube.
New to 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. Watch The State of Eleventy in Two Minutes or read more about Eleventy’s project goals.
The Big Features
Smaller, More Secure
- ✅ Dependencies decreased by 32.1%: 211 modules (311 in v1.0.2)
- ✅
node_modules
file weight decreased by 77.8%: 34.3 MB (155 MB in v1.0.2) - ✅ 30.5% faster
npm install
time
Faster Builds
- Improved build performance (tested on a sample 500 page site against v1.0.2) using:
- Liquid: ✅ 18.18% faster
- Nunjucks: ✅ 17.74% faster
- Markdown (with Liquid): ✅ 17.95% faster
- JavaScript (11ty.js): ✅ 8.33% faster
--incremental
for incremental builds #108- Smarter incremental builds with support for layout dependencies, registered dependencies on custom templates, dependencies in
pagination
data oreleventyImport
#975
- Smarter incremental builds with support for layout dependencies, registered dependencies on custom templates, dependencies in
--ignore-initial
command line option to skip the first build (best paired with--incremental
)- Use emulated passthrough copy to serve passthrough files directly without triggering a build (will still work with live reload) #2456
Plugins
- Support for WebC, the new single file format for web components
- Eleventy Edge will render Eleventy templates in an Edge Function for dynamic content (bundled with Eleventy)
- Eleventy Dev Server replaces Browsersync, adds support for DOM-diffing live reloads. #1305 (bundled with Eleventy)
- Render Plugin will render any template syntax inside other files (bundled with Eleventy)
- Internationalization (i18n) Plugin makes it easy to create localized sites (bundled with Eleventy)
- HTML
<base>
Plugin makes it easy to deploy your site to any folder path without changing any content (works great with the path prefix feature) (bundled with Eleventy) - Support for the Vite plugin
And more…
- Support for aliasing to an existing template language #2248
- This unlocks TypeScript or JSX in Eleventy when you use
esbuild-register
and alias11ty.ts
or11ty.tsx
to11ty.js
.
- This unlocks TypeScript or JSX in Eleventy when you use
- Event arguments unlock new plugin abilities:
dir
(input/output/includes/data/layouts locations),
outputMode
(where the templates are going:fs
,json
,ndjson
),runMode
(build
,watch
, orserve
), orresults
for the processed Eleventy output. - Memory usage improvements to Pagination
Breaking Changes
eleventy-upgrade-helper
plugin, which runs a suite of tests to see whether or not you need to worry about these breaking changes in your project: https://github.com/11ty/eleventy-upgrade-help
- Bump minimum Node version to Node 14+ #2336
- Disable indented code blocks in Markdown by default #2438
- Both
.git
and nestednode_modules
folders are ignored by default (previously we ignorednode_modules/**
, now**/node_modules/**
) #2436 - Dates will now be stripped from the parent directory for
page.fileSlug
when the file name isindex.*
. e.g.YYYY-MM-DD-myslug/index.md
has apage.fileSlug
ofmyslug
when previously it wasYYYY-MM-DD-myslug
#1947 #2111 - Dots in global data file names should be preserved in key name for data cascade #1242 #1912
- Removes deprecated in v1.0 (and undocumented)
renderData
feature (use Computed Data instead) #2356 - Removes pre-processing global JSON data files with a template language #2728
- Removes
--passthroughall
command line flag #2682 - Major dependency bumps:
liquidjs
from v9 to v10 Release notes #2678luxon
from v2 to v3 Release notesmarkdown-it
from v12 to v13 Release notes
The Small Features
- Adds support for configuration default file names
eleventy.config.js
andeleventy.config.cjs
in addition to.eleventy.js
#1029 addShortcode
is now async-friendly #2726addFilter
is now async-friendly #2536 (also adds anaddAsyncFilter
API method)- File watching:
- Eleventy Dev Server includes a
watch
option to trigger live reloads on file changes outside of your Eleventy build. Works great when you’re using a bundler in parallel! - Decoupled ignore APIs for template processing (
eleventyConfig.ignores
) and file watching (eleventyConfig.watchIgnores
) #893
- Eleventy Dev Server includes a
- Access advanced
recursive-copy
options in passthrough file copy #1686- Unlocks passthrough copy with symlinks #530
log
filter supports chaining #2467- Adds new
git Created
date option #2468 - Adds options for
read
andencoding
to custom data formats- This unlocks using binary files (like images) to populate the Data Cascade
Even Smaller Features
- Adds
eleventy.env.runMode
to global data. #2770 setDataFileSuffixes
API method to customize Template and Directory data file suffixes (or opt-out of the Template and Directory Data Files feature) #2681- Serverless option
singleTemplateScope: false
simplifies using collections in serverless mode. #2736 - A variety of bug fixes for
--serve
issues that required server restarts. - Data Consistency:
this.page
andthis.eleventy
are now available on [Shortcodes](https://v2-0-...
Eleventy v2.0.0-beta.3: One solitary serverless bug fix.
What's Changed
- Fixes serverlessFilePath is not defined (2.0.0-beta.2) #2782 by @mrmartineau in #2783
New Contributors
- @mrmartineau made their first contribution in #2783
Full Changelog: v2.0.0-beta.2...v2.0.0-beta.3
Eleventy v2.0.0-beta.2
The first bug-fix follow up to the long awaited 2.0.0-beta.1.
Features
- Adds
eleventy.env.runMode
to global data. #2770
Bug Fixes
- Fix for Plugin Compatibility Checks on Vite and WebC plugins. #2758
- Fix a large number of issues requiring dev server restart to see content updates. #2773 #2755
- Use
eleventy-dev-server@1.0.3
(fixesdomDiff
option): 11ty/eleventy-dev-server#48
Housekeeping
Full Changelog: v2.0.0-beta.1...v2.0.0-beta.2
Eleventy v2.0.0-beta.1, the very first beta release of Eleventy 2.0
🚨 The full release notes are available on The Eleventy Blog: The Very First Beta Release of Eleventy v2.0 or you can watch me talk about this release on YouTube.
The very first Eleventy 2.0 Beta release is now available on the @beta
channel and we’re looking for Beta testers! You can try it out now:
# Local project
npm install @11ty/eleventy@beta
# Global install
npm install @11ty/eleventy@beta -g
Read more about local versus global installation.
New to 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. Watch The State of Eleventy in Two Minutes or read more about Eleventy’s project goals.
The Big Features
Smaller, More Secure
- ✅ Dependencies decreased by 32.1%: 211 modules (311 in v1.0.2)
- ✅
node_modules
file weight decreased by 77.8%: 34.3 MB (155 MB in v1.0.2) - ✅ 30.5% faster
npm install
Faster Builds
- Improved build performance (tested on a sample 500 page site against v1.0.2) using:
- Liquid: ✅ 18.18% faster
- Nunjucks: ✅ 17.74% faster
- Markdown (with Liquid): ✅ 17.95% faster
- JavaScript (11ty.js): ✅ 8.33% faster
--incremental
for incremental builds #108- Smarter incremental builds with support for layout dependencies, registered dependencies on custom templates, dependencies in
pagination
data oreleventyImport
#975
- Smarter incremental builds with support for layout dependencies, registered dependencies on custom templates, dependencies in
--ignore-initial
command line option to skip the first build (best paired with--incremental
)- Use emulated passthrough copy to serve passthrough files directly without triggering a build (will still work with live reload) #2456
Plugins
- Support for WebC, the new single file format for web components
- Eleventy Edge will render Eleventy templates in an Edge Function for dynamic content (bundled with Eleventy)
- Eleventy Dev Server replaces Browsersync, adds support for DOM-diffing live reloads. #1305 (bundled with Eleventy)
- Render Plugin will render any template syntax inside other files (bundled with Eleventy)
- Internationalization (i18n) Plugin makes it easy to create localized sites (bundled with Eleventy)
- HTML
<base>
Plugin makes it easy to deploy your site to any folder path without changing any content (works great with the path prefix feature) (bundled with Eleventy) - Support for the Vite plugin
And more…
- Support for aliasing to an existing template language #2248
- This unlocks TypeScript or JSX in Eleventy when you use
esbuild-register
and alias11ty.ts
or11ty.tsx
to11ty.js
.
- This unlocks TypeScript or JSX in Eleventy when you use
- Event arguments unlock new plugin abilities:
dir
(input/output/includes/data/layouts locations),
outputMode
(where the templates are going:fs
,json
,ndjson
),runMode
(build
,watch
, orserve
), orresults
for the processed Eleventy output. - Memory usage improvements to Pagination
Breaking Changes
eleventy-upgrade-helper
plugin, which runs a suite of tests to see whether or not you need to worry about these breaking changes in your project: https://github.com/11ty/eleventy-upgrade-help
- Bump minimum Node version to Node 14+ #2336
- Disable indented code blocks in Markdown by default #2438
- Both
.git
and nestednode_modules
folders are ignored by default (previously we ignorednode_modules/**
, now**/node_modules/**
) #2436 - Dates will now be stripped from the parent directory for
page.fileSlug
when the file name isindex.*
. e.g.YYYY-MM-DD-myslug/index.md
has apage.fileSlug
ofmyslug
when previously it wasYYYY-MM-DD-myslug
#1947 #2111 - Dots in global data file names should be preserved in key name for data cascade #1242 #1912
- Removes deprecated in v1.0 (and undocumented)
renderData
feature (use Computed Data instead) #2356 - Removes pre-processing global JSON data files with a template language #2728
- Removes
--passthroughall
command line flag #2682 - Major dependency bumps:
liquidjs
from v9 to v10 Release notes #2678luxon
from v2 to v3 Release notesmarkdown-it
from v12 to v13 Release notes
The Small Features
- Adds support for configuration default file names
eleventy.config.js
andeleventy.config.cjs
in addition to.eleventy.js
#1029 addShortcode
is now async-friendly #2726addFilter
is now async-friendly #2536 (also adds anaddAsyncFilter
API method)- File watching:
- Eleventy Dev Server includes a
watch
option to trigger live reloads on file changes outside of your Eleventy build. Works great when you’re using a bundler in parallel! - Decoupled ignore APIs for template processing (
eleventyConfig.ignores
) and file watching (eleventyConfig.watchIgnores
) #893
- Eleventy Dev Server includes a
- Access advanced
recursive-copy
options in passthrough file copy #1686- Unlocks passthrough copy with symlinks #530
log
filter supports chaining #2467- Adds new
git Created
date option #2468 - Adds options for
read
andencoding
to custom data formats- This unlocks using binary files (like images) to populate the Data Cascade
Even Smaller Features
setDataFileSuffixes
API method to customize Template and Directory data file suffixes (or opt-out of the Template and Directory Data Files feature) #2681- Serverless option
singleTemplateScope: false
simplifies using collections in serverless mode. #2736 - A variety of bug fixes for
--serve
issues that required server restarts. - Data Consistency:
this.page
andthis.eleventy
are now available on Shortcodes, 🆕 Filters, [🆕 Linters](https://www.11ty.dev/docs/config/#linters...
Eleventy v1.0.2: One bug fix for Liquid Shortcode Argument Parsing
Eleventy v1.0.2 🎈🐀⚡️🕚
This project would not be possible without our lovely community. Thank you to everyone that built something with Eleventy (×595 authors on our web site!), wrote a blog post about Eleventy, contributed code to core or plugins, documentation, asked questions, answered questions, braved The Leaderboards, participated on Discord, filed issues, attended (or organized!) a meetup, said a kind word on Twitter ❤️.
- 🏆 A super special thanks to Peter DeHaan for their tireless contributions on the Eleventy Issue tracker.
- All of our supporters on Open Collective ❤️
- Gold Sponsors: Sanity.io, Nordhealth, CloudCannon and Silver Sponsors: Set Creative Studio, Unabridged Software, PQINA, The Coders Guild, Bejamas, Nathan Smith, Flatirons Development, Monarch Air Group, Ben Nash, getform.io, OCEG, Mercury Jets
- A full list of Backers can be found below!
- Contribute on Open Collective
- How else can you contribute to Eleventy?
Install or Upgrade
- Install to your local project:
npm install @11ty/eleventy
- Already installed in your local project? Upgrade your version:
npm update @11ty/eleventy
- Read more about local project versus global installation
Features
- Fixes for liquid argument parsing on shortcodes #2154 #2348 #2367 #2369
- Help from @epelc @lexoyo @denisenadal @mahnunchik @harttle
Milestone
All bug fix issues can be perused at the GitHub milestone:
https://github.com/11ty/eleventy/milestone/39?closed=1
Major Version Dependency Upgrades
There are no major version dependency updates between 1.0.2 and 1.0.1.
THANK YOU NOTES
Gold Sponsors: Sanity.io, Nordhealth, CloudCannon
Silver Sponsors: Set Creative Studio, Unabridged Software, PQINA, The Coders Guild, Bejamas, Nathan Smith, Flatirons Development, Monarch Air Group, Ben Nash, getform.io, OCEG, Mercury Jets
OpenCollective Monthly Backers: Viljami Salminen, Tyler Gaw, Peter deHaan, Melanie Sumner, Alejandro Rodríguez, Mat Marquis, Philip Borenstein, Jérôme Coupé, Max Böck, Bryce Wray, Kristof Michiels, Nicolas Hoizey, Mike Aparicio, Ben Myers, Katie Sylor-Miller, Mark Buskbjerg, mortendk, Aaron Hans, Lauris Consulting, John Meyerhofer, Todd Libby, Luke Bonaccorsi, Dimitrios Grammatikogiannis, Wellness Researched, Devin Clark, Eric Bailey, Dave Rupert, Manuel Matuzovic, Phil Hawksworth, shawn j sandy, Jenn Schiffer, Tianyu Ge, Kyosuke Nakamura, Hans Gerwitz, Makoto Kawasaki, Horacio Gonzalez, Matthew Tole, Ivan Buncic, Rob Sterlini, Mark Boulton, Søren Birkemeyer, Richard Hemmer, Nick Nisi, Andrew Harvard, John SJ Anderson, Ryan Swaney, Tim Giles, Alistair Shepherd, Ivo Herrmann, Flaki, John Hall, Scott McCracken, James Steinbach, Miriam Suzanne, Bentley Davis, Angelique Weger, vince falconi, Martin Schneider, Stephanie Eckles, Frontend Weekly Tokyo, Ferpection, Josh Crain, Chris Burnell, Ximenav Vf., Juan Miguel, Rich Holman, Kasper Storgaard, Kevin Healy, Greg Gibson, Hidde, Michelle Barker, Alesandro Ortiz, David A. Herron, Paul Robert Lloyd, Andrea Vaghi, Bryan Robinson, Ashur Cabrera, Raymond Camden, John Meguerian, Joe Lamyman, Jeffrey A Morgan, Brett Nelson, Paul Welsh, Ingo Steinke, Melanie Richards, Dorin Vancea, Marco Zehe, Wes Ruvalcaba, Luc Poupard, Entle Web Solutions, Ken Hawkins, Ara Abcarians, Fershad Irani, Nikita Dubko, Aaron Gustafson, Chris, Sam, Benjamin Geese, Marcus Relacion, Netin nopeustesti, Bobby Ray, Christian Miles, Cthos, Sia Karamalegos, Daniel Ryan, Raphael Höser, Noel Forte, Saneef Ansari, Flemming Meyer, Colin Fahrion, Dan Burzo, Jon Kuperman, Dan Ott, Mobilemall.pk, Cheap VPS, David Darnes, Jon Roobottom, Dana Byerly, Oisín Quinn, Renkaatsopivasti, Windesol Sähkön Kilpailutus, Luke Mitchell, SignpostMarv, THE PADDING, Bob Monsour, Patrick Byrne, zapscribbles, Frank Reding, quinnanya, Richmond Insulation, Cory Birdsong, Aram ZS, Michel van der Kroef, Vinicius Depizzol, Andy Stevenson, HelppoHinta.fi, Tanner Dolby, jpoehnelt, Ingo Sobolewski, Andrew Weisbeck, Richmond Concrete, Tom, CelineDesign, Nic Chan, Duc Lam, Alex Zappa, Stephen Bell, Brett DeWoody, alistairtweedie, Meta Tier List, Robert Haselbacher, Lene
Eleventy v1.0.1: It’s Elementary
Eleventy v1.0.1 🎈🐀⚡️🕚
This project would not be possible without our lovely community. Thank you to everyone that built something with Eleventy (×524 authors on our web site!), wrote a blog post about Eleventy, contributed code to core or plugins, documentation, asked questions, answered questions, braved The Leaderboards, participated on Discord, filed issues, attended (or organized!) a meetup, said a kind word on Twitter ❤️.
- 🏆 A super special thanks to Peter DeHaan for their tireless contributions on the Eleventy Issue tracker.
- All of our supporters on Open Collective ❤️
- Gold Sponsors: Sanity.io, Nordhealth and Silver Sponsors: Set Creative Studio, Unabridged Software, PQINA, The Coders Guild, Bejamas, Nathan Smith, Flatirons Development, Monarch Air Group
- A full list of Backers can be found below!
- Contribute on Open Collective
- How else can you contribute to Eleventy?
Install or Upgrade
- Install to your local project:
npm install @11ty/eleventy
- Already installed in your local project? Upgrade your version:
npm update @11ty/eleventy
- Read more about local project versus global installation
Features
- Performance improvement to
lodash/isPlainObject
resulted in 28% build time improvement to web.dev (and likely made your project speedier too!) #2214 #2219 - Adds new
date: git Last Modified
feature to fix issues with Content Dates in production environments #142 - New default global data:
eleventy.version
(holds the current version e.g.1.0.1
) andeleventy.generator
(for use in<meta name="generator" content="{{ eleventy.generator }}">
) #1217 #2293 - Extra argument to the pagination
before
callback with current template’s data. #1209 - Improved error messaging with Transforms and Plugins #646
- jsdoc Comments for ConsoleLogger class #1914
Milestone
All bug fix issues can be perused at the GitHub milestone:
https://github.com/11ty/eleventy/milestone/37?closed=1
Some highlights:
- #2221 Changes default serverless generated file content to fix bug with encoded path variables in Eleventy Serverless.
- #2267 Regression with
addExtension
API andreturn;
in thecompile
function to skip/ignore a template. - #2217 Fix for
this.defaultRenderer is not a function
error when using anasync function
withaddExtension
’scompile
- #1313 When your config file throws an error, Eleventy would sometimes still process data files when using
--version
and--help
. - #2298 Bug with front matter in layouts
- #2278 Obscure bug with passthrough copy and --incremental mistakenly creating a file instead an output folder
- #2145 Fix to allow setting a layout via
addGlobalData
configuration API - #2179 Fix
addGlobalData
configuration API to execute once per build
Major Version Dependency Upgrades
There are no major version dependency updates between 1.0.1 and 1.0.0.
THANK YOU NOTES
First-time GitHub contributions from @vseventer
Gold Sponsors: Sanity.io, Nordhealth
Silver Sponsors: Set Creative Studio, Unabridged Software, PQINA, The Coders Guild, Bejamas, Nathan Smith, Flatirons Development, Monarch Air Group
OpenCollective Monthly Backers: Viljami Salminen, Tyler Gaw, Peter deHaan, Melanie Sumner, Alejandro Rodríguez, Mat Marquis, Philip Borenstein, Jérôme Coupé, Max Böck, Bryce Wray, Kristof Michiels, Yuhei Yasuda, Nicolas Hoizey, Mike Aparicio, Ben Myers, Katie Sylor-Miller, Todd Libby, Mark Buskbjerg, mortendk, Aaron Hans, Lauris Consulting, John Meyerhofer, Luke Bonaccorsi, Dimitrios Grammatikogiannis, Keenan Payne, Devin Clark, Eric Bailey, Dave Rupert, Manuel Matuzovic, Phil Hawksworth, Wellness Researched, Tianyu Ge, Kyosuke Nakamura, Hans Gerwitz, Makoto Kawasaki, shawn j sandy, Horacio Gonzalez, Matthew Tole, Ivan Buncic, Ned Zimmerman, Jenn Schiffer, Mark Boulton, Søren Birkemeyer, Richard Hemmer, Nick Nisi, Andrew Harvard, Takuya Fukuju, John SJ Anderson, Ryan Swaney, Alistair Shepherd, Ivo Herrmann, Flaki, Rob Sterlini, Kyle Mitofsky, John Hall, Scott McCracken, James Steinbach, Miriam Suzanne, Bentley Davis, Evan Harrison, Higby, vince falconi, Martin Schneider, Stephanie Eckles, Frontend Weekly Tokyo, Angelique Weger, Ross Kinney, Tim Giles, Matt DeCamp, Chris Burnell, Ximenav Vf., Juan Miguel, Kasper Storgaard, Kevin Healy, Greg Gibson, hiddedevries.nl, Jeremy Caldwell, Michelle Barker, Alesandro Ortiz, David A. Herron, Paul Robert Lloyd, Andrea Vaghi, Bryan Robinson, Ashur Cabrera, Raymond Camden, John Meguerian, Joe Lamyman, Jeffrey A Morgan, Brett Nelson, Paul Welsh, Ingo Steinke, Josh Crain, Melanie Richards, Rich Holman, Lewis Nyman, Dorin Vancea, Marco Zehe, Wes Ruvalcaba, Luc Poupard, Ferpection, Entle Web Solutions, Ken Hawkins, Sami Singh, Fershad Irani, Nikita Dubko, Aaron Gustafson, Chris, Benjamin Geese, Marcus Relacion, Netin nopeustesti, Bobby Ray, Cthos, Sia Karamalegos, Christian Miles, Raphael Höser, Saneef Ansari, Flemming Meyer, Colin Fahrion, Dan Burzo, Gaston Rampersad, Jon Kuperman, Dan Ott, Mobilemall.pk, Cheap VPS, David Darnes, Sam, Jon Roobottom, Dana Byerly, Oisín Quinn, Renkaatsopivasti, Windesol Sähkön Kilpailutus, Luke Mitchell, SignpostMarv, THE PADDING, Bob Monsour, Marc FILLEUL, Patrick Byrne, Ara Abcarians, Daniel Ryan, zapscribbles, Frank Reding, quinnanya, Central Va Insulation, Cory Birdsong, Aram ZS, Michel van der Kroef, Vinicius Depizzol, Andy Stevenson, HelppoHinta.fi, jpoehnelt, Jina Anne, Ingo Sobolewski
Eleventy v1.0.0: First!
Eleventy v1.0.0 🎈🐀⚡️
This project would not be possible without our lovely community. Thank you to everyone that built something with Eleventy (×476 authors on our web site!), wrote a blog post about Eleventy, contributed code to core or plugins, documentation, asked questions, answered questions, braved The Leaderboards, participated on Discord, filed issues, attended (or organized!) a meetup, said a kind word on Twitter ❤️.
I really wish I had time to list everyone, but I do want to mention a few folks that have made tremendous contributions:
- 🏆 A super special thanks to Peter DeHaan and Binyamin Green for their tireless contributions on the Eleventy Issue tracker.
- All of our supporters on Open Collective ❤️
- Gold Sponsors: Sanity.io, Nordhealth, Screen recorder for Mac
- Silver Sponsors: Piccalilli, ESLint, Unabridged Software, PQINA, The Coders Guild, Bejamas
- A full list of Backers can be found below!
- Contribute on Open Collective
- How else can you contribute to Eleventy?
Install or Upgrade
- Install to your local project:
npm install @11ty/eleventy
- Already installed in your local project? Upgrade your version:
npm update @11ty/eleventy
- Read more about local project versus global installation
Upgrading from 0.x? Try out the eleventy-upgrade-help
plugin.
This will log breaking changes that apply to your project. https://github.com/11ty/eleventy-upgrade-help
Breaking Changes
- Changes Node requirement to 12+ (previously: 10+)
- Data Deep Merge is now enabled by default
- Docs: Data Deep Merge and Issue #1753
- The ordering in the Data Cascade changed slightly: Front Matter in Layout files moved to be lower precedence, below Template and Data Directory Files (but higher than Global Data).
- Docs: Data Cascade and Issue #915
liquidjs
v9 major version upgrade changes:setLiquidOptions
: Eleventy default fordynamicPartials
changed totrue
. Issue #240 Unquoted include paths will need to be updated or revert usingdynamicPartials: false
setLiquidOptions
: Liquid optionstrict_filters
renamed tostrictFilters
. Issue #1390setLiquidOptions
: Eleventy default forstrict_filters
/strictFilters
changed totrue
. Issue #222- Relative path includes (e.g.
{% include "./include.liquid" %}
) now look relative to the file first, and the includes directory second. Issue #2090
ejs
v3 major version upgrade changes: Issue #1392- Removes
<% include /included %>
style include, use<%- include('/included') -%>
instead. Don’t forget the dash<%-
and-%>
!
- Removes
.gitignore
files outside of your project root are no longer supported when calculating ignored paths in Eleventy. Issue #364- ✅ {ROOT}/.gitignore (supported)
- 🚫 {INPUT_DIR}/.gitignore (not supported)
- ✅ {ROOT}/.eleventyignore (supported)
- ✅ {INPUT_DIR}/.eleventyignore (supported)
- If you rely on the
YYYY-MM-DD
format in your file names for content dates, these are now assumed to be UTC instead of local dates. Take care if you useliquid
’s built-indate
format withpage.date
!- Docs: Content Dates, Issue #1752, and harttle/liquidjs#375
browser-sync
:- Default to
ui: false
Issue #843 - Default to
ghostMode: false
Issue #841 - Re-enable these features using
eleventyConfig.setBrowserSyncConfig
- Default to
- Removes the
jstl
template language. Use11ty.js
instead. Issue #1084 - Change to
dataTemplateEngine: false
by default. Issue #174
Please use eleventy-upgrade-help
to log breaking changes that apply to your project.
Features
Major
- Custom File Extension Handlers: applications and plugins can now add their own template types and tie them to a file extension.
- Docs: Custom Template Languages and Issue #117
- Render Plugin, shortcodes to render other template languages.
- Serverless Plugin, allow Eleventy templates to run in a serverless function for server side rendering.
- Use with Netlify Functions and On-demand Builders
- Docs: Serverless Plugin
- Adds support for
--to=json
and--to=ndjson
- Docs: Command Line Usage
- Use Data Filter Selectors to opt-in data from the Data Cascade. Docs: Configuration: Data Filter Selectors
- Adds support for programmatic Eleventy (e.g.
new Eleventy()
in your Node.js script) - Configuration:
addGlobalData
method.- Docs: Global Data from the Configuration API and Issue #1280
- Note also that JavaScript Global Data Files now receive data. Docs: JavaScript Data Files
Minor
- Passthrough Copy now throws an error if two or more files attempt to copy to the same output location. Issue #1677
- For better URL-safe slugs by default, we now suggest using the new
slugify
global filter instead of the previousslug
.slug
is still included for backwards compatiblity.slugify
Docs.eleventy-upgrade-help
includes a permalink checker to compareslug
andslugify
output. Issue #278 - Added support for protocol relative URLs in the
url
global filter (though technically accurate, using this method is discouraged). Issue #1276 - New Eleventy supplied data:
eleventy
Global Data- Environment Variables:
- Docs: Eleventy Supplied Data: Environment Variables
ELEVENTY_ROOT
ELEVENTY_SOURCE
ELEVENTY_SERVERLESS
tags
are now de-duped. Issue #1876- JavaScript functions in
eleventyComputed
now have access to global filters.- Docs: Computed Data and Issue #1862
- Ignores
node_modules
are now ignored by default. Docs: Ignores and Issue #383- Control ignores programmatically. Docs: Ignores and Issue #894 #1405
- Configuration: Access to
eleventyConfig.dir
in plugins. Issue #922 - Configuration: Events are now Async-friendly
- Docs: Events and Issue #1363
- Replace
chalk
dependency withkleur
Issue #2113 - Adds template language-agnostic compilation caching for speeeeed Issue #1529
- Fixes bug
--input=file.njk --output=.
would process 0 files. Issue #1129 - Fixes bug where Eleventy would stop processing templates in watch/serve mode after a compilation error. Issue #1658
- Front matter parsing errors will now report the filename of the offending file in the error message. Issue #1152
- Option to opt-out of the
browser-sync
JavaScript snippet - Warning when Transforms that return empty content. Issue #1487
- Transforms now have access to
inputPath
Issue #789 - Shows the preprocessed template engine name on the console for
html
ormd
files Issue #1478
Nunjucks
- Adds
eleventyConfig.setNunjucksEnvironmentOptions
method. Issue #895 - Adds
eleventyConfig.addNunjucksGlobal
method. Issue #1060
Liquid
- Adds support for asynchronous filters. Issue #831
Milestone
All bug fix issues can be perused at the GitHub milestone:
https://github.com/11ty/eleventy/milestone/32?closed=1
Some internals highlights:
- Improvements to stability with Nunjucks and shortcodes in
{% for %}
loops - Fix for
EMFILE: too many open files
errors - Use a named
browser-sync
instance. Issue #1125 - Switch from
fs-extra
tograceful-fs
Major Version Dependency Upgrades
These are convenience links provided. Major things of note are summarized in the Breaking Changes section above.
liquidjs
fro...
Eleventy v0.12.1
v0.12.1 Documentation
Install or Upgrade
- Install to your local project:
npm install @11ty/eleventy
- Already installed in your local project? Upgrade your version:
npm update @11ty/eleventy
- Read more about local project versus global installation
How can you support Eleventy?
- ⭐️ Star us on GitHub!
- 🐦 Follow us on Twitter @eleven_ty!
- 🎁 Support us on Open Collective!
Thank you to everyone that contributed code, documentation, answered questions, filed issues, said a kind word on Twitter ❤️
The TL;DR List
Fix for error messaging when attempting to use Node 8
As of Eleventy v0.12.0, Node 10 is now required. Node 8 is end of life (EOL) and no longer supported by Node. There was a small bug in the 0.12.0 release that would not show friendly error messaging when attempting to use Node 8 with Eleventy. That has been fixed.
Administration
Eleventy v0.12.0
v0.12.0 Documentation
Install or Upgrade
- Install to your local project:
npm install @11ty/eleventy
- Already installed in your local project? Upgrade your version:
npm update @11ty/eleventy
- Read more about local project versus global installation
How can you support Eleventy?
- ⭐️ Star us on GitHub!
- 🐦 Follow us on Twitter @eleven_ty!
- 🎁 Support us on Open Collective!
Thank you to everyone that contributed code, documentation, answered questions, filed issues, said a kind word on Twitter ❤️
The TL;DR List
Node version support bumped from 8 to 10+
Node 8 is end of life (EOL) and no longer supported by Node.
Dependency Major Release Bumps
pug
2.0.4 to 3.0.2
- Required for
npm audit
issue, tracking on Eleventy Issue: #1674 - 3.x requires Node 10+
pug
release notes https://github.com/pugjs/pug/releases/tag/pug%403.0.0
chalk
3.0.0 to 4.1.0
- 4.x requires Node 10+
chalk
release notes https://github.com/chalk/chalk/releases/tag/v4.0.0
fs-extra
8.1.0 to 9.1.0
- 9.x requires Node 10+
- https://github.com/jprichardson/node-fs-extra/blob/master/CHANGELOG.md#900--2020-03-19