Skip to content

Releases: mikhail-barg/jsonata.net.native

v3.0.0-pre2

27 Nov 07:05

Choose a tag to compare

v3.0.0-pre2 Pre-release
Pre-release

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

05 Oct 12:42

Choose a tag to compare

What's new:

  • Fix for the $sort() function, see #43

While this looks like a minor fix, it is potentially a breaking change (still not significant enough to cause a major version change), so be on guard.

v2.10.0

17 Apr 21:28

Choose a tag to compare

What's new:

  • Improved JsonataExtensions.ToSystemTextJsonNode — now it is able to create a JsonNode for an undefined token 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.BuiltinFunctions class to provide for re-using standard functions when implementing custom ones. See #39
  • Exposed Eval.FunctionToken and Eval.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):

image

v2.9.0

16 Apr 22:38

Choose a tag to compare

What's new:

  • improved behaviour of toMillis() function:
    • better defaults when no picture string is provided. Using TryParse instead of TryParseExact allowed for parsing date-time strings that are not strictly match ISO format (like missing time parts, etc). See #30
    • supports propagating undefined
  • improved behaviour of fromMillis function:
    • displaying Z as timezone for UTC (instead of +00:00)

Please note that these changes are breaking (strictly speaking), but are directed towards better conforming to original JSONata-js specification.

v2.8.1

14 Jan 17:40

Choose a tag to compare

What's new:

  • added synchroneous version of Json validation (see JToken.Validate())

v2.8.0

14 Jan 12:41

Choose a tag to compare

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.0 to net8.0 as a minimal .net version (net47 and netstandard2.0 are still supported)

v2.7.0

04 Aug 14:42

Choose a tag to compare

v2.6.1

22 Feb 09:13

Choose a tag to compare

  • Fix for serialization of keys with quotes

v2.6.0

20 Feb 08:55

Choose a tag to compare

  • Renamed SerializationOptions to SerializationSettings
  • Added ToObjectSettings

v2.5.0

19 Feb 14:02

Choose a tag to compare

  • 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