Skip to content

Releases: danielaparker/jsoncons

jsoncons 0.167.1

13 Aug 01:35
Compare
Choose a tag to compare

Bugs fixed:

  • Fixed compilation error with clang version 8.0.1, issue #328.

jsoncons 0.167.0

06 Aug 16:09
Compare
Choose a tag to compare

Bugs fixed:

  • Fixed issue with a json_cursor hanging if opened with an empty file
    or string, detected by google/OSS-fuzz.

  • Fixed issue with the unary minus in a JSONPath filter expression,
    where an expression such as $[[email protected] > -42] would fail to parse.

  • Fixed issue with private typedef and Intel C++ Compiler
    via PR #327

Changes:

  • In the csv extension, the enum name mapping_kind has been
    renamed to csv_mapping_kind, and the csv_options.mapping function
    has been renamed to csv_options.mapping_kind. The old names have
    been deprecated but are still usable.

Enhancements:

  • Added support for JSON Merge Patch.

  • Added support in JSONPath expressions for '%' (modulus) operator

Release 0.166.0

06 Jul 02:58
Compare
Choose a tag to compare

jsonpath bugs fixed:

  • Fixed issue with normalized paths produced by JSONPath expressions with filters

jsonpath enhancements:

  • Added support for a parent selector, using the `^' symbol,
    following jsonpath-plus.

  • Implemented a number of performance optimizations.

jsonschema enhancements:

  • Improved error messages reported when compiling a schema document

  • Added a check that the "$schema" keyword, if present, is Draft 7.

Release 0.165.0

05 Jun 19:51
Compare
Choose a tag to compare

Enhancements for bson extension:

  • Added semantic tags float128, id, regex, and code to support
    bson decode and encode for decimal128, ObjectId, regex,
    and Javascript code.

  • Support has been added for ObjectId, regex, decimal128 and
    the other non-deprecated bson types, as requested in issue
    #321.

  • Parsing now checks that the the number of bytes read for a
    document, embedded document and array matches the expected total.

Release 0.164.0

28 May 12:46
Compare
Choose a tag to compare

Changes to jsonpath:

  • The values in the result_options bitmask have been changed from

    enum class result_options {value=1, path=2, nodups=4|path, sort=8|path}; (until 0.164.0)

to

enum class result_options {value=0, nodups=1, sort=2, path=4};            (since 0.164.0)

In practice this means that any combination of these values that includes
result_options::value has the same meaning as before, except that
result_options::value can now be omitted. And any combination that includes
result_options::path but not result_options::value has the
same meaning as before.

Enhancements to jsonpath:

  • Functions now allow expressions to be passed as arguments, e.g.

    $.books[?(ceil(@.price*100) == 2272)]

  • User provided custom functions are now supported

Changes to json_reader and csv_reader:

  • The typedefs json_reader and wjson_reader have been deprecated,
    but for backwards compatibility they are still supported. They
    have been replaced by json_string_reader and wjson_string_reader
    for string sources, and json_stream_reader and wjson_stream_reader,
    for stream sources.

  • The typedefs csv_reader and wcsv_reader have been deprecated,
    but for backwards compatibility they are still supported. They
    have been replaced by csv_string_reader and wcsv_string_reader
    for string sources, and csv_stream_reader and wcsv_stream_reader,
    for stream sources.

Release 0.163.3

23 Apr 10:34
Compare
Choose a tag to compare

Bugs fixed:

  • Fixed a jsonpath issue where the two overloads of json_query and json_replace
    that took a callback function argument used a deprecated typedef in an
    SFINAE condition.

Release 0.163.2

09 Apr 15:31
Compare
Choose a tag to compare

Bugs fixed:

  • Fixed a jmespath issue with reusing compiled expressions, see #317

Release 0.163.1

07 Apr 10:17
Compare
Choose a tag to compare

Bugs fixed:

  • Reversed change made in 0.163.0 to removal of duplicates with the result_options::nodups,
    reverting to previous behaviour (only consider as duplicates nodes with the exact same path
    starting from the root.) That seems to be the consensus.

  • Fixed a memory leak in jsoncons::jsonpath::node_set, see #314,
    also related, #316

  • Fixed some gcc warnings about non-virtual destructors in the jsonpath, jmespath, and
    jsonschema extensions by making the destructors protected, see #313.
    Added the gcc compiler flag -Wnon-virtual-dtor for gcc in the tests/CMakeLists.txt file.

Release 0.163.0

20 Mar 23:35
Compare
Choose a tag to compare

Bugs fixed:

  • Fixed a jsonpath issue with removal of duplicates with the result_options::nodups flag in the case of a union with different paths

Release 0.162.3

20 Mar 02:10
Compare
Choose a tag to compare
  • Fixed a sign-compare warning in android builds