зеркало из https://github.com/mozilla/mozjexl.git
3.7 KiB
3.7 KiB
mozjexl Change Log
This project adheres to Semantic Versioning.
Development
Changed
- Format all code with Prettier and ESLint.
- Remove Gulp and dist versions.
- Drop support for old versions of Node. Only Node 8 and 9 are supported.
- Make Yarn the recommended and tested way to install mozjexl.
v1.1.6
Changed
- Add comments with octothorpes (
#
)
v1.1.5
Changed
- Allow arbitrary whitespace, including newlines, in expressions.
Fixed
- Handle undefined and filter expressions better.
v1.1.4
Fixed
- Falsey identifiers are no longer treated as undefined
v1.1.3
Fixed
- Binary operators after nested identifiers were not balanced properly, resulting in a broken expression/AST
- Gulp (or one of its plugins) had a breaking change in a minor release, preventing the frontend build from running. This build method will be removed from the next major version of Jexl. For now, Jexl is now version- locked to the original gulp+plugins that worked.
v1.1.2
Changed
- Code coverage thresholds are now enforced through
gulp coverage-test
Fixed
- Operators found in identifier names (such as 'in' in 'incident') were being tokenized separately from the rest of the identifier
v1.1.1
Fixed
- Minus did not denote a negative number at the start of a ternary's consequent section
v1.1.0
Added
- The ability to define new binary and unary operators, or override existing ones.
- The ability to delete existing binary and unary operators.
v1.0.2 = 2015-03-08
Fixed
- Bad Gulpfile resulted in frontend dist falling out of sync. Fixed and re-synced.
v1.0.1 - 2015-03-08
Changed
- Refactored Parser and Evaluator. Both operations are now marginally faster.
- Removed balance tracking in favor of passing maps of token types at which the sub-parser should stop.
Fixed
- Object literals could not be defined in the consequent section of a ternary expression.
v1.0.0 - 2015-03-04
Added
- Object literals. Objects can now be defined inline with
{standard: 'syntax'}
. - Array literals. Arrays can also be defined with
["standard", 'syntax']
. - The 'in' operator, for checking to see if a string appears inside a larger string, or if an element exists in an array.
- Ternary expressions with
this ? "standard" : "syntax"
- Ternary expressions with
alternate ?: "syntax"
Changed
- Simplified Grammar, reduced RAM footprint
- Dot notation can now be used to access properties of literals, such as
"someString".length
or{foo: 'bar'}.foo
. - Transform syntax has changed. Arguments are now passed in parentheses, and multiple arguments can be defined. Arguments are no longer limited to object literals.
v0.2.0 - 2015-03-02
Added
- "Divide and floor" operator: //
- Documentation outlining running expressions against XML.
v0.1.0 - 2015-03-02
Added
- Initial release