Unify unsigned integer usage in the API
[jansson.git] / CHANGES
1 Version 1.3
2 ===========
3
4 Released 2010-06-13
5
6 * New encoding flags:
7
8   - ``JSON_PRESERVE_ORDER``: Preserve the insertion order of object
9     keys.
10
11 * Bug fixes:
12
13   - Fix an error that occured when an array or object was first
14     encoded as empty, then populated with some data, and then
15     re-encoded
16
17   - Fix the situation like above, but when the first encoding resulted
18     in an error
19
20 * Documentation:
21
22   - Clarify the documentation on reference stealing, providing an
23     example usage pattern
24
25
26 Version 1.2.1
27 =============
28
29 Released 2010-04-03
30
31 * Bug fixes:
32
33   - Fix reference counting on ``true``, ``false`` and ``null``
34   - Estimate real number underflows in decoder with 0.0 instead of
35     issuing an error
36
37 * Portability:
38
39   - Make ``int32_t`` available on all systems
40   - Support compilers that don't have the ``inline`` keyword
41   - Require Autoconf 2.60 (for ``int32_t``)
42
43 * Tests:
44
45   - Print test names correctly when ``VERBOSE=1``
46   - ``test/suites/api``: Fail when a test fails
47   - Enhance tests for iterators
48   - Enhance tests for decoding texts that contain null bytes
49
50 * Documentation:
51
52   - Don't remove ``changes.rst`` in ``make clean``
53   - Add a chapter on RFC conformance
54
55
56 Version 1.2
57 ===========
58
59 Released 2010-01-21
60
61 * New functions:
62
63   - `json_equal()`: Test whether two JSON values are equal
64   - `json_copy()` and `json_deep_copy()`: Make shallow and deep copies
65     of JSON values
66   - Add a version of all functions taking a string argument that
67     doesn't check for valid UTF-8: `json_string_nocheck()`,
68     `json_string_set_nocheck()`, `json_object_set_nocheck()`,
69     `json_object_set_new_nocheck()`
70
71 * New encoding flags:
72
73   - ``JSON_SORT_KEYS``: Sort objects by key
74   - ``JSON_ENSURE_ASCII``: Escape all non-ASCII Unicode characters
75   - ``JSON_COMPACT``: Use a compact representation with all unneeded
76     whitespace stripped
77
78 * Bug fixes:
79
80   - Revise and unify whitespace usage in encoder: Add spaces between
81     array and object items, never append newline to output.
82   - Remove const qualifier from the ``json_t`` parameter in
83     `json_string_set()`, `json_integer_set()` and `json_real_set`.
84   - Use ``int32_t`` internally for representing Unicode code points
85     (int is not enough on all platforms)
86
87 * Other changes:
88
89   - Convert ``CHANGES`` (this file) to reStructured text and add it to
90     HTML documentation
91   - The test system has been refactored. Python is no longer required
92     to run the tests.
93   - Documentation can now be built by invoking ``make html``
94   - Support for pkg-config
95
96
97 Version 1.1.3
98 =============
99
100 Released 2009-12-18
101
102 * Encode reals correctly, so that first encoding and then decoding a
103   real always produces the same value
104 * Don't export private symbols in ``libjansson.so``
105
106
107 Version 1.1.2
108 =============
109
110 Released 2009-11-08
111
112 * Fix a bug where an error message was not produced if the input file
113   could not be opened in `json_load_file()`
114 * Fix an assertion failure in decoder caused by a minus sign without a
115   digit after it
116 * Remove an unneeded include of ``stdint.h`` in ``jansson.h``
117
118
119 Version 1.1.1
120 =============
121
122 Released 2009-10-26
123
124 * All documentation files were not distributed with v1.1; build
125   documentation in make distcheck to prevent this in the future
126 * Fix v1.1 release date in ``CHANGES``
127
128
129 Version 1.1
130 ===========
131
132 Released 2009-10-20
133
134 * API additions and improvements:
135
136   - Extend array and object APIs
137   - Add functions to modify integer, real and string values
138   - Improve argument validation
139   - Use unsigned int instead of ``uint32_t`` for encoding flags
140
141 * Enhance documentation
142
143   - Add getting started guide and tutorial
144   - Fix some typos
145   - General clarifications and cleanup
146
147 * Check for integer and real overflows and underflows in decoder
148 * Make singleton values thread-safe (``true``, ``false`` and ``null``)
149 * Enhance circular reference handling
150 * Don't define ``-std=c99`` in ``AM_CFLAGS``
151 * Add C++ guards to ``jansson.h``
152 * Minor performance and portability improvements
153 * Expand test coverage
154
155
156 Version 1.0.4
157 =============
158
159 Released 2009-10-11
160
161 * Relax Autoconf version requirement to 2.59
162 * Make Jansson compile on platforms where plain ``char`` is unsigned
163 * Fix API tests for object
164
165
166 Version 1.0.3
167 =============
168
169 Released 2009-09-14
170
171 * Check for integer and real overflows and underflows in decoder
172 * Use the Python json module for tests, or simplejson if the json
173   module is not found
174 * Distribute changelog (this file)
175
176
177 Version 1.0.2
178 =============
179
180 Released 2009-09-08
181
182 * Handle EOF correctly in decoder
183
184
185 Version 1.0.1
186 =============
187
188 Released 2009-09-04
189
190 * Fixed broken `json_is_boolean()`
191
192
193 Version 1.0
194 ===========
195
196 Released 2009-08-25
197
198 * Initial release