Releases: danielaparker/jsoncons
Release 0.168.4
Issues fixed:
- Fixed issue #352
regardingjson_type_traits
macro failure when number of parameters
reached 47.
Enhancement:
Increased maximum number of parameters in json_type_traits
macros
from 50 to 70.
Release 0.168.3
Issues fixed:
-
Preseve original error messages when decoding into C++ data structures
(related to issue #345) -
Fixed issue #348)
concerning compilation issue on OSx with C++11
Release 0.168.2
Issues fixed:
-
Fixed issue #343
concerning segfault using JMESPath with Apple clang version 12.0.0 and
x86_64-apple-darwin19.6.0. -
Fixed issue #344
concerning compile error with gcc on archlinux with-Werror=nonnull
.
Release 0.168.1
Bugs fixed:
- Fixed jsonpath issue of normalized path component not being computed
for expression, issue #338.
Release 0.168.0
Bugs fixed:
-
Fixed issue #335.
The 0b... notation used in a cbor header file has been replaced with 0x... notation.
The 0b... notation used is only standard compliant with C++14 and later, although
supported in some C++ 11 compilers. -
Fixed issue with csv automatic number detection discovered while investigating
issue #333.
Enhancements to jsonpointer extension:
-
Support construction of a
json_pointer
from a URI fragment representation of a JSON Pointer. -
Support stringifying a
json_pointer
to a URI fragment representation with theto_uri_fragment
function.
jsoncons 0.167.1
Bugs fixed:
- Fixed compilation error with clang version 8.0.1, issue #328.
jsoncons 0.167.0
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 tocsv_mapping_kind
, and thecsv_options.mapping
function
has been renamed tocsv_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
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
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
Changes to jsonpath:
-
The values in the
result_options
bitmask have been changed fromenum 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
andwjson_reader
have been deprecated,
but for backwards compatibility they are still supported. They
have been replaced byjson_string_reader
andwjson_string_reader
for string sources, andjson_stream_reader
andwjson_stream_reader
,
for stream sources. -
The typedefs
csv_reader
andwcsv_reader
have been deprecated,
but for backwards compatibility they are still supported. They
have been replaced bycsv_string_reader
andwcsv_string_reader
for string sources, andcsv_stream_reader
andwcsv_stream_reader
,
for stream sources.