4 * IMPORTANT: the name of the library has changed to libjson-c.so and
5 the header files are now in include/json-c.
6 The pkgconfig name has also changed from json to json-c.
7 You should change your build to use appropriate -I and -l options.
8 A compatibility shim is in place so builds using the old name will
9 continue to work, but that will be removed in the next release.
10 * Maximum recursion depth is now a runtime option.
11 json_tokener_new() is provided for compatibility.
12 json_tokener_new_ex(depth)
16 * Add a json_object_to_json_string_ext() function to allow output to be
17 formatted in a more human readable form.
18 * Add json_object_object_get_ex(), a NULL-safe get object method, to be able
19 to distinguish between a key not present and the value being NULL.
20 * Add an alternative iterator implementation, see json_object_iterator.h
21 * Make json_object_iter public to enable external use of the
22 json_object_object_foreachC macro.
23 * Add a printbuf_memset() function to provide an effecient way to set and
24 append things like whitespace indentation.
25 * Adjust json_object_is_type and json_object_get_type so they return
26 json_type_null for NULL objects and handle NULL passed to
27 json_objct_object_get().
28 * Rename boolean type to json_bool.
29 * Fix various compile issues for Visual Studio and MinGW.
30 * Allow json_tokener_parse_ex() to be re-used to parse multiple object.
31 Also, fix some parsing issues with capitalized hexadecimal numbers and
33 * Add json_tokener_get_error() and json_tokener_error_desc() to better
34 encapsulate the process of retrieving errors while parsing.
35 * Various improvements to the documentation of many functions.
36 * Add new json_object_array_sort() function.
37 * Fix a bug in json_object_get_int(), which would incorrectly return 0
38 when called on a string type object.
40 * Add a json_type_to_name() function.
42 * Add a json_tokener_parse_verbose() function.
44 * Improve support for null bytes within JSON strings.
46 * Fix file descriptor leak if memory allocation fails in json_util
47 Zachary Blair, zack_blair at hotmail dot com
48 * Add int64 support. Two new functions json_object_net_int64 and
49 json_object_get_int64. Binary compatibility preserved.
50 Eric Haszlakiewicz, EHASZLA at transunion com
51 Rui Miguel Silva Seabra, rms at 1407 dot org
52 * Fix subtle bug in linkhash where lookup could hang after all slots
53 were filled then successively freed.
54 Spotted by Jean-Marc Naud, j dash m at newtraxtech dot com
55 * Make json_object_from_file take const char *filename
56 Spotted by Vikram Raj V, vsagar at attinteractive dot com
57 * Add handling of surrogate pairs (json_tokener.c, test4.c, Makefile.am)
58 Brent Miller, bdmiller at yahoo dash inc dot com
59 * Correction to comment describing printbuf_memappend in printbuf.h
60 Brent Miller, bdmiller at yahoo dash inc dot com
63 * Add README.html README-WIN32.html config.h.win32 to Makefile.am
64 Michael Clark, <michael@metaparadigm.com>
65 * Add const qualifier to the json_tokener_parse functions
66 Eric Haszlakiewicz, EHASZLA at transunion dot com
67 * Rename min and max so we can never clash with C or C++ std library
68 Ian Atha, thatha at yahoo dash inc dot com
69 * Fix any noticeable spelling or grammar errors.
70 * Make sure every va_start has a va_end.
71 * Check all pointers for validity.
72 Erik Hovland, erik at hovland dot org
73 * Fix json_object_get_boolean to return false for empty string
74 Spotted by Vitaly Kruglikov, Vitaly dot Kruglikov at palm dot com
75 * optimizations to json_tokener_parse_ex(), printbuf_memappend()
76 Brent Miller, bdmiller at yahoo dash inc dot com
77 * Disable REFCOUNT_DEBUG by default in json_object.c
78 * Don't use this as a variable, so we can compile with a C++ compiler
79 * Add casts from void* to type of assignment when using malloc
80 * Add #ifdef __cplusplus guards to all of the headers
81 * Add typedefs for json_object, json_tokener, array_list, printbuf, lh_table
82 Michael Clark, <michael@metaparadigm.com>
83 * Null pointer dereference fix. Fix json_object_get_boolean strlen test
84 to not return TRUE for zero length string. Remove redundant includes.
85 Erik Hovland, erik at hovland dot org
86 * Fixed warning reported by adding -Wstrict-prototypes
87 -Wold-style-definition to the compilatin flags.
88 Dotan Barak, dotanba at gmail dot com
89 * Add const correctness to public interfaces
90 Gerard Krol, g dot c dot krol at student dot tudelft dot nl
93 * Add va_end for every va_start
94 Dotan Barak, dotanba at gmail dot com
95 * Add macros to enable compiling out debug code
96 Geoffrey Young, geoff at modperlcookbook dot org
97 * Fix bug with use of capital E in numbers with exponents
98 Mateusz Loskot, mateusz at loskot dot net
99 * Add stddef.h include
100 * Patch allows for json-c compile with -Werror and not fail due to
101 -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations
102 Geoffrey Young, geoff at modperlcookbook dot org
105 * Add escaping of backslash to json output
106 * Add escaping of foward slash on tokenizing and output
107 * Changes to internal tokenizer from using recursion to
108 using a depth state structure to allow incremental parsing
111 * Fix bug in escaping of control characters
112 Johan Björklund, johbjo09 at kth dot se
113 * Remove include "config.h" from headers (should only
114 be included from .c files)
115 Michael Clark <michael@metaparadigm.com>
118 * Make headers C++ compatible by change *this to *obj
119 * Add ifdef C++ extern "C" to headers
120 * Use simpler definition of min and max in bits.h
121 Larry Lansing, llansing at fuzzynerd dot com
123 * Remove automake 1.6 requirement
124 * Move autogen commands into autogen.sh. Update README
125 * Remove error pointer special case for Windows
126 * Change license from LGPL to MIT
127 Michael Clark <michael@metaparadigm.com>
130 * Fix additional error case in object parsing
131 * Add back sign reversal in nested object parse as error pointer
132 value is negative, while error value is positive.
133 Michael Clark <michael@metaparadigm.com>
136 * fix pointer arithmetic bug for error pointer check in is_error() macro
137 * fix type passed to printbuf_memappend in json_tokener
138 * update autotools bootstrap instructions in README
139 Michael Clark <michael@metaparadigm.com>
142 * printbuf.c - C. Watford (christopher.watford@gmail.com)
143 Added a Win32/Win64 compliant implementation of vasprintf
144 * debug.c - C. Watford (christopher.watford@gmail.com)
145 Removed usage of vsyslog on Win32/Win64 systems, needs to be handled
146 by a configure script
147 * json_object.c - C. Watford (christopher.watford@gmail.com)
148 Added scope operator to wrap usage of json_object_object_foreach, this
149 needs to be rethought to be more ANSI C friendly
150 * json_object.h - C. Watford (christopher.watford@gmail.com)
151 Added Microsoft C friendly version of json_object_object_foreach
152 * json_tokener.c - C. Watford (christopher.watford@gmail.com)
153 Added a Win32/Win64 compliant implementation of strndup
154 * json_util.c - C. Watford (christopher.watford@gmail.com)
155 Added cast and mask to suffice size_t v. unsigned int conversion
157 * json_tokener.c - sign reversal issue on error info for nested object parse
158 spotted by Johan Björklund (johbjo09 at kth.se)
159 * json_object.c - escape " in json_escape_str
160 * Change to automake and libtool to build shared and static library
161 Michael Clark <michael@metaparadigm.com>