Skip to content

Releases: 11ty/eleventy

🚧🚧 Eleventy 🕚⚡️ v0.10.0 Beta 1 🚧🚧

09 Dec 02:26
Compare
Choose a tag to compare

Eleventy is a Simpler Static Site Generator.

A special note of remembrance

Before we get going here I just want to take a brief moment to remember the very special @jameswillweb who passed away earlier this month. James was diagnosed with ALS in 2013 and was known for his widespread teaching contributions to the web community. Probably the least of which, but one that I will always remember, was his creation of the floating possum mascot for our little Eleventy project. This mascot (nay, mastcot, because it lives in the masthead ok fine but James would have liked that one) lives at the top of the Eleventy docs and links to the Twitter thread he started in 2018. Though we never met in real life, James was clearly a one-of-a-kind. We will miss you ❤️

Donations may be made in James’ name to The ALS Therapy Development Institute or to Quest Youth Ministries at St. John's United Methodist Church.

Permalink: https://www.11ty.dev/news/james-williamson/

Installation

Install this 🚧🚧 prerelease 🚧🚧 to help test the upcoming Eleventy 0.10.0 release:

npm install @11ty/eleventy@beta --save-dev

Thank you to the code contributors that helped with this release!

@gloryofrobots @edbrannin @MadeByMike @Ryuno-Ki @cschuller @micahmills @fredrikekelund @ahl @Munter (and @zachleat, I guess)

Features

Official Plugins

Configuration API

  • Support for arbitrary data file formats in the Data Cascade. e.g. eleventyConfig.addDataExtension("yaml", contents => yaml.safeLoad(contents)); Thank you @gloryofrobots! #736 #798 #635 #630 #624 #265
    • ⚠️ Documentation pending
  • Adds setQuietMode method to Configuration API so that we don’t have to type --quiet all the time. #808
  • Adds addWatchTarget method to Configuration API for programmatic watching of arbitrary files. Thanks @MadeByMike! #803 #641
  • Show pathPrefix being used in standard console output (if non-default). #807

Pagination

Performance

Shortcodes

Miscellanous

Documentation Web Site

Bug fixes

  • Improved error reporting in shortcode code. #681
  • Issue with Cannot read property 'trim' of undefined error on unhandledRejection events. #689
  • Fix for require node cache busting on Windows (some JavaScript files may not have picked up changes when watching) #341 #596 #683 Thanks @cschuller!
  • Fix bug with negated entries (!) in .gitignore or .eleventyignore files. The bug caused Eleventy to not process any files. Support was not added for negated entries—they are ignored for now. Thanks @micahmills! #677 #709
  • Fix to Sortable implementation, improved tests—thanks @edbrannin! #747
  • Fix small variable scoping issue in TemplateWriter—thanks @fredrikekelund! #724 #722
  • Fix data bleed issue in the Data Cascade with front matter and setDataDeepMerge. Thanks @ahl! #676 #735
  • Improved test coverage for EleventyErrorUtil—thank you @edbrannin! #753

Administration

Dependency Major Release Bumps

Eleventy 🕚⚡️ v0.9.0: Oh my

27 Aug 13:30
Compare
Choose a tag to compare

Eleventy is a Simpler Static Site Generator.

v0.9.0 Documentation

Support Eleventy:

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

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)

Changelog

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 returning fileName.11ty, should be fileName) #588
  • Fixes issue with Liquid shortcode argument parsing (failed on page.* variables) #600
  • Fixes issue with eleventyExcludeFromCollections templates incorrectly throwing TemplateContentPrematureUseError 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

Dependency Major Release Bumps

Note that dev-dependencies are not included here.

  • chokidar from v2 to v3: requires Node 8+ Release notes
  • dependency-tree from v6 to v7: upgraded precinct from 5.x to 6.x for some typescript things ¯_(ツ)_/¯ (No release notes for this project: issue filed)
  • fs-extra from v7 to v8: Release notes
  • multimatch from v3 to v4: requires Node 8+ Release notes

Administration

🚧🚧 Eleventy 🕚⚡️ v0.9.0 Beta 2: Hopefully the Last Beta

17 Aug 17:56
Compare
Choose a tag to compare

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 returning fileName.11ty, should be fileName) #588
  • Fixes issue with Liquid shortcode argument parsing (failed on page.* variables) #600
  • Fixes issue with eleventyExcludeFromCollections templates incorrectly throwing TemplateContentPrematureUseError 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

Dependency Major Release Bumps

Administration

🚧🚧 Eleventy 🕚⚡️ v0.9.0 Beta 1: Wow this is a Big One

27 Jul 19:16
Compare
Choose a tag to compare

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 returning fileName.11ty, should be fileName) #588
  • Fixes issue with Liquid shortcode argument parsing (failed on page.* variables) #600
  • Fixes issue with eleventyExcludeFromCollections templates incorrectly throwing TemplateContentPrematureUseError errors. #522
  • Upgrades browser-sync to remove audit report #428
  • Fixes issue with empty tags in front matter #557 Thanks @edwardhorsford!

Docs and other

Dependency Major Release Bumps

Administration

Eleventy 🕚⚡️ v0.8.3: Put the horses in, this is Stable

05 May 02:32
Compare
Choose a tag to compare

Eleventy is a Simpler Static Site Generator.

v0.8.3 Documentation

Support Eleventy:

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 is false #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

09 Apr 03:37
Compare
Choose a tag to compare

Eleventy is a Simpler Static Site Generator.

v0.8.2 Documentation

Support Eleventy:

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

06 Apr 03:10
Compare
Choose a tag to compare

Eleventy is a Simpler Static Site Generator.

v0.8.1 Documentation

Support Eleventy:

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

05 Apr 02:04
Compare
Choose a tag to compare

Eleventy is a Simpler Static Site Generator.

v0.8.0 Documentation

Support Eleventy:

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 from includes. 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 or sitemap.xml files that you don’t want in collections.all). Documentation, fixes #423
  • Adds addAllPagesToCollections option to pagination. Without this feature, using pagination with tags 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 for pathPrefix 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

Administration

0.7.1 Maintenance Release

12 Jan 03:51
Compare
Choose a tag to compare

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

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

11 Jan 03:48
Compare
Choose a tag to compare

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

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
  • --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