Releases: 11ty/eleventy
🚧🚧 Eleventy 🕚⚡️ v0.9.0 Beta 2: Hopefully the Last Beta
Eleventy is a Simpler Static Site Generator.
Install this 🚧🚧 prerelease 🚧🚧 to help test the upcoming Eleventy 0.9.0 release:
npm install @11ty/eleventy@beta --save-dev
Thank you to the 10 contributors that helped with this release!
@danielstaleiny @veleek @aarongustafson @edwardhorsford @Ryuno-Ki @paulshryock @jakearchibald @MadeByMike @Munter (and @zachleat I guess)
Features
- Shows Eleventy version in standard console output (should help me out a lot when debugging issues 👀) #657
- Relative Includes added in Nunjucks, Liquid (already supported in EJS and Pug) #190
- Adds support for Passthrough Copy output directory remapping #452 Thank you @MadeByMike!
- Throws an error if two input templates attempt to write to the same output file (overlapping permalinks) #322 #562
- Allows custom options (and formats) in front matter #410
- e.g. use TOML in your front matter #113
- e.g. use Front Matter excerpts
- Adds
page.filePathStem
variable for permalinks #244 - JavaScript Templates (
*.11ty.js
) #622 #627 Thanks @jakearchibald!- Throws an error when a JavaScript template returns invalid data format #626
- When using classes, we now re-use the same instance for data and rendering
- Add support for JavaScript objects a la
exports = { data: {}, render: function() {}
- Add support for JavaScript Class Fields (Node 12 feature) a la:
exports = class { data = {}; render() {} }
- Add support for multiple exports a la
exports.data = {}; exports.render = function() {}
- Fails gracefully when class/object is missing a render method.
- Config file functions do not yet support returning promises, now we throw an error when this happens. #612 Thanks @Munter!
- Current behavior auto-ignores
node_modules
directory if.gitignore
does not exist. Eleventy will now also auto-ignore if.gitignore
does exist but is empty. #389 Thank you @danielstaleiny! - Eleventy searches for file extensions are now cross-platform case insensitive. #509 #517 Thanks @veleek!
Bug fixes
- Shows path to template on template rendering errors (No more
Unknown path
) #547 - Fixes
page.fileSlug
with JavaScript Templates (was returningfileName.11ty
, should befileName
) #588 - Fixes issue with Liquid shortcode argument parsing (failed on
page.*
variables) #600 - Fixes issue with
eleventyExcludeFromCollections
templates incorrectly throwingTemplateContentPrematureUseError
errors. #522 - Upgrades
browser-sync
to remove audit report #428 - Fixes issue with empty tags in front matter #557 Thanks @edwardhorsford!
- Fix for
TemplateContentPrematureUseError
error when using pagination #551, #634.
Docs and other
- Adds new layouts directory to debug output #574 Thanks @paulshryock!
- Adds links to plugins from README #570 Thanks @Ryuno-Ki!
Dependency Major Release Bumps
fast-glob
from v2 to v3: Release notes
Administration
🚧🚧 Eleventy 🕚⚡️ v0.9.0 Beta 1: Wow this is a Big One
Eleventy is a Simpler Static Site Generator.
Install this 🚧🚧 prerelease 🚧🚧 to help test the upcoming Eleventy 0.9.0 release:
npm install @11ty/eleventy@beta --save-dev
Thank you to the 10 contributors that helped with this release!
@danielstaleiny @veleek @aarongustafson @edwardhorsford @Ryuno-Ki @paulshryock @jakearchibald @MadeByMike @Munter (and @zachleat I guess)
Features
- Relative Includes added in Nunjucks, Liquid (already supported in EJS and Pug) #190
- Adds support for Passthrough Copy output directory remapping #452 Thank you @MadeByMike!
- Throws an error if two input templates attempt to write to the same output file (overlapping permalinks) #322 #562
- Allows custom options (and formats) in front matter #410
- e.g. use TOML in your front matter #113
- e.g. use Front Matter excerpts
- Adds
page.filePathStem
variable for permalinks #244 - JavaScript Templates (
*.11ty.js
) #622 #627 Thanks @jakearchibald!- Throws an error when a JavaScript template returns invalid data format #626
- When using classes, we now re-use the same instance for data and rendering
- Add support for JavaScript objects a la
exports = { data: {}, render: function() {}
- Add support for JavaScript Class Fields (Node 12 feature) a la:
exports = class { data = {}; render() {} }
- Add support for multiple exports a la
exports.data = {}; exports.render = function() {}
- Fails gracefully when class/object is missing a render method.
- Config file functions do not yet support returning promises, now we throw an error when this happens. #612 Thanks @Munter!
- Current behavior auto-ignores
node_modules
directory if.gitignore
does not exist. Eleventy will now also auto-ignore if.gitignore
does exist but is empty. #389 Thank you @danielstaleiny! - Eleventy searches for file extensions are now cross-platform case insensitive. #509 #517 Thanks @veleek!
Bug fixes
- Shows path to template on template rendering errors (No more
Unknown path
) #547 - Fixes
page.fileSlug
with JavaScript Templates (was returningfileName.11ty
, should befileName
) #588 - Fixes issue with Liquid shortcode argument parsing (failed on
page.*
variables) #600 - Fixes issue with
eleventyExcludeFromCollections
templates incorrectly throwingTemplateContentPrematureUseError
errors. #522 - Upgrades
browser-sync
to remove audit report #428 - Fixes issue with empty tags in front matter #557 Thanks @edwardhorsford!
Docs and other
- Adds new layouts directory to debug output #574 Thanks @paulshryock!
- Adds links to plugins from README #570 Thanks @Ryuno-Ki!
Dependency Major Release Bumps
fast-glob
from v2 to v3: Release notes
Administration
Eleventy 🕚⚡️ v0.8.3: Put the horses in, this is Stable
Eleventy is a Simpler Static Site Generator.
Support Eleventy:
- ⭐️ Starring us on GitHub! This will increase our project’s visibility on staticgen.com, a big giant list of static site generators.
- 🐦 Follow us on Twitter @eleven_ty!
- 🎁 Join 15 other lovely people and become an Eleventy Open Collective Supporter!
Install
- Install to your Local project (preferred):
npm install @11ty/eleventy
- Already installed in your local project? Upgrade your version:
npm update @11ty/eleventy
- Want to install globally?
npm install -g @11ty/eleventy
- Already installed globally? Upgrade your Global version:
npm update -g @11ty/eleventy
- Read more about local versus global installation
Changelog
Bug fixes
- Fix for Nunjucks issue with too many Shortcodes (Maximum call stack exceeded) #498
- Fix for permalinks in markdown files when
markdownTemplateEngine
isfalse
#466 - Regression around missing data files when directory names repeated in the path #491 #484
- Fix when using pagination in a layout and a
Tried to use templateContent too early
error would be thrown #479 - Fix for
url
filter on Windows #485 #486 Thank you @AndrewAsquith!
Enhancements
- Travis CI builds now run on Windows! 🎯 #353
NPM Audits
None
Dependency Major Release Bumps
None
Administration
Eleventy 🕚⚡️ v0.8.2: The Regression Mitigator
Eleventy is a Simpler Static Site Generator.
Support Eleventy:
- ⭐️ Starring us on GitHub! This will increase our project’s visibility on staticgen.com, a big giant list of static site generators.
- 🐦 Follow us on Twitter @eleven_ty!
- 🎁 Join 14 other lovely people and become an Eleventy Open Collective Supporter!
Install
- Install to your Local project (preferred):
npm install @11ty/eleventy
- Already installed in your local project? Upgrade your version:
npm update @11ty/eleventy
- Want to install globally?
npm install -g @11ty/eleventy
- Already installed globally? Upgrade your Global version:
npm update -g @11ty/eleventy
- Read more about local versus global installation
Changelog
Bug fixes
- Eleventy was not applying linters and transforms to templates with layouts correctly Fixes #475
NPM Audits
None
Dependency Major Release Bumps
None
Administration
Eleventy 🕚⚡️ v0.8.1: The one that works better
Eleventy is a Simpler Static Site Generator.
Support Eleventy:
- ⭐️ Starring us on GitHub! This will increase our project’s visibility on staticgen.com, a big giant list of static site generators.
- 🐦 Follow us on Twitter @eleven_ty!
- 🎁 Join 14 other lovely people and become an Eleventy Open Collective Supporter!
Install
- Install to your Local project (preferred):
npm install @11ty/eleventy
- Already installed in your local project? Upgrade your version:
npm update @11ty/eleventy
- Want to install globally?
npm install -g @11ty/eleventy
- Already installed globally? Upgrade your Global version:
npm update -g @11ty/eleventy
- Read more about local versus global installation
Changelog
Bug fixes
- Eleventy was not paginating correctly with
data: collections
Fixes #476 - Eleventy was not paginating correctly with
data: collections.all
Fixes #477
NPM Audits
None
Dependency Major Release Bumps
None
Administration
Eleventy 🕚⚡️ v0.8.0: The one that is faster
Eleventy is a Simpler Static Site Generator.
Support Eleventy:
- ⭐️ Starring us on GitHub! This will increase our project’s visibility on staticgen.com, a big giant list of static site generators.
- 🐦 Follow us on Twitter @eleven_ty!
- 🎁 Join 12 other lovely people and become an Eleventy Open Collective Supporter!
Install
- Install to your Local project (preferred):
npm install @11ty/eleventy
- Already installed in your local project? Upgrade your version:
npm update @11ty/eleventy
- Want to install globally?
npm install -g @11ty/eleventy
- Already installed globally? Upgrade your Global version:
npm update -g @11ty/eleventy
- Read more about local versus global installation
Changelog
- PERFORMANCE PERFORMANCE PERFORMANCE Ruthlessly eliminates unnecessary renders for all template languages, build times are improved in v0.8.0. Median benchmark build time improved by up to 45% (Nunjucks) and by 25% (Liquid). Send a tweet to @eleven_ty to let us know if and how much your build times changed!
- Adds new directory option for a
layouts
directory separate fromincludes
. This optional feature was our top requested enhancement. Documentation, fixes #137 - More robust path joining (handles more edge cases in input/output/includes/data directories) PR from the amazing @kleinfreund! Fixes #376 #337
- Adds
eleventyExcludeFromCollections
option to exclude a piece of content from all collections (think templated.htaccess
orsitemap.xml
files that you don’t want incollections.all
). Documentation, fixes #423 - Adds
addAllPagesToCollections
option topagination
. Without this feature, using pagination withtags
only adds your first page template to collections. Documentation. Read more discussion at #253
Bug fixes
- Eleventy’s
--pathprefix
command line option was broken. (Configuration API forpathPrefix
was working fine.) Fixes #384 - Eleventy wasn’t watching and reloading config files correctly. Fixes #340, #450
- Eleventy wasn’t processing
.eleventyignore
files correctly 😱. Fixes #403
NPM Audits
- Bumps handlebars minor version (exposed via npm audit) #424
- Bumps nunjucks minor version to remove postinstall-build deprecation notice #311
Dependency Major Release Bumps
javascript-stringify
1.6 → 2.0 Release notessemver
5.6 → 6.0 Release notes
Administration
0.7.1 Maintenance Release
Eleventy 🕚⚡️ is a Simpler Static Site Generator.
Documentation at v0-7-1.11ty.io
⭐️ Support Eleventy by starring us on GitHub! This will increase our project’s visibility on staticgen.com, a big giant list of static site generators.
🐦 Follow us on Twitter @eleven_ty!
Install
- Local project:
npm install @11ty/eleventy
- Global:
npm install -g @11ty/eleventy
- Read more about local versus global installation
Upgrade
- Local project:
npm update @11ty/eleventy
- Global:
npm update -g @11ty/eleventy
Changelog
- Adds Mac OS as a Travis CI test target.
Bug fixes
- Requiring a module that doesn’t exist #377 #378 😱 Thanks @kleinfreund!
- Fixes major performance regression in
--watch
performance #375
Milestone
Dependency Major Release Bumps
None
Eleventy v0.7.0
Eleventy 🕚⚡️ is a Simpler Static Site Generator.
Documentation at v0-7-0.11ty.io
⭐️ Support Eleventy by starring us on GitHub! This will increase our project’s visibility on staticgen.com, a big giant list of static site generators.
🐦 Follow us on Twitter @eleven_ty!
Install
- Local project:
npm install @11ty/eleventy
- Global:
npm install -g @11ty/eleventy
- Read more about local versus global installation
Upgrade
- Local project:
npm update @11ty/eleventy
- Global:
npm update -g @11ty/eleventy
Changelog
- 🚨🚨🚨 New Template Type: JavaScript Templates 🚨🚨🚨
*.11ty.js
#118 #314- This is a big one and I’m pretty excited about it. Use arbitrary JavaScript to build a template file. This allows you to
require
any arbitrary templating engine and use it in Eleventy 😮. - Documentation
- This is a big one and I’m pretty excited about it. Use arbitrary JavaScript to build a template file. This allows you to
--serve
: Pass in your own BrowserSync configuration options #123 #370--watch
will now re-run Eleventy if you make any changes in local JavaScript dependencies found in your JavaScript files (JS templates, data files, Eleventy config, et al). #325- Error Reporting: full stack trace shown on errors #324
- Pagination: Use
reverse: true
to reverse the order of the data set before pagination. #194 - Transforms: full support for asynchronous transforms. #164
- Benchmarking:
eleventy-benchmark
is a regression performance test for multi-version testing of various template types. #114
Bug fixes
- Mammoth Pull Request from @kleinfreund to fix various bugs with directory path resolution #231 #366
.eleventyignore
and.gitignore
files were assumed to be in the input directory (not the project root). Eleventy now looks in both places #229 #360- Particularly embarrassing bug with Liquid Shortcodes having trouble with arguments that contained spaces (e.g.
"first name"
) #347 - Nunjucks Shortcodes (not Paired) threw an error when no arguments were passed. #372
- TemplateData Tests improved by @kleinfreund #362
- Shortcode names weren’t being namespaced properly #320
Milestone
Dependency Major Release Bumps
multimatch
2.1 → 3.0
- Requires node 6 and includes a
minimatch
vulnerability fix - Full notes: https://github.com/sindresorhus/multimatch/releases/tag/v3.0.0
Eleventy v0.6.0
Eleventy is a simpler Static Site Generator!
⭐️ Support Eleventy by starring us on GitHub! This will increase our project’s visibility on staticgen.com, a big giant list of static site generators.
🐦 Follow us on Twitter @eleven_ty!
Changelog
- Adds support for deep data merging in the data cascade [#147]
- Adds support for glob patterns with the
input
command line option, e.g.--input=*.md
[#173, #276] - Adds
firstPageLink
andlastPageLink
to pagination object [#312] - Adds “cool” URL support in pagination object (no index.html files in these) [#285]
- Documentation
nextPageHref
previousPageHref
firstPageHref
lastPageHref
hrefs
- Eleventy errors now correctly exit with an error code. Netlify builds will now fail (and not deploy) if Eleventy errors. [#264]
- Eleventy now reports the template language in rendering errors (better transparency on markdown files that by default render as Liquid templates) [#291]
Bug fixes
- Fixes major regression with JSTL templates [#263]
- Upstream issue with Liquid templates and date objects outputting as strings [#258]
- Browsersync infinite redirect with empty string pathPrefix:
pathPrefix: ""
[#302] - Fixes bug with returning custom object in
eleventyConfig.addCollection
[#277]
Milestone
Dependency Major Release Bumps
liquidjs ^5.1.0
-> ^6.0.0
debug ^3.1.0
-> ^4.0.0
- Node changes, adds support for v10
- https://github.com/visionmedia/debug/releases/tag/4.0.0
fs-extra ^6.0.1
-> ^7.0.0
- Changes to copy* methods for symlinks
- https://github.com/jprichardson/node-fs-extra/blob/master/CHANGELOG.md#700--2018-07-16
Eleventy v0.5.4
Eleventy is a simpler Static Site Generator!
⭐️ Support Eleventy by starring us on GitHub! This will increase our project’s visibility on staticgen.com, a big giant list of static site generators.
🐦 Follow us on Twitter @eleven_ty!
Changelog
- Adds
permalink: false
option to bypass writing a template to the output directory. Set this in front matter, template or directory data files, or even a JS data file if you want to do conditional output of templates based on Environment variables. (#61) - Improved error messaging, specifically with:
- Errors in configuration files (#182)
- Missing Filters in Liquid templates (#183), note the opt-in to a
strict_filters
Liquid option: https://www.11ty.io/docs/languages/liquid/#optional%3A-use-your-own-options - Improved messaging about DEBUG mode when in DEBUG mode (#224)
- Adds Linters feature to inspect output content. (#225)
- Behind the scenes additions to
addPlugin
to facilitate more configuration options foreleventy-plugin-syntaxhighlight
v2.0 https://github.com/11ty/eleventy-plugin-syntaxhighlight/releases/tag/v2.0.0
Documentation
- The
.eleventyignore
docs page got lost when we moved from GitHub, it now exists here: https://www.11ty.io/docs/ignores/ (#228) - @kleinfreund added a lovely Environment variables example to the documentation (using JS Data Files)
Bug fixes
- Fixes major issue with
--passthroughall
flag (#205) - Tags in template objects will always be normalized to array form, if even using a single tag string in front matter data (#246)
- Fixed an issue when crossover existed between multiple passthrough copy targets (#208) (e.g.
./css/fonts
and./css/fonts/myFont.woff2
, for example)
Milestone
Dependency Semver Major Updates
- None