-
Fixed bugs:
-
Git Issue #644: flatten/unflatten does not preserve arrays with more than 10 elements
-
Git Issue #652: Fixed issue with JSON Schema AdditionalProperties validator
-
Git Issue #653: Fixed issue with non existing default values being added in JSON Schema patch
-
Git Issue #659: Fixed jsonschema validation message
-
Git Issue #664: Fixed issue with detection of CBOR typed arrays that manifested itself on i386
-
Fixed issue with JSON encode option
array_array_split_linesvalueline_split_kind::new_line
not creating a new line -
Fixed issue of JSON encode line split options applied to inner JSON structures
conflicting with line split options applied to outer JSON structures, e.g. when
root line splits are same_line and array within array line splits are multi_line.
With the new behaviour the inner structure will remain same_line if the outer
structure is same_line.
-
-
Changes
-
jsonpointer::unflattennow throws an exception if passed an empty object -
The
err_handlerproperty ofbasic_json_optionshas been deprecated and will
be removed in a future release. Use theallow_trailing_commaandallow_comments
options instead. -
Constructor overloads for
basic_json_parser,basic_json_reader,basic_json_cursor,
basic_csv_parser,basic_csv_readerandbasic_csv_cursorthat take anerr_handler
argument have been deprecated and will be removed in a future release. Use the
allow_trailing_commaandallow_commentsoptions instead. -
The functors
strict_json_parsingandallow_trailing_commashave been deprecated and
will be removed in a future release. Use theallow_trailing_commaandallow_comments
options instead. -
The json_parser option
lossless_bignum, when false, now applies to integer values
as well as floating point values. -
basic_json::is_bignumfunction has been changed to returntrueif the value
is any string value tagged asbigint,bigdec,float128, orbigfloat
(previously onlybigint.) -
basic_jsonhas a functiontype()that returns ajson_typeenumeration,
and the names of its enumerators have been changed.null_value,bool_value,
int64_value,uint64_value,half_value,double_value,string_value,
byte_string_value,array_valueandobject_valuehave been changed to
null,boolean,int64,uint64,float16,float64,string,
byte_string,arrayandobjectrespectively. It's unlikely that we have
many users ofjson_type, it isn't used in any of our examples, but for
backwards compatibility the old names, now deprecated, have been typedef-ed to
the new names. -
The
json_optionsmember nameline_splitshas been renamed toroot_line_spits.
For backwards compatibility, the old name, now deprecated, behaves the same as the
new name.
-
-
Enhancements
-
Git Discussions #594: Updated reflection traits to supports
boost::optional -
Git Discussions #651: Improved
decode_jsonerror messages -
Git PR #647: Allow user configuration of JSONCONS_HAS_STD_FROM_CHARS
-
Git Discussions #654: Added an
indent_charproperty tobasic_json_optionsthat supports tab indents -
Git Discussions #660: Added reflection traits for read/write of enum values as integers.
-