- Handle path-separators properly. Use "path.sep" instead of "/".
Or use "require.resolve()" if possible
- Use "execFile" instead of "exec" to run the Handlebars executable.
This prevents problems due to (missing) shell escaping.
- Use explicit call to "node" in order to run the executable on Windows.
- Add "appveyor"-CI in order to run regular tests on Windows.
- bump to mocha 1.21.5 in order to remove "*" version-range on the
"debug"-dependency
- explicit use of "dot"-reporter for mocha 1.21.5, fixes failing tests
of console.log output
- fix tests running in the browser: assign variable "global" with
global "this", backport from master-branch
- sync saucelab config with master branch:
- Remove Safari 6 and 7 that are not supported by saucelabs anymore
and cause timeouts when running the saucelabs tests.
- Add Safari 8 and Safari 9
- Note: The tests fail with Safari 9 and 10 because in these versions
the "column"-property of "Error" is read-only
(see https://github.com/jquery/esprima/issues/1290)
- Firefox needs explicit platform specifier
Converts the tool chain to use babel, eslint, and webpack vs. the previous proprietary solutions.
Additionally begins enforcing additional linting concerns as well as updates the code to reflect these rules.
Fixes#855Fixes#993
Allow the precompiler to generate source maps when the srcFile parameter is passed.
This refactors large chunks of the code generation pipeline, allowing metadata to be associated with code chunks as well as breaking out much of the code generation logic into a separate helper.
This disables the standalone partial indent behavior required by the Mustache spec and allows for users to utilize partials in the same manner as under 1.x.
Fixes#858
Provides the mustache behavior of recursive lookup without the use of depthed paths.
Note that this does incur a fairly dramatic performance penalty for depthed queries.
The idea is that the environment wraps up the mutable stuff in
Handlebars (like the helpers) and that you could theoretically create a
new one at any time and pass it in to Handlebars.template.
Every test makes a new environment and uses it in template compilation.