Jansson v2.7 Release Notes
Release Date: 2014-10-02 // over 9 years ago-
๐ Released 2014-10-02
๐ New features:
json_pack()
and friends: Add format specifierss%
and+%
for a size_t string length (#141).json_unpack()
and friends: Add format specifiers%
for unpacking the string length along with the string itself (#141).- Add length-aware string constructors
json_stringn()
andjson_stringn_nocheck()
, length-aware string mutatorsjson_string_setn()
andjson_string_setn_nocheck()
, and a function for getting string's lengthjson_string_length()
(#141, #143). - Support
\u0000
escapes in the decoder. The support can be enabled by using theJSON_ALLOW_NUL
decoding flag (#141). - Add
json_boolean_value()
as an alias forjson_is_true()
(#146). - Add JSON_REAL_PRECISION encoding flag/macro for controlling real number precision (#178).
- Define the maximum indentation as JSON_MAX_INDENT (#191).
๐ Bug fixes:
- Some malformed
\uNNNN
escapes could crash the decoder with an assertion failure. - Avoid integer overflows with very long strings in UTF-8 decoder and hashtable.
- Check for NULL key in
json_object_get()
andjson_object_del()
(#151). - Enhance hashtable seeding on Windows (#162).
json_unpack()
: Allow mixing JSON_STRICT with optional keys (#162, #163).- Fix int/int32 mismatch (#142).
- Parse subnormal numbers correctly (#202).
- Some malformed
๐ Build:
- Remove VS2010 build files. CMake should be used on Windows instead (#165).
- Fix CMake build flags for MinGW (#193).
- Add CMake config files for find_package. Rename config.h to jansson_private_config.h (#157, #159).
- Make Valgrind checks work with CMake (#160).
- Fix feature checks to use correct __ATOMIC flags.
- Fix CMake checks for uint16_t and uint8_t support (#177).
- Make Jansson build on SmartOS/Solaris (#171).
- Work around a GCC bug on Solaris (#175).
- Fix autoreconf on Debian (#182).
- Don't use GNU make specific export for global AM_CFLAGS (#203, #204).
- Fix building on Android using the supplied Android.mk (#166, #174).
- Android.mk: Add -DHAVE_STDINT_H to LOCAL_CFLAGS (#200).
๐ Documentation:
- Document JANSSON_BUILD_SHARED_LIBS CMake option (#187).
โ Tests:
- Close file handles correctly (#198).
Other changes:
\uNNNN
escapes are now encoded in upper case for better readability.- Enable usage of AddressSanitizer (#180).