Changelog History
Page 1
-
v0.1.11 Changes
December 02, 2020๐ This release fixes a serious bug in the
number()
function that
returned wrong results when converting strings into negative decimal
numbers (issue #160).๐ Other than that, what is new in this release compared to 0.1.10 is
what was added in the 0.1.11-beta:When creating objects for output the key can now be computed with a
JSLT expression.Three functions have been added:
zip-with-index zip index-of
And, finally, the JSLT implementation has been made fully thread-safe
by making the regular expression cache thread-safe. -
v0.1.11-beta Changes
August 18, 2020๐ This beta release adds one language extension, three functions, and
๐ fixes one bug.When creating objects for output the key can now be computed with a
JSLT expression.Three functions have been added:
zip-with-index
zip
index-of
And, finally, the JSLT implementation has been made fully thread-safe
by making the regular expression cache thread-safe. -
v0.1.10 Changes
June 21, 2020๐ The main change in this release is the new pipe operator
|
, which allows you to set the context node explicitly. The most obvious use case for it is to select a source JSON object to do object matching, but it can be used for many other things, too. Many thanks to @ecerulm for contributing the implementation!Other changes:
- ๐ The
parse-url
function has been added, designed and implemented by @ecerulm - ๐ A bug in the parsing of escape sequences inside strings was fixed by @biochimia
- ๐ The
-
v0.1.9 Changes
March 05, 2020Language changes:
- ๐ New functions
min()
andmax()
added - ๐ New function
hash-int
added (thanks to @ecerulm) null
+ object now produces the object (notnull
)null
+ array now produces the array (notnull
)
API changes:
FileSystemResourceResolver
added (thanks to @ngsoftwaredev)- ๐ง Made it possible to configure encoding on resolvers
๐ Bug fixes:
- ๐ Support leading zeroes in strings passed to
number()
(issue #112) - ๐ Support Cyrillic characters in string literals (issue #115)
- ๐ Upgraded to Jackson 2.10.3 (security fixes)
- ๐ Handle
null
being returned from Java extension functions - Avoid
NullPointerException
when statically wrapped method does not exist
- ๐ New functions
-
v0.1.8 Changes
June 01, 2019 -
v0.1.7 Changes
April 06, 2019The following extensions have been made:
- ๐ง Which values are included in JSON objects is now configurable (by default keys =
null
are omitted), - The
replace
function was added - The
trim
function was added
๐ The following bugs have been fixed:
- Made JSLT work on JDK 11 by removing javax.* dependency
- ๐ Fixed a bug with variable references and array slicers
- ๐ง Which values are included in JSON objects is now configurable (by default keys =
-
v0.1.6 Changes
January 28, 2019Some language improvements:
- it used to be impossible to declare global variables in modules and then refer to them from functions. This now works.
- JSLT now forbids object literals that contain the same key twice.
- JSLT now depends on Jackson 2.9.8.
One function has been added:
- mod(a, b) to compute a modulo b. (Thank you to @ecerulm for work on this!)
โก๏ธ This version has been optimized in several ways:
- โก๏ธ variables that are used only once, or that have constant values, are now optimized away completely
- operations involving two literals are now performed at compile-time,
- the internal representation of variables is now much faster, and
- โก๏ธ if
b
incontains(a, b)
is a large array literal, the optimizer now replaces this with a hashset lookup, instead of doing a linear search.
-
v0.1.5 Changes
December 03, 2018Functions added:
๐ Bugs fixed:
-
v0.1.4 Changes
October 08, 2018 -
v0.1.3 Changes
August 14, 2018๐ This release sees one language extension, a new function, one optimization, and bug fixes. Huge thanks to @vectro for contributions.
Language changes:
- โ Added if filters in array and object comprehensions
- The
flatten()
function was added
Optimizations:
- Tiny optimization in object comprehensions
๐ Bug fixes: