Skip to content

@zachleat zachleat released this Aug 27, 2019 · 24 commits to master since this release

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

Assets 2
You can’t perform that action at this time.