1 Revision history for Perl extension JSON.
3 ## JSON version 2.xx #####################################################
5 From version 1.xx to 2.xx, JSON was totally rewritten.
7 * JSON becomes a wrapper to JSON::XS or JSON::PP!
8 * objToJson() and jsonToObj() are obsoleted!
9 * $JSON::* variables are no longer available!
10 * JSON::Parser and JSON::Converter are deleted from the distribution!
11 * JSONRPC* and Apache::JSONRPC are deleted from the distribution!
12 Please check JSON::RPC (supports JSON-RPC protocol v1.1 and 1.0).
14 ##########################################################################
16 2.59 Wed Jun 5 14:35:54 2013
17 - PUREPERL_ONLY support was not supported...
18 and finally remove all PP options from Makefile.PL.
19 - recommend JSON::XS instead of conditionally requiring it
21 ( for example, $ cpanm --with-recommends JSON)
22 - Hide more packages from PAUSE (and other stuff)
25 2.58 Thu May 23 09:04:37 2013
26 - support PUREPERL_ONLY install option. (rt#84876)
27 (PERL_ONLY and NO_XS are not yet removed)
28 - stop installing JSON::XS automatically on Perl 5.18
31 - t/x17_strage_overload.t didn't work correctly.
33 2.56 Sat Apr 6 09:58:32 2013
34 - fixed t/x17_strage_overload.t (rt#84451 by Ricardo Signes)
37 - update JSON::BackportPP version
39 2.54 Fri Apr 5 16:15:08 2013
40 - fixed t/19_incr.t on perl >= 5.17.10 (wyant, rt#84154)
41 pathced by mbeijen and modified with demerphq's patch
42 - Fixed some spelling (by briandfoy)
43 - fixed sppeling (by Perlover)
44 - enhanced documents (Thanks to Justin Hunter and Olof Johansson)
45 - changed backend module loading for overloaded object behavior
46 (reported by tokuhirom)
48 2.53 Sun May 22 16:11:05 2011
49 - made Makefile.PL skipping a installing XS question
50 when set $ENV{PERL_ONLY} or $ENV{NO_XS} (rt#66820)
52 2.52 Sun May 22 15:05:49 2011
53 - fixed to_json (pointed and patched by mmcleric in rt#68359)
54 - backport JSON::PP 2.27200
55 * fixed incr_parse docodeing string more correctly (rt#68032 by LCONS)
57 2.51 Tue Mar 8 16:03:34 2011
58 - import JSON::PP 2.27105 as BackportPP
59 - fixed documentations (pointed by Britton Kerin and rt#64738)
61 2.50 Mon Dec 20 14:56:42 2010
65 2.49_01 Sat Nov 27 22:03:17 2010
67 - JSON::PP is split away JSON distributino for perl 5.14
68 - JSON::backportPP is included in instead.
70 2.27 Sun Oct 31 20:32:46 2010
72 - Some optimizations (gfx)
74 - added missing B module varibales (makamaka)
76 2.26 Tue Sep 28 17:41:37 2010
78 - cleaned up code and enhanced sort option efficiency in encode.
80 2.25 Tue Sep 28 16:47:08 2010
82 - JSON::Backend::XS::Supportable always executed a needless process
83 with JSON::XS backend. This made encode/decode a bit slower.
85 2.24 Mon Sep 27 10:56:24 2010
88 - optimized code in hash object encoding.
90 2.23 Sun Sep 26 22:08:12 2010
92 - modified tied object handling in encode. it made encoding speed faster.
93 pointed by https://rt.cpan.org/Ticket/Display.html?id=61604
94 - modified t/e10_bignum.t
95 for avoiding a warning in using Math::BigInt dev version
97 2.22 Wed Aug 25 12:46:13 2010
99 - added JSON::XS installing feature in Makefile.PL
100 with cpan or cpanm (some points suggested by gfx)
101 - check that to_json and from_json are not called as methods (CHORNY)
103 - modified for -Duse64bitall -Duselongdouble compiled perl.
104 11_pc_expo.t too. (these are patched by H.Merijn Brand)
106 2.21 Mon Apr 5 14:56:52 2010
108 - enhanced 'HOW DO I DECODE A DATA FROM OUTER AND ENCODE TO OUTER'
109 - renamed eg/bench_pp_xs.pl to eg/bench_decode.pl
110 - added eg/bench_encode.pl
112 2.20 Fri Apr 2 12:50:08 2010
114 - added eg/bench_pp_xs.pl for benchmark sample
115 - updated 'INCREMENTAL PARSING' section
117 - decode_prefix() didn't count a consumed text length properly.
118 - enhanced XS compatibilty
119 in the case of decoding a white space garbaged text.
121 2.19 Tue Mar 30 13:40:24 2010
123 - fixed typo (rt#53535 by Angel Abad)
124 - added a recommendation
125 refering to (en|de)code_json to pod (suggested by tokuhirom)
126 - added 'HOW DO I DECODE A DATA FROM OUTER AND ENCODE TO OUTER' to pod.
128 2.18 Tue Mar 23 15:18:10 2010
130 - updated document (compatible with JSON::XS 2.29)
132 - fixed encode an overloaded 'eq' object bug (reported by Alexey A. Kiritchun)
133 - enhanced an error message compatible to JSON::XS
135 2.17 Thu Jan 7 12:23:13 2010
137 - fixed a problem caused by JSON::XS backend and support_by_pp option
138 (rt#52842, rt#52847 by ikegami)
140 - made compatible with JSON::XS 2.27
141 - patched decode for incr_parse (rt#52820 by ikegami)
142 - relaxed option caused an infinite loop in some condition.
144 2.16 Fri Oct 16 15:07:37 2009
146 - made compatible with JSON::XS 2.26
147 *indent adds a final newline
148 - corrected copyrights in JSON::PP58.
150 2.15 Tue Jun 2 16:36:42 2009
152 - made compatible with JSON::XS 2.24
153 - corrected copyrights in some modules.
155 - modified incr_parse, pointed by Martin J. Evans (rt#46439)
156 - deleted a meaningless code
158 2.14 Tue Feb 24 11:20:24 2009
160 - the compatible XS version was miswritten in document.
162 2.13 Sat Feb 21 17:01:05 2009
164 - decode() didn't upgrade unicode escaped charcters \u0080-\u00ff.
165 this problem was pointed by rt#43424 (Mika Raento)
167 - fixed utf8::encode/decode emulators bugs.
168 - defined a missing B module constant in Perl 5.6.0.
169 (reported by Clinton Pierce)
171 - _decode_unicode() returned a 0x80-0xff value as UTF8 encoded byte.
173 - added a refference to JSON::XS's document "JSON and ECMAscript".
174 - fixed a typo in the document (pointed by Jim Cromie).
176 2.12 Wed Jul 16 11:14:35 2008
178 - made compatible with JSON::XS 2.22
181 - fixed the incremental parser in negative nest level
182 (pointed and patched by Yuval Kogman)
184 2.11 Tue Jun 17 14:30:01 2008
186 - fixed the decoding process which checks number.
187 regarded number like chars in Unicode (ex. U+FF11) as [\d].
188 - enhanced error messages compatible to JSON::XS.
190 2.10 Tue Jun 3 18:42:11 2008
192 - made compatible with JSON::XS 2.21
193 * updated the document.
194 - added an item pointed by rt#32361 to the doc.
196 [JSON::PP] [JSON::PP58] [JSON::PP56] [JSON::PP5005]
197 - made compatible with JSON::XS 2.21
199 - removed useless codes.
201 2.09 Sun Apr 20 20:45:33 2008
203 - made compatible with JSON::XS 2.2
204 - changed pod section totally.
207 - made compatible witg JSON::XS 2.2
208 * lifted the log2 rounding restriction of max_depth and max_size.
209 * incremental json parsing (EXPERIMENTAL).
210 * allow_unknown/get_allow_unknown methods.
211 - the version format was changed.
212 X.YYZZZ => X.YY is the same as JSON::XS. ZZZ is the PP own version.
213 - changed pod section totally.
215 2.08 Sat Apr 12 22:49:39 2008
217 - fixed JSON::Boolean inheritance mechanism.
218 If the backend is XS with support_by_pp mode and using PP only
219 support method, JSON::Boolean did not work correctly.
220 Thanks to hg[at]apteryx's point.
223 - Now split into JSON::PP58 for Perl 5.8 and lator.
224 - enhanced an error message compatible to JSON::XS
225 did not croak when TO_JSON method returns same object as passed.
228 - modified for Perls post 5.8.0 that don't have utf8::is_utf8.
229 Thanks to Andreas Koenig.
231 2.07 Sat Feb 16 15:52:29 2008
233 - experimentally added -convert_blessed_universally to define
234 UNIVERSAL::TO_JSON subroutine.
236 use JSON -convert_blessed_universally;
237 $json->convert_blessed->encode( $blessed );
239 - and as_nonbleesed is obsoleted (not yet removed). OK?
240 - fixed t/04_pretty.t.
242 2.06 Fri Feb 8 16:21:59 2008
244 - enhanced the XS compatibility for pretty-printing
245 and the indent handling was broken!
247 2.05 Tue Feb 5 13:57:19 2008
249 - enhanced some XS compatibilities for de/encode.
250 - now decode_error can dump high (>127) chars.
251 - enhanced the XS combatilbity of the decoding error.
252 - fixed the utf8 checker while decoding (is_valid_utf8).
253 - implemented utf8::downgrade in JSON::PP56.
254 - enhanced utf8::encode in JSON::PP56.
255 - made utf8::downgrade return a true in JSON::PP5005.
257 2.04 Sat Jan 5 16:10:01 2008
259 - fixed a document typo pointed by kawasaki@annocpan
260 - make DATA handle closed for error mssages in support_by_pp mode.
261 - switched JSON::Backend::XS::Supportable wrapper de/encode
262 to changing symbolic tables for croak messages and speed.
263 - fixed support_by_pp setting
266 - enhanced the error message compatiblity to XS.
268 2.03 Fri Jan 4 14:10:58 2008
270 - fixed the description - Transition ways from 1.xx to 2.xx.
271 $JSON::ConvBlessed compat => $json->allow_blessed->as_nonbleesed
272 - support_by_pp supports 'as_nonbleesed' (experimental)
273 - clean up the code for saving memory
276 - Now the allo_bignum flag also affects the encoding process.
277 encode() can convert Math::BigInt/Float objects into JSON numbers
278 - added as_nonblessed option (experimental)
279 - cleaned up internal function names (renamed camel case names)
281 2.02 Wed Dec 26 11:08:19 2007
283 - Now support_by_pp allows to use indent_length()
286 - added get_indent_length
288 2.01 Thu Dec 20 11:30:59 2007
290 - made the object methods - jsonToObj and objToJson
291 available for a while with warnings.
293 2.00 Wed Dec 19 11:48:04 2007
296 - modified Makefile.PL for broken Perls (when PERL_DL_NONLAZY = 1).
299 - clean up the document.
300 - use 'subs' instead of CORE::GLOBAL for fixing join() in 5.8.0 - 5.8.2
301 - enhanced decoding error messages for JSON::XS compatibility.
302 - jsonToObj and objToJson warn.
305 1.99_05 Fri Dec 14 18:30:43 2007
307 - added a description about the Unicode handling to document.
310 - Now the JSON::PP56 unicode handling does not require Unicode::String.
311 - Now JSON::PP5005 can de/enocde properly within the Perl 5.005 world.
312 - decode() always utf8::decode()ed to strings.
313 - decode() returned a big integer as string though the integer is
314 smaller than it is so.
315 - a bad know how - added the join() wrapper for Perl 5.8.0 - 5.8.2 bug.
316 - JSON::PP56 encode() did not handle Unicode properly.
317 - added a section about the unicode handling on Perls to JSON::PP doc.
319 1.99_04 Mon Dec 10 14:28:15 2007
321 - modified the tests and source for Perl 5.005
324 - modified some prototypes in JSON::PP5005.
326 1.99_03 Mon Dec 10 11:43:02 2007
328 - modified tests and document.
329 in Perl5.8.2 or earlier, decoding with utf8 is broken because of
330 a Perl side problem. (join() had a bug.)
331 - modified Makefile.PL for Perl 5.005.
332 in the version, 'require JSON' is fail....
335 - modified string decode function.
336 - enhanced error messages for compatibility to JSON::XS.
337 - enhanced utf8::decode emulator and unpack emulator in JSON::PP56.
339 1.99_02 Sun Dec 9 05:06:19 2007
341 - decoding with utf8 was broken in Perl 5.10
342 as the behaviour of unpack was changed.
343 - added a fake in JSON::PP5005 (bytes.pm)
344 - added the missing file JONS::PP::Boolean.pm
346 1.99_01 Sat Dec 8 12:01:43 2007
348 - released as version 2.0
349 this module is incompatible to 1.xx, so check the document.
351 [JSON::PP] (2.01 from 0.97)
352 - updated JSON::PP for compatible to JSON::XS 2.01
353 - renamed from_json and to_json to decode_json and encode_json
354 - added get_* to JSON::PP
355 - deleted property() from JSON::PP
356 - deleted strict() and added loose()
357 - deleted disable_UTF8() and self_encode()
358 - renamed singlequote to allow_singlequote
359 - renamed allow_bigint to allow_bignum
360 - max_depth and max_size round up their arguments.
361 - added indent_length and sort_by
366 1.15 Wed Nov 14 14:52:31 2007
367 - 1.xx final version.
369 0.09 Sat Apr 9 15:27:47 2005
370 - original version; created by h2xs 1.22 with options