Releases: eta-dev/eta
Version 1.7.0
TL;DR
- Some minor formatting changes (removal of trailing commas)
- To be compatible w/ Deno
1.4.0
, we now use explicitimport type
andexport type
syntax. Fixed with a PR by @asos-craigmorten- Note: there is a chance this may cause breaking changes if you are using TypeScript versions older than 3.8
Commits
- Update release command ff25c8d
- Merge pull request #20 from asos-craigmorten/fix/support-deno-1.4.0 7690d06
- Rebuild a4c28ee
- Remove unnecessary comment f10eddb
- fix(deno): support Deno 1.4.0 strict type checks de96f9b
- Removed 'prettier' field from package.json which was overriding .prettierrc and creating trailing commas 416d966
Version 1.6.2
TL;DR
User-facing changes
- Eta now supports the
"exports"
field inpackage.json
, meaning it should work with Skypack, Pika CDN, etc. (see skypackjs/skypack-cdn#47). - We turned on TypeScript declaration maps, to hopefully make IntelliSense and source code browsing easier
Developer changes
- After a lot of experimenting with release scripts, we decided that manual releases through
np
are best for now. - We added the
/dist
folder to.gitignore
. It is generated on locally before every build, and before release.
Commits
- Update dev dependencies 198a84b
- Add 'exports' field to package.json 6294739
- Update version 7bf5fe3
- Rebuild 23b7bf8
- Use manual release instead of script f012233
- Fix Travis CI script so it builds before testing 45cad11
- Update release script 9111771
- Add np as a dev dependency e680239
- Release script fixes 4e817a6
- Resolve node_modules with __dirname eaefbfc
- Update path to node_modules 8794e1e
- Simplify release script 28edaf0
- Update tools/release.ts to work correctly with interactive io 4a2cf0c
- Remove dist, deno_dist from master branch 7f4c4b4
- Add dist, deno_dist to .gitignore b98598e
- Merge branch 'declaration-maps' into master ef5da68
- Create release script allowing for tracking of the dist/ and deno_dist/ directories in a separate branch 6603050
- Enable TypeScript declaration maps 4796a9e
Version 1.6.1
TL;DR
This version adds TypeScript declaration files. Additionally, it contains some developer improvements to the release script.
Commits
- Build distribution files f77f0c5
- Update release script 9111771
- Add np as a dev dependency e680239
- Release script fixes 4e817a6
- Resolve node_modules with __dirname eaefbfc
- Update path to node_modules 8794e1e
- Simplify release script 28edaf0
- Update tools/release.ts to work correctly with interactive io 4a2cf0c
- Remove dist, deno_dist from master branch 7f4c4b4
- Add dist, deno_dist to .gitignore b98598e
- Merge branch 'declaration-maps' into master ef5da68
- Create release script allowing for tracking of the dist/ and deno_dist/ directories in a separate branch 6603050
- Enable TypeScript declaration maps 4796a9e
Version 1.6.0
TL;DR
The main change in this commit is the ability to write partials like <%~ include(...) %>
or <%~ includeFile(...) %>
in their templates in addition to <%~ E.include(...) %>
or <%~ E.includeFile(...) %>
🎉 🎉 🎉
This new change should increase template readability and make transitioning to Eta seem less overwhelming. This release also includes some dev-dependency updates and the removal of some unneeded dev-dependencies.
Commits
- Merge pull request #18 from eta-dev/dependabot/npm_and_yarn/node-fetch-2.6.1 b46aab7
- Update package.json, remove unneeded dev dependencies c4aad16
- Bump node-fetch from 2.6.0 to 2.6.1 7ab1ef0
- Merge pull request #17 from eta-dev/simple-include e381db1
- Update tests to include case with include,includeFile undefined a3fa9c0
- Update tests, documentation to use simplified version of include & includeFile c72a067
- Alias E.include, E.includeFile as include, includeFile bfbcd14
Version 1.5.0
TL;DR
The main enhancement this feature brings is the ability to include partials with an absolute path! This is a feature that EJS users have been requesting for a while, but we got it first 😉 🎉.
When Eta is looking for a template with an absolute path, it will first look in config.views
, then fall back to config.root
(which is, by default, "/"
). The main advantage of this approach is that it means most users will not have to manually set config.root
(which can cause confusing problems).
Summary of other changes:
- If Eta can't find a template file, the error it throws now includes a list of filepaths it checked
- Removed unnecessary
includeHelper.bind(config)
andincludeFileHelper.bind(config)
statements - More tests
- README formatting updates
- Wrap the
readFile
function in atry {} catch {}
block, so if you pass an incorrect path torenderFile
the error will look nicer
Commits
- Test that getConfig returns a clone of config when called w/ no arguments 5c4f20c
- Merge pull request #16 from eta-dev/fix-helper-bind 3860018
- Remove .bind() calls that didn't do anything d2d179f
- Fix README alignment issues 8568932
- Merge branch 'master' of github.com:eta-dev/eta into master 733b150
- Merge pull request #15 from eta-dev/fix-abs-root 0d3501d
- Rebuild after file-handling changes 85ea879
- Edit error message tests to reflect current errors bb417a5
- First search options.views for absolute paths, then fallback to root. Create a list of searched paths 243a998
- Wrap readFile in a try-catch cabd4b3
- Move buildRegEx function to test/err.spec.ts f7b84cf
- Change div around badges to p so it centers correctly on NPM 0a41b7c
- Remove deno doc badge; deno doc doesn't support bracketed exports, so it's basically useless for Eta 37bb224
Version 1.4.0
TL;DR
The most significant feature of this release is a new configure()
function that modifies Eta's base ("global") configuration. It's called like Eta.configure({tags: ["{{", "}}"]})
.
Another significant change was the decision to rename defaultConfig
to config
. The name defaultConfig
was originally chosen when I had plans to make Eta support multiple "environments", like Nunjucks. Eventually I decided this would cause unneeded complexity, but I didn't change the name. This change should not be breaking; we re-export config as defaultConfig
for backwards compatibility. In the future, use of defaultConfig
will be discouraged and we'll update the docs to reflect that.
Finally, we included a fix to renderFile
.
Notable changes (recap)
- Create new
configure()
function - Rename
defaultConfig
toconfig
- Prevent
renderFile
from erroring if the data argument is undefined or null; issue originally filed in Squirrelly by @futurelucas4502, see squirrellyjs/squirrelly#201.
Commits
- Merge pull request #13 from eta-dev/simple-config dce660b
- Format 60d5805
- Make defaultConfig an alias of config instead of the opposite daa8b76
- Sort package.json scripts 18deacb
- Add new config utilities to browser.ts 01241a4
- Merge branch 'master' into simple-config 88749fd
- Replace params named env w/ params named config 0f24916
- Add eta.configure() command, alias defaultConfig to config e51e02e
- Update README to have centered title 3754716
- Avoid error if data is undefined or null f9417df
- Add style to h1 so it centers 62afaa0
Version 1.3.0
TL;DR
This release brings quite a few exciting updates; most notably, Deno support! 🎉 🎉
It also brings a partial rewrite of Eta's file handling, many more JSDoc comments (hurrah for Intellisense!), increased testing and test coverage, and size analysis.
Notable Changes
- Deno support
eta.renderFile
can now accept a relative file path, as long as theviews
option is set- Eta correctly handles when the
views
option is a string - Improved JSDoc annotation
- Size analysis and control with size-limit
- Updated dependencies
- More tests, higher test coverage
- 🐛 [BUGFIX]: included partials can now correctly reference files relative to them
Commits
- Update README badges 2002c17
- Deno support! 2f7fc48
- Rebuild c41ca47
- Remove emoji 2f9226d
- Note about size-limit restriction a45be5b
- Merge branch 'master' into deno-support c96d8f5
- Update GitHub Actions to install Deno ac4910b
- Update GitHub Action to install Deno 25be6d6
- Merge branch 'master' into deno-support ecab3d0
- Restrict size with size-limit 0da5e10
- Restrict size with ai/size-limit c5b9948
- Remove obsolete comment f47c0bc
- Add Deno and Yarn to Travis cache aa6d257
- Update funding links ab87ff6
- README updates e2ddb5f
- Delete old distribution.md file 2ed6f86
- Update contributor profile link f991b01
- Node throws different SyntaxError messages based on the version; I turned the error message tests into RegEx's a898234
- Rebuild after file handling refactoring, better annotations 4f532b4
- Allow renderFile path to be relative, allow views option to be string, move loadFile to file-handlers.ts, refactor file handling, better JSDoc 30101c5
- Better JSDoc annotations, rearrange conditional 98c60dc
- Move loadFile from file-utils.ts to file-handlers.ts cd71f9a
- Better JSDoc annotations 3dcec02
- Write multiple tests checking for errors, correct callback behavior, file location 4818251
- Add Eta file with invalid syntax 45052b9
- Up coverage threshold 6e30eb8
- Update renderFile so it can take explicit config argument 36bd4c8
- Fix: udpate includeFile so it correctly passes through filename 462f2c8
- Remove render.deno.ts -- it was unnecessary 367b5f5
- Update .travis.yml to work with Deno 8d6ebfb
- Deno must run w/ filesystem access 0b354f0
- File helper tests 4c55fce
- A few more tests 3219e0a
- Move deno tests into subfolder 59877a7
- Fix tests to run with --unstable 798c8c9
- Update rules 492d2a3
- Use exported methods from ./file-methods 920bf65
- Add missing .ts extensions 0c312d6
- Rebuild 2fb89dc
- Rebuild 279c9cb
- Remove unnecessary separate file-utils.deno.ts 3fec950
- Use prettier instead of prettier-standard a77d261
- Add deno_dist to .prettierignore 9553b77
- Format with prettier 84545d1
- Add .ts extension bd4e655
- Use deno test to test *.deno.spec.ts files 56f3fdd
- Add release script to package.json db94016
- Remove @denoify-ignore comment from mod.ts 9d8508c
- Update dev dependencies 6222283
- Add denoify-ignore comment 8d2f79f
- Update formatting 3da842f
- Add typedoc.json file db7babb
- Remove unnecessary notConfig param from copyProps 441371c
- Separate Deno, other logic b38f7fa
- Update to use separate polyfills file 6a9b723
- Update to use polyfills a942388
- Rebuild 291f345
- Reformat using deno fmt bb4e1a7
- Rebuild 7cf9df0
- Add underscore in front of unused variables cff9cfd
- Add comment, format f532bcf
- Remove irrelevant comment 9924db9
- Add deno build 926283c
- Add missing space 35ddd0b
- Fixed outDir field in tsconfig.json 8e00a7f
- Use newlines instead of semicolons for improved readability. Adds ~3 bytes to bundle size... I think it's worth it ;) fecdabc
- Remove unnecessary semicolon b03d079
- Use built-in Partial type f2cebee
- Rebuild after ESLint cleanup 7bd855a
- Fix ESLint errors, remove unused imports, remove dead code, add TODOs cbcce72
- Removed outdated TODO comments 059dec2
- Removed unnecessary call to tsc compiler c466801
Version 1.2.2
TL;DR
I added Docusaurus v2 to the list of projects using Eta. Since this gives Eta a certain amount of credibility, I decided it deserved to be published quickly.
Commits
- Add Docusaurus v2 to list of projects that use Eta 1a538f0
Version 1.2.1
TL;DR
No code changes, just slight edits to the README. I removed one badge (the David-DM one) which often crashes or is out of date.
Commits
Version 1.2.0
TL;DR
This version adds support for multiple-character prefixes (ex. --
), using a parsing method already in use by Squirrelly. It also removes the necessity to RegEx-escape delimiters or prefixes.
Other changes increase code coverage, fix a compiler issue with newer versions of TypeScript, and update dependencies.
Commits
- Double-boolean-cast String.prototype..., import from index for increased coverage, rebuild 4684090
- yarn upgrade-interactive (update dev dependencies) c0b1206
- Rebuilt 565bcc8
- Merge branch 'master' into regex-escape-and-multi-char-prefixes b18d85e
- Update broken links to benchmarks 49dbcc9
- Fix support for multi-char prefixes 7141cc7
- RegExp-escape tags and prefixes, and allow multi-char prefixes 58d8a4d
- Add lodash.template to benchmarks ab0106e