Skip to content

Latest commit

 

History

History
498 lines (363 loc) · 27.9 KB

HISTORY.md

File metadata and controls

498 lines (363 loc) · 27.9 KB

1.4.2 / 2014-08-04

  • Added Report JS parse errors with template filenames. gh-492
  • Fixed Ensure block-level tags (set, etc) are parsed in correct order. gh-495
  • Fixed Ensure import tag uses current Swig instance's loader. gh-421, gh-503
  • Fixed Allow disabling cache on compile/render functions directly. gh-423
  • Fixed Ensure compilation does not leak global variables. gh-496
  • Fixed Fix for-loops to run on strings. gh-478, gh-479
  • Fixed Allow macro output to be assigned using set tag. gh-499, gh-502

1.4.1 / 2014-07-03

  • Fixed macro argument names colliding with context variable names. gh-457
  • Fixed filter chaining within tags. gh-441

1.4.0 / 2014-07-03

  • Changed Allow variable tokens to start with $. gh-455
  • Changed fs loader should take cwd as default base path. gh-419
  • Changed handle errors which occur at the time of rendering. gh-417
  • Changed default options in bin (varControls, tagControls, cmtControls). gh-415
  • Changed null should yield empty string when resolving variable. gh-408
  • Added Escape character for date filter argument. gh-427, gh-432
  • Added Make if and elseif throw a better error message when a tag body is omitted. gh-425
  • Fixed don't throw errors on accessing property of null object. gh-471
  • Fixed loop variables work correctly in nested loops. gh-433
  • Fixed Some IE8 compatibility (require es5). gh-428

1.3.2 / 2014-01-27

  • Fixed for loop variables on objects. gh-409
  • Fixed Misc. IE8 fixes. gh-410
  • Fixed include files when loaders have base paths. gh-407

1.3.0 / 2014-01-20

  • Changed Removed official node v0.8.x support
  • Added Custom template loader support. gh-377, gh-384, gh-382
  • Added Ability to set root path using template loaders. gh-382, gh-293
  • Added CLI now accepts custom filter and tag arguments. gh-391
  • Added Allow set tag to set keys on objects with bracket and dot-notation. gh-388
  • Added groupBy filter from swig-extras. gh-383
  • Fixed swig.run filepath arg is always optional. gh-402
  • Fixed Filters on non-empty functions apply correctly. gh-397
  • Fixed Filters applied to functions w/ & w/o dotkeys. gh-365
  • Fixed date filter N option returns correct number. gh-375
  • Fixed Ensure getting parent template checks cache if on. gh-378

1.2.2 / 2013-12-02

  • Fixed CTX var output in imported macros. gh-363

1.2.1 / 2013-12-02

  • Fixed Scoping for Express. gh-363

1.2.0 / 2013-12-01

  • Added Filepath parameter can be passed to swig.run to allow extends in-browser. gh-349
  • Changed Use local-context first for var lookups. gh-344, gh-347
  • Changed Allow DOTKEY after functions/objects/filters. gh-355
  • Changed Context of for-tags carries into includes. gh-356
  • Changed When a callback is passed into compileFile, catch all errors thrown by compile and pass the error to callback. gh-340
  • Fixed Instances of Swig retain their options properly. gh-351
  • Fixed Fix misc documentation issues. gh-359, gh-358

1.1.0 / 2013-10-02

  • Added Allow logic in default parsing. gh-326
  • Fixed Error when attempting to wrap spaceless tag around macro/function output. gh-336
  • Fixed Don't overwrite keys on the locals object. gh-337

1.0.0 / 2013-09-23

  • Fixed Allow parent and other tags to work correctly nested in other tags. gh-331
  • Fixed Prevent lexer from matching partial logic/words in variables. gh-330

Migrating from v0.x.x? View the Migration Guide

1.0.0-rc3 / 2013-09-14

  • Fixed Allow bools in token parser by default. gh-321
  • Fixed Allow variables as object values. gh-323
  • Fixed Don't partially match logic words. gh-322
  • Fixed Parent tag in parent's block with no local block edge case. gh-316

1.0.0-rc2 / 2013-09-06

  • Changed Function output from variable blocks are no longer auto-escaped. gh-309
  • Fixed Allow nested macros to work when importing. gh-310
  • Fixed swig.setDefaultTZOffset. gh-311
  • Changed set tag assigns to the local context, allowing setting within for loops, etc. gh-303
  • Fixed Standardize variable undefined checking. gh-301
  • Fixed Remove multiple redefinition of block-level tags in compiled templates.
  • Fixed Performance issue with compile if no default locals are defined.

1.0.0-rc1 / 2013-08-28

  • Added include tag now accepts only (and is preferred, if possible). gh-240
  • Added swig.version and -v to cli
  • Changed Deprecated raw filter. Use safe.
  • Changed Allow import and macro tags to be outside of blocks. gh-299
  • Changed Don't escape macro output. gh-297
  • Changed (Custom) Filters can be marked as safe to disable auto-escaping. gh-294
  • Fixed {% for k,v ... %} tag syntax assigned variables backwards.
  • Fixed Filters being applied to empty functions throwing errors. gh-296
  • Fixed include paths on windows. gh-295

1.0.0-pre3 / 2013-08-20

  • Changed Allow tags at block-level if specified. gh-289
  • Fixed swig.compileFile runs callback template is found in cache. gh-291
  • Fixed Accidental modification of Swig Options Object. gh-287
  • Fixed Preserve forward-slashes in text chunks. gh-285

1.0.0-pre2 / 2013-08-18

  • Changed Binary: Allow --method-name to be a shortcut for --wrap-start var setting.
  • Changed Make reverse filter an alias for sort(true).
  • Added Allow asyncronous compileFile and renderFile operations. gh-283
  • Added Filter: sort.
  • Added Allow {% end[tag] tokens... %}. gh-278
  • Added Built source map for minified browser source.
  • Added Contextual support for object method calls. gh-275
  • Added parser.on('start'|'end'... options. gh-274
  • Added Allow object prototypal inheritance. gh-273
  • Fixed Prevent circular extends. gh-282
  • Fixed Throw an error if reserved word is used as var. gh-276
  • Fixed Add filename to errors if possible. gh-280
  • Fixed Filters work over arrays/objects if possible. gh-259
  • Fixed Allow {% parent %} to work in middle parent templates. gh-277
  • Fixed Allow newlines in tags/vars/comments. gh-272

1.0.0-pre1 / 2013-08-14

  • Changed Completely rewritting parsing engine supports many more syntaxes and is much easier to extend.
  • Changed There is no more swig.init method.
  • Changed Custom filters can be added using swig.addFilter
  • Changed Custom tags can be added using swig.addTag
  • Changed Writing custom tags uses an entirely new, simplified format
  • Changed Removed the underscore/lodash dependency
  • Changed Template parsing has been completely rewritten
  • Changed swig.compileFile returns a function that renders templates, not an object
  • Changed Express-compatible using swig.renderFile.
  • Changed extends, import, and include now reference files with relative paths from the current file (info).
  • Changed extends may no longer accept variables (info).
  • Changed else if tag is now elseif or elif.
  • Changed Removed only argument from include.
  • Changed allow _, $ to start var names in templates.
  • Changed Documentation is auto-generated from jsdoc comments in-files.
  • Added Ability to set custom var/tag/comment controls ({{, }}, etc, can be customized).
  • Added Variable/string concatenation gh-135.
  • Added Binary application for compile, run, and render (Lets you pre-compile templates into JS functions for client-side delivery).
  • Fixed Lots.

0.14.0 / 2013-06-08

  • Added Allow executing functions from within templates gh-182
  • Added New spaceless tag gh-193
  • Fixed bug when attempting to loop over nested vars with for. gh-232

0.13.5 / 2013-01-29

  • Fixed date filter output for 'O' when time-zone offset is negative gh-185

0.13.4 / 2012-12-19

  • Fixed Runaway loop on missing template gh-162 gh-165
  • Fixed Allow variables in if tag conditionals to have filters with arguments gh-167

0.13.3 / 2012-12-07

  • Added Support % (modulus) in if tags gh-155
  • Added Support multi-root via array gh-143

0.13.2 / 2012-10-28

  • Changed Allow variables, filters, arguments to span lines gh-122
  • Changed Throw Errors when using undefined filters gh-115
  • Fixed compiling files from absolute paths gh-103
  • Fixed Prevent global variables from being used before context variables gh-117

Documentation

0.13.1 / 2012-10-28

  • Fixed Macros should be preserved when using inheritence gh-132 (nsaun)
  • Fixed bug in parent tag logic gh-130
  • Fixed Error messaging when parent block failed compilation gh-129 (nsaun)

Documentation

0.13.0 / 2012-10-20

  • Added Support for nested blocks! gh-64 gh-129 (nsaun)
  • Changed Removed the parentBlock argument from tags.
  • Fixed Object keys may now contain dots

Documentation

0.12.1 / 2012-10-05

  • Added More information on some parser errors
  • Added indent parameter to json_encode filter to support pretty-printing.
  • Added support for variables as extends tag parameters
  • Fixed Compile errors in Android and other random browsers
  • Fixed Misc documentation
  • Fixed Leaking __keys variable into global scope

Documentation

0.12.0 / 2012-07-26

  • Fixed Misc documenation
  • Changed Support Node.js >=v0.6

Documentation

0.11.2 / 2012-04-10

  • Fixed Update support for underscore@1.3.3 gh-70 gh-71

Documentation

0.11.1 / 2012-04-01

  • Fixed Duplicate (string) tokens were being removed when extending a base template. gh-67

Documentation

0.11.0 / 2012-02-27

  • Added Support for Windows style paths gh-57
  • Added ignore missing tokens to include tag
  • Changed include tag with context to only work if context is an object
  • Changed autoescape tag controls no longer 'yes' or 'no'. Use true and false
  • Changed parser is now passed into tags as an argument
  • Changed don't require passing context object when rendering template
  • Fixed dateformats N and w gh-59
  • Fixed number changing to string after add filter or set from variable gh-53 gh-58
  • Fixed speed decrease caused by loop.cycle fixed
  • Fixed Ensure set tag bubbles through extends and blocks

Documentation

0.10.0 / 2012-02-13

  • Added loop.index0, loop.revindex, loop.revindex0, and loop.cycle gh-48
  • Added init config extensions for 3rd party extension access in custom tags gh-44
  • Added Whitespace Control gh-46
  • Changed The empty tag in for loops is now else gh-49
  • Changed forloop vars to loop closes gh-47
  • Fixed include tag's with and only args documentation gh-50

Documentation

0.9.4 / 2012-02-07

  • Fixed parent tag would not render when called within tags gh-41
  • Fixed Documentation for forloop.index & forloop.key gh-42
  • Fixed Errors when using include inside base template block tags gh-43
  • Fixed Allow set tag to set values to numbers gh-45
  • Fixed set tag for booleans using too many checks

Documentation

0.9.3 / 2012-01-28

  • Fixed Allow object and array values to be accessed via context variables gh-40

Documentation

0.9.2 / 2012-01-23

  • Fixed Correctly reset autoescape after closing an autoescape tag. gh-39

Documentation

0.9.1 / 2012-01-18

  • Fixed Allow multi-line tags and comments. gh-30

Documentation

0.9.0 / 2011-12-30

  • Added DateZ license to browser header, use link to underscore license.
  • Added Timezone support in date filter gh-27.
  • Added New raw tag.
  • Changed Swig is no longer node 0.4 compatible.
  • Fixed Filter date('f') for 10am times.
  • Fixed Filter date('r') returns in UTC date format. This is more correct tospec RFC2822, per php.net/date.
  • Fixed Filter add when adding numbers/numbers+strings together.
  • Fixed Tests for error messages that changed in node >0.6.0.

Documentation

0.8.0 / 2011-11-04

  • Added date filter formats z, W, t, L, o, B, and c.
  • Added New filter tag.
  • Added Node.js compatible 0.4.1 - 0.6.X
  • Added Allow setting cache globally or per-template.
  • Changed Removed swig.render and swig.fromString.
  • Changed swig.fromFile is now swig.compileFile.
  • Changed swig.init() will clear template cache.
  • Changed swig.init() is now optional for browser mode with no custom settings.
  • Changed Development dependencies are be more lenient.
  • Fixed Parser will properly preserver '' escaping. gh-24
  • Fixed Rewrote tag argument parsing for proper space handling.
  • Fixed Rewrote filter argument parsing. gh-23
  • Fixed Allow pipe | characters in filter arguments. gh-22

Documentation

0.7.0 / 2011-10-05

  • Added make browser will build Swig for use in major browsers. gh-3
  • Changed Allow overriding escape filters. gh-19

Documentation

0.6.1 / 2011-10-02

  • Fixed chaining filters when the first takes a variable as an argument will not crash parsing.

Documentation

0.6.0 / 2011-10-02

  • Added {% import foo as bar %} tag for importing macros.
  • Added Allow escaping for js in escape filter and autoescape tag.
  • Added raw filter to force variable to not be escaped.
  • Added escape and e filters to force variable to be escaped.
  • Added Allow filters to accept any JS objects, arrays, strings, and context variables.
  • Changed if, else, and else if tags support all JS-valid if-syntaxes + extra operators.
  • Fixed default filter for undefined variables. closes gh-18

Documentation

0.5.0 / 2011-09-27

  • Added More error messaging in some edge cases.
  • Added Better error messaging including context and line numbers.
  • Changed Improved compile and render speeds.
  • Changed include tags accept context variables instead of just strings.
  • Changed Templates can be compiled and rendered from an absolute path outside of the template root.
  • Fixed Will not double escape output.

Documentation

0.4.0 / 2011-09-24

  • Added Macro support docs
  • Changed Removed requirement to manually specify locals for express support.
  • Changed Increased cache lookup speed by removing crypto dependency.
  • Fixed length filter returns length of objects (number of keys).
  • Fixed Filters return empty string unless they can apply to the given object.
  • Fixed Filters will attempt to apply to all values in an object or array.

Documentation

0.3.0 / 2011-09-17

  • Added Support for {% set ... %} tag.

Documentation

0.2.3 / 2011-09-16

  • Fixed Critical fix for negations in if blocks.
  • Added Support for forloop.first in for blocks.
  • Added Support for forloop.last in for blocks.
  • Added Support for forloop.key in for blocks.
  • Added Support for {% empty %} in for blocks.

Documentation

0.2.2 / 2011-09-16

  • Added Support for else if ... within if blocks.

Documentation

0.2.1 / 2011-09-13

  • Added Support for else within if blocks.

Documentation

0.2.0 / 2011-09-11

  • Fixed if statements allow filters applied to operands.
  • Fixed for loops allow filters applied to the object that will be iterated over.

Documentation

0.1.9 / 2011-09-11

  • Added allowErrors flag will allow errors to be thrown and bubbled up. Default to catch errors.
  • Changed Internal speed improvements.

Documentation

0.1.8 / 2011-09-10

  • Added add, addslashes, and replace filters.
  • Changed All tags that 'end' must use named ends like endblock, endif, endfor, etc...

Documentation

0.1.7 / 2011-09-05

  • Added this History document
  • Fixed date filter to zero-pad correctly during september when using 'm' format

Documentation

0.1.6 / 2011-09-04

  • Fixed Template inheritance blocks messing up.

Documentation

0.1.5 / 2011-09-04

  • Added first, last, and uniq filters
  • Added ability to specify custom filters
  • Added ability to specify custom tags
  • Changed slots removed -- implement using custom tags if desired
  • Fixed ability to do either dot- or bracket-notation or mixed in variables
  • Fixed internal parsing helpers

Documentation

0.1.3 / 2011-09-01

  • Fixed filter parser to work correctly with single-quoted params in filters.

Documentation

0.1.2 / 2011-09-01

  • Initial swig publish after forking from node-t

Documentation