Jansson v2.0 Release Notes
-
๐ Released 2011-02-28
๐ This release is backwards incompatible with the 1.x release series. ๐ See the chapter "Upgrading from older versions" in documentation for details.
Backwards incompatible changes:
- Unify unsigned integer usage in the API: All occurences of unsigned int and unsigned long have been replaced with size_t.
- Change JSON integer's underlying type to the widest signed integer type available, i.e. long long if it's supported, otherwise long. Add a typedef json_int_t that defines the type.
- Change the maximum indentation depth to 31 spaces in encoder. This
frees up bits from the flags parameter of encoding functions
json_dumpf()
,json_dumps()
andjson_dump_file()
. - For future needs, add a flags parameter to all decoding functions
json_loadf()
,json_loads()
andjson_load_file()
.
๐ New features
json_pack()
,json_pack_ex()
,json_vpack_ex()
: Create JSON values based on a format string.json_unpack()
,json_unpack_ex()
,json_vunpack_ex()
: Simple value extraction and validation functionality based on a format string.- Add column, position and source fields to the
json_error_t
struct. - Enhance error reporting in the decoder.
JANSSON_VERSION
et al.: Preprocessor constants that define the library version.json_set_alloc_funcs()
: Set custom memory allocation functions.
๐ Fix many portability issues, especially on Windows.
๐ง Configuration
- Add file
jansson_config.h
that contains site specific configuration. It's created automatically by the configure script, or can be created by hand if the configure script cannot be used. The filejansson_config.h.win32
can be used without modifications on Windows systems. - Add a section to documentation describing how to build Jansson on Windows.
- Documentation now requires Sphinx 1.0 or newer.
- Add file