Fix reference counting on true, false and null
[jansson.git] / CHANGES
1 Version 1.2
2 ===========
3
4 Released 2010-01-21
5
6 * New functions:
7
8   - `json_equal()`: Test whether two JSON values are equal
9   - `json_copy()` and `json_deep_copy()`: Make shallow and deep copies
10     of JSON values
11   - Add a version of all functions taking a string argument that
12     doesn't check for valid UTF-8: `json_string_nocheck()`,
13     `json_string_set_nocheck()`, `json_object_set_nocheck()`,
14     `json_object_set_new_nocheck()`
15
16 * New encoding flags:
17
18   - ``JSON_SORT_KEYS``: Sort objects by key
19   - ``JSON_ENSURE_ASCII``: Escape all non-ASCII Unicode characters
20   - ``JSON_COMPACT``: Use a compact representation with all unneeded
21     whitespace stripped
22
23 * Bug fixes:
24
25   - Revise and unify whitespace usage in encoder: Add spaces between
26     array and object items, never append newline to output.
27   - Remove const qualifier from the ``json_t`` parameter in
28     `json_string_set()`, `json_integer_set()` and `json_real_set`.
29   - Use ``int32_t`` internally for representing Unicode code points
30     (int is not enough on all platforms)
31
32 * Other changes:
33
34   - Convert ``CHANGES`` (this file) to reStructured text and add it to
35     HTML documentation
36   - The test system has been refactored. Python is no longer required
37     to run the tests.
38   - Documentation can now be built by invoking ``make html``
39   - Support for pkg-config
40
41
42 Version 1.1.3
43 =============
44
45 Released 2009-12-18
46
47 * Encode reals correctly, so that first encoding and then decoding a
48   real always produces the same value
49 * Don't export private symbols in ``libjansson.so``
50
51
52 Version 1.1.2
53 =============
54
55 Released 2009-11-08
56
57 * Fix a bug where an error message was not produced if the input file
58   could not be opened in `json_load_file()`
59 * Fix an assertion failure in decoder caused by a minus sign without a
60   digit after it
61 * Remove an unneeded include of ``stdint.h`` in ``jansson.h``
62
63
64 Version 1.1.1
65 =============
66
67 Released 2009-10-26
68
69 * All documentation files were not distributed with v1.1; build
70   documentation in make distcheck to prevent this in the future
71 * Fix v1.1 release date in ``CHANGES``
72
73
74 Version 1.1
75 ===========
76
77 Released 2009-10-20
78
79 * API additions and improvements:
80
81   - Extend array and object APIs
82   - Add functions to modify integer, real and string values
83   - Improve argument validation
84   - Use unsigned int instead of ``uint32_t`` for encoding flags
85
86 * Enhance documentation
87
88   - Add getting started guide and tutorial
89   - Fix some typos
90   - General clarifications and cleanup
91
92 * Check for integer and real overflows and underflows in decoder
93 * Make singleton values thread-safe (``true``, ``false`` and ``null``)
94 * Enhance circular reference handling
95 * Don't define ``-std=c99`` in ``AM_CFLAGS``
96 * Add C++ guards to ``jansson.h``
97 * Minor performance and portability improvements
98 * Expand test coverage
99
100
101 Version 1.0.4
102 =============
103
104 Released 2009-10-11
105
106 * Relax Autoconf version requirement to 2.59
107 * Make Jansson compile on platforms where plain ``char`` is unsigned
108 * Fix API tests for object
109
110
111 Version 1.0.3
112 =============
113
114 Released 2009-09-14
115
116 * Check for integer and real overflows and underflows in decoder
117 * Use the Python json module for tests, or simplejson if the json
118   module is not found
119 * Distribute changelog (this file)
120
121
122 Version 1.0.2
123 =============
124
125 Released 2009-09-08
126
127 * Handle EOF correctly in decoder
128
129
130 Version 1.0.1
131 =============
132
133 Released 2009-09-04
134
135 * Fixed broken `json_is_boolean()`
136
137
138 Version 1.0
139 ===========
140
141 Released 2009-08-25
142
143 * Initial release