summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Rev runtime compiler revisionkpdecker2015-09-012-3/+4
|
* Add basic decorators docskpdecker2015-09-011-0/+19
| | | Fixes #1088
* Add explicitPartialContext compiler flagkpdecker2015-09-012-1/+20
| | | Fixes #1032
* Merge branch 'decorators'kpdecker2015-09-0121-19/+453
|\
| * Implement decorator helper methodkpdecker2015-08-222-15/+16
| |
| * Implement inline partialskpdecker2015-08-224-0/+66
| | | | | | | | | | | | Allows for partials to be defined within the current template to allow for localized code reuse as well as for conditional behavior within nested partials. Fixes #1018
| * Implement block decoratorskpdecker2015-08-227-8/+244
| | | | | | | | These allow for a given block to be wrapped in helper methods or metadata and allow for more control over the current container and method before the code is run.
| * Add decorator parsingkpdecker2015-08-2210-7/+74
| |
| * Implement decorator environment and registrationkpdecker2015-08-224-1/+65
| |
* | Merge pull request #1087 from denniskuczynski/each_object_empty_string_keyKevin Decker2015-08-302-1/+11
|\ \ | | | | | | Fix #each when last object entry has empty key
| * | Fix #each when last object entry has empty keyDennis Kuczynski2015-08-302-1/+11
|/ /
* | Merge pull request #1084 from blendlabs/masterKevin Decker2015-08-251-1/+1
|\ \ | | | | | | Bump uglify version to avoid vulnerability flag.
| * | Bump uglify version to fix vulnerabilityJohn Steidley2015-08-241-1/+1
|/ /
* | Merge pull request #1076 from wycats/partial-blockKevin Decker2015-08-2313-38/+197
|\ \ | |/ | | Implement partial blocks
| * Update AST doc for partial blockkpdecker2015-08-221-1/+2
| |
| * Add whitespace control to partial block statementskpdecker2015-08-221-1/+3
| |
| * Create validateClose helper methodkpdecker2015-08-222-21/+20
| | | | | | | | Avoid duplicating the logic needed to check for close block mismatches.
| * Implement partial blockskpdecker2015-08-2212-27/+184
|/ | | | | | This allows for failover for missing partials as well as limited templating ability through the `{{> @partial-block }}` partial special case. Partial fix for #1018
* Improve sanity checks in compiler and visitorkpdecker2015-08-222-2/+13
|
* Merge pull request #1081 from hashchange/patch-1Kevin Decker2015-08-211-0/+1
|\ | | | | Add Marionette.Handlebars to "in the Wild" list
| * Add Marionette.Handlebars to "in the Wild" listhashchange2015-08-211-0/+1
|/
* Drop AST constructors in favor of JSONkpdecker2015-08-1810-299/+141
| | | | | These were little more than object literal statements that were less clear due to their use of index-based arguments. Fixes #1077
* Pass container rather than exec as contextkpdecker2015-08-183-13/+13
| | | There is no real need for us to do `.call(container` other than for backwards compatibility with legacy versions. Using the 4.x release as a chance to optimize this behavior.
* Remove unused parameterskpdecker2015-08-181-2/+2
|
* Add object option to test runnerkpdecker2015-08-181-1/+4
|
* Run node tests lastkpdecker2015-08-181-2/+2
| | | This covers all of the test cases and generally have better stack traces so we want to have these featured more prominently.
* Fix travis config typokpdecker2015-08-141-1/+1
|
* Increase travis git window to avoid test failureskpdecker2015-08-141-0/+3
| | | https://twitter.com/travisci/status/288390896339267584
* Link to try handlebars from readmekpdecker2015-08-141-1/+1
|
* Cleanup stack traces for test assertionskpdecker2015-08-141-6/+22
|
* Include inline source maps in babel buildkpdecker2015-08-141-0/+1
|
* Add ignoreStandalone compiler optionkpdecker2015-08-133-6/+20
| | | Fixes #1072
* Link to installation docskpdecker2015-08-121-15/+1
|
* Add license information to bower.jsonkpdecker2015-08-121-0/+1
| | | | Fixes #1074
* Ignore empty when iterating on sparse arrayskpdecker2015-08-042-0/+13
| | | Fixes #1065
* Add support for string and stdin precompilationkpdecker2015-08-044-4/+130
| | | Fixes #1071
* Remove no-shadow rulekpdecker2015-08-041-1/+1
|
* Simplify object assignment generation logickpdecker2015-08-042-14/+16
|
* Convert precompiler template loading to asynckpdecker2015-08-044-75/+113
|
* Refactor precompiler API into two phasekpdecker2015-08-043-117/+149
| | | Load templates and then parse them in a distinct operation. This will allow us to use other input sources such as stdin and strings.
* Increase sauce test concurrencykpdecker2015-08-031-1/+1
|
* Include doctype in amd harnesskpdecker2015-08-031-0/+1
|
* Specify platform for firefox in sauce testskpdecker2015-08-031-1/+1
| | | Works around what appears to be an init issue within Sauce.
* Fix parser declaration under amd buildskpdecker2015-08-031-1/+1
|
* Revert "Pull sauce tests out of CI"kpdecker2015-08-031-1/+1
| | | | This reverts commit e2ba22eaad24575ab3cb235b8fc36683acf610c2.
* Pull out duplicated documentation from readmekpdecker2015-08-031-271/+10
| | | Fixes #1006
* Bulletproof AST.helpers.helperExpressionkpdecker2015-08-032-15/+55
| | | | | Avoid undefined values and potential false positives from other type values such as partials. Fixes #1055
* Use += in printerkpdecker2015-08-031-9/+9
|
* Fix incorrect variable removalkpdecker2015-08-031-2/+2
|
* Enforce 100% code coveragekpdecker2015-08-035-15/+47
|
* Fix partial handling with different contextkpdecker2015-08-032-1/+7
|
* Style updateskpdecker2015-08-0329-124/+154
|
* Always return string responseskpdecker2015-08-032-1/+15
| | | | | Certain optimizations for simple templates could result in objects returned by helpers returned rather than their string representation, resulting in some odd edge cases. This ensures that strings are always returned from the API for consistency. Fixes #1054.
* Pass undefined fields to helpers in strict modekpdecker2015-08-033-9/+30
| | | | | This allows for `{{helper foo}}` to still operate under strict mode when `foo` is not defined on the context. This allows helpers to perform whatever existence checks they please so patterns like `{{#if foo}}{{foo}}{{/if}}` can be used to protect against missing values. Fixes #1063
* Avoid depth creation when context remains the samekpdecker2015-08-033-3/+30
| | | | | | | Creating a new depth value seems to confuse users as they don’t expect things like `if` to require multiple `..` to break out of. With the change, we avoid pushing a context to the depth list if it’s already on the top of the stack, effectively removing cases where `.` and `..` are the same object and multiple `..` references are required. This is a breaking change and all templates that utilize `..` will have to check their usage and confirm that this does not break desired behavior. Helper authors now need to take care to return the same context value whenever it is conceptually the same and to avoid behaviors that may execute children under the current context in some situations and under different contexts under other situations. Fixes #1028
* Fix track id handling in partialskpdecker2015-08-032-0/+50
| | | Fixes #914
* Handle this references properly in track id modekpdecker2015-08-032-4/+7
|
* Avoid log output in testkpdecker2015-08-031-1/+7
|
* Remove out of date TODOkpdecker2015-08-031-2/+0
|
* Improve logging APIkpdecker2015-08-033-14/+100
| | | | | | | Adds multiple variable support and the ability to set statement level logging semantics. This breaks that logger API, cleaning up the manner in which enums are set, but the other behaviors are backwards compatible. Fixes #956
* Move logger into separate modulekpdecker2015-08-012-21/+23
|
* Add rest params to es6 supported listkpdecker2015-08-011-0/+1
|
* Increase code coveragekpdecker2015-08-014-5/+8
|
* Add istanbul ignore to babel boilerplatekpdecker2015-08-011-2/+3
|
* Move helpers into separate moduleskpdecker2015-08-0110-173/+206
|
* Fix with operator in no @data modekpdecker2015-08-012-1/+7
|
* Pull sauce tests out of CIkpdecker2015-08-011-1/+1
| | | Disabling these until #1069 can resolve whatever the root issue is.
* Allow empty key name in each iterationkpdecker2015-08-012-1/+11
| | | Fixes #1021
* Add with block parameter supportkpdecker2015-08-012-3/+10
| | | | Fixes #1042
* Fix escaping of non-javascript identifierskpdecker2015-08-012-3/+7
| | | | The ‘ character would cause invalid javascript to be generated as it was not properly escaped. Switching to JSON.stringify safely handles all potential unescaped cases.
* Merge pull request #1068 from 0xack13/masterKevin Decker2015-07-301-1/+1
|\ | | | | Fix typo
| * Merge pull request #1 from 0xack13/0xack13-patch-1-fix-typoSaleh Batati2015-07-301-1/+1
| |\ |/ / | | Fix typo
| * Fix typoSaleh Batati2015-07-301-1/+1
|/
* Merge pull request #1060 from ericbn/issue-1056Kevin Decker2015-07-204-6/+25
|\ | | | | #1056 Fixed grammar for nested raw blocks
| * Added comment about Jison's topState()Eric Nielsen2015-07-191-0/+3
| |
| * Added spec messageEric Nielsen2015-07-161-1/+1
| |
| * #1056 Added spec for nested raw blockEric Nielsen2015-07-151-0/+10
| |
| * #1056 Fixed grammar for nested raw blocksEric Nielsen2015-07-153-6/+12
| |
* | Update jsfiddle link to 3.0.3kpdecker2015-07-191-1/+1
|/
* Merge pull request #1052 from maqnouch/patch-1Kevin Decker2015-07-021-1/+1
|\ | | | | Updated year in License
| * Updated year in LicenseAQNOUCH Mohammed2015-07-021-1/+1
|/
* Fix location information for programskpdecker2015-06-264-6/+74
| | | | | | | | There appears to be a bug in our use of jison causing the parent location information to be reported to programs. I wasn’t able to work through what might be causing this so instead using the location information of the statements collection to generate the proper location information. This is a bit of a hack but we are very far behind on the Jison release train and upgrading will likely be a less than pleasant task that doesn’t provide us much benefit. Fixes #1024
* Merge pull request #1037 from tomxtobin/minor-readme-typo-fixesKevin Decker2015-06-091-2/+2
|\ | | | | Fix minor typos in README
| * Fix minor typos in READMETom X. Tobin2015-06-081-2/+2
|/
* Merge pull request #1019 from aymerick/aymerick-patch-typo-testKevin Decker2015-05-061-1/+1
|\ | | | | Fixes typo in tests
| * Fixes typo in testsAymerick2015-05-061-1/+1
| | | | | | mutache => mustache
* | Add tests for string contextskpdecker2015-05-062-0/+11
|/ | | | Fixes #1013
* Merge pull request #1015 from aymerick/fix-testKevin Decker2015-05-051-1/+1
|\ | | | | Fix tokenizer test for double quoted strings
| * Fix tokenizer test for double quoted stringsAymerick2015-05-011-1/+1
| | | | | | | | | | There is two consecutive tests with the same input data: "{{ foo bar \'baz\' }}" I suppose the first test should be about testing double quoted string.
* | Fix VERSION update scriptkpdecker2015-05-051-3/+3
|/ | | | | This broke after updating to es6 formatted code. Fixes #1016
* v3.0.3v3.0.3kpdecker2015-04-283-3/+3
|
* Update release noteskpdecker2015-04-281-1/+6
|
* Move noConflict implementation to modulekpdecker2015-04-273-25/+25
| | | | | | DRYs the code to avoid escapes like #1004 Fixes #1004
* NPM ignore log fileskpdecker2015-04-271-0/+1
|
* Remove jshint completelykpdecker2015-04-2710-65/+1
|
* Merge pull request #1008 from shannonmoeller/patch-1Kevin Decker2015-04-251-0/+1
|\ | | | | Added handlebars-layouts to the in-the-wild list
| * Added handlebars-layouts to the in-the-wild listShannon Moeller2015-04-241-0/+1
|/ | | I've written a set of helpers which implement layout blocks similar to Jade, Jinja, Swig, Twig, and others. It seems to be gaining some popularity (around 10k npm downloads per month at present) and I would be honored to have it included in the in-the-wild list in case it may prove useful to others.
* v3.0.2v3.0.2kpdecker2015-04-203-3/+3
|
* Update release noteskpdecker2015-04-201-1/+12
|
* Update for let and optional parameterskpdecker2015-04-2015-239/+236
|