Releases: mikhail-barg/jsonata.net.native
v3.0.0-pre2
This is the first (pre-)release of new v3 version of Jsonata.Net.Native.
This version is aimed to be maximally compilant with original jsonata-js, in terms of language features. Currenly 1365 out of 1655 tests in jsonata test suite are passing and remainig 290 are acknowledged as acceptable differences (eg. we still use C# formatting strings, etc.). So all the language features, operators, etc are implemented! This is a highest compartibility level for Jsonata.Net.Native up to date!
Please note that v3 branch is not expected to be 100% backwards compartible with v2. While I was hoping to not make unnecessary changes, keeping 100% compartibility was not the main goal here, so some things has been changed.
This release is an early version preview of v3 branch, so tehre are some known issues:
- query introspection api is not working (will be restored later, but with different classes — also a breaking change)
- classes and namespaces names are not final, (but this is mostly applicable to internals, not affercting users)
v2.11.0
v2.10.0
What's new:
- Improved
JsonataExtensions.ToSystemTextJsonNode— now it is able to create a JsonNode for anundefinedtoken instead of throwing exeption. See discussion here. The node itself is not very useful, but at least it could be checked for it's kind like this. - Exposed
Eval.BuiltinFunctionsclass to provide for re-using standard functions when implementing custom ones. See #39 - Exposed
Eval.FunctionTokenandEval.EvalProcessor.InvokeFunction()to provide for custom functions accepting other functions as arguments. - Improved JsonataExerciser app: added ability to process output json with Json.Net or System.Text.Json conversion (actually results should be the same, but it seems to be handy):
v2.9.0
What's new:
- improved behaviour of
toMillis()function:- better defaults when no
picturestring is provided. UsingTryParseinstead ofTryParseExactallowed for parsing date-time strings that are not strictly match ISO format (like missing time parts, etc). See #30 - supports propagating
undefined
- better defaults when no
- improved behaviour of
fromMillisfunction:- displaying
Zas timezone for UTC (instead of +00:00)
- displaying
Please note that these changes are breaking (strictly speaking), but are directed towards better conforming to original JSONata-js specification.
v2.8.1
What's new:
- added synchroneous version of Json validation (see
JToken.Validate())
v2.8.0
What's new:
- Added asynchroneous JSON parsing API (see
JToken.ParseAsync()) - Added ability to vaildate JSON without actually creating JToken DOM objects in memory (see
JToken.VaildateAsync())
Breaking Changes:
- Switched from
net6.0tonet8.0as a minimal .net version (net47andnetstandard2.0are still supported)
v2.7.0
Added Query DOM API. See here: https://github.com/mikhail-barg/jsonata.net.native?tab=readme-ov-file#query-dom-introspection-and-query-creation-via-dom
v2.6.1
- Fix for serialization of keys with quotes
v2.6.0
- Renamed SerializationOptions to SerializationSettings
- Added ToObjectSettings
v2.5.0
- added support for System.Text.Json mutable DOM (
JsonNode) - added support for serialization without properties with null values:
JToken.ToFlatString/ToIndendtedString(SerializationOptions) - better serialization for simple types
