Skip to content

Releases: alfmep/libujson

Release 4.2.5

01 May 13:26

Choose a tag to compare

  • Fixed issue where the parser reported error code jparser::err::internal instead of jparser::err::unterminated_array.
  • ujson-print: Added option '--exit-on-error' that makes the application exit with an error on first parsing error when using option '--multi-doc' instead of continue to parse next input line. Fixed bug: When using option '--multi-doc', the application exits with an error on EOF.

Release 4.2.4

16 Feb 11:51

Choose a tag to compare

  • Improved error handling in the utility applications.
  • When building without support for gmpxx, print numbers with maximum precision.
  • When uninstalling, use CMAKE command 'file' instead of 'execute_process'.

Release 4.2.3

15 Dec 19:47

Choose a tag to compare

  • When validating a JSON instance using a JSON schema, stop the validation at the first failed instance value by default.
  • Added option to continue validation to get a fully populated output when validation fails.
  • Added option '-m,--multi-doc' to utility ujson-print. This option make ujson-print treat the input as a stream of JSON instances separated by line breaks.
  • Fixed bug in utility applications when reading from standard input.
  • Added cmake parameter 'DISABLE_CONSOLE_COLOR' to force disable console colors.
  • Updated doxygen configuration file for use with doxygen version 1.9.8.
  • Removed the usage of command exec_program in cmake, using execute_process instead.

Release 4.2.2

28 Jul 10:04

Choose a tag to compare

  • Fixed potential crash bug then moving objects of type ujson::jvalue.
  • Updated configuration of generated API documentation.

Release 4.2.1

18 Apr 04:46

Choose a tag to compare

  • Added functionality to set limits on nesting depth, array and object size when parsing JSON. Limits are not enabled by default.
  • Bug fixes.

Release 4.2.0

21 Dec 07:34

Choose a tag to compare

New in release 4.2.0:

  • Support for JSON Schema version 2020-12
  • New parsing implementation, removing dependency on Bison and Flex while also improving performance.

Release 4.1.3

04 Oct 08:14

Choose a tag to compare

Release 4.1.3

Release 4.1.2

24 Sep 17:46

Choose a tag to compare

  • Class ujson::jvalue: Added method std::string describe (desc_format_t fmt=fmt_none) const; using flags to control the output format instead of a number of arguments. The old describe() method is now deprecated.
  • Added support for JSON output in syntax highlighting.
  • Utility ujson-print: Added option '-o,--color' to print JSON in color when output to a tty.
  • Utility ujson-tool: Added option '-o,--color' to print JSON in color when output to a tty.

Release 4.1.1

23 May 15:41

Choose a tag to compare

  • Moved from autotools to cmake for building libujson.
  • Made it possible to build on Windows using Visual Studio. Tested building static libraries and utilities using Visual Studio 2022 Community Edition.
  • Improved handling of escape code '\uxxxx' in JSON strings. More than one consecutive '\uxxxx' escape sequence in a JSON string wasn't handled correctly.
  • Added utility function ujson::utf16_to_utf8() that converts an UTF-16 string to an UTF-8 string.

Release 4.1.0

23 Dec 13:39

Choose a tag to compare

  • Added convenience methods to check if a jvalue represents a specific JSON type.
  • Added command 'patch' to utility application ujson-tool.
  • Added test script to test JSON parsing using the test suite at https://github.com/nst/JSONTestSuite
  • Fixed issue with converting class mpf_class to a string.
  • Added class ujson::json_type_error. Methods in class ujson::jvalue that operates on a different JSON type that the instance currently represent used to throw std::logic_error, now they throw ujson::json_type_error instead.