1Revision history for Perl extension JSON.
2
32.97001 2017-12-21
4    - updated backportPP with JSON::PP 2.97001
5
62.97000 2017-11-21
7    - updated backportPP with JSON::PP 2.97000
8    - use 5 digit minor version number for a while to avoid
9      confusion
10    - fixed is_bool to use blessed() instead of ref()
11
122.96 2017-11-20
13    - fixed packaging issue
14    - updated backportPP with JSON::PP 2.96
15    - not to use newer Test::More features (RT-122421; ilmari++)
16
172.95 2017-11-20
18    - updated backportPP with JSON::PP 2.95
19
202.94 2017-05-29
21    - fixed VERSION issue caused by VERSION methods added to abstract
22      backend packages (RT-121892; ppisar++)
23    - fixed a test for perl 5.6
24
252.93 2017-05-19
26    - add VERSION methods to (abstract) backend packages
27    - explained backward incompatibility about backend method
28    - updated VERSIONs of backportPP modules
29
302.92 2017-05-15
31    - production release
32
332.91_04 2017-01-10
34	- updated backportPP with JSON::PP 2.91_04
35
362.91_03 2017-01-09
37	- reworked documentation, based on the one for JSON::XS
38	- updated backportPP with JSON::PP 2.91_03
39
402.91_02 2016-12-04
41	- fixed not to fail tests under Perl 5.25.* (srezic++)
42
432.91_01 2016-12-03
44	- PERL_JSON_BACKEND now accepts Cpanel::JSON::XS as well
45	- tweaked tests to support various backends
46	- made convert_blessed_universally (for Perl 5.18+) and
47	  support_by_pp less harmful
48	- fixed N/A exit code in Makefile.PL (bulk88)
49	- various doc patches from gregoa, topaz, zoffix, singingfish,
50	  yanick, dsteinbrunner, Toby Inkster
51	- removed duplicated tests
52	- removed base.pm dependency
53	- updated backportPP with JSON::PP 2.91_01
54
552.90  Wed Oct 30 19:48:43 2013
56
57   ** INCOMPATIBLE CHANGE **
58
59	- workaround for JSON::XS version 3.0 or later installed case.
60
61	  * the objects returned by JSON::true/false are JSON::PP::Boolean.
62	  * they do not overload 'eq'.
63
64	- changed test cases for this patch.
65
66	   t/e02_bool.t
67	   t/e03_bool2.t
68	   t/x17_strange_overload.t
69	   t/xe02_bool.t
70	   t/xe03_bool2.t
71	   t/xe12_boolean.t
72
732.61  Thu Oct 17 19:38:55 2013
74	- fixed return/or in _incr_parse
75	  reported and patched by MAUKE, sprout and rjbs
76	  https://rt.cpan.org/Public/Bug/Display.html?id=86948
77
782.60
79	- $json->is_xs, $json->is_pp was completely broken.
80	    pointed by rt#75867 and emceelam
81
822.59  Wed Jun  5 14:35:54 2013
83	- PUREPERL_ONLY support was not supported...
84	    and finally remove all PP options from Makefile.PL.
85	- recommend JSON::XS instead of conditionally requiring it
86	     patched by miyagaw
87	  ( for example, $ cpanm --with-recommends JSON)
88	- Hide more packages from PAUSE (and other stuff)
89	     patched by miyagawa
90
912.58  Thu May 23 09:04:37 2013
92	- support PUREPERL_ONLY install option. (rt#84876)
93	   (PERL_ONLY and NO_XS are not yet removed)
94	- stop installing JSON::XS automatically on Perl 5.18
95
962.57
97	- t/x17_strage_overload.t didn't work correctly.
98
992.56  Sat Apr  6 09:58:32 2013
100	- fixed t/x17_strage_overload.t (rt#84451 by Ricardo Signes)
101
1022.55
103	- update JSON::BackportPP version
104
1052.54  Fri Apr  5 16:15:08 2013
106	- fixed t/19_incr.t on perl >= 5.17.10 (wyant, rt#84154)
107	    pathced by mbeijen and modified with demerphq's patch
108	- Fixed some spelling (by briandfoy)
109	- fixed sppeling (by Perlover)
110	- enhanced documents (Thanks to Justin Hunter and Olof Johansson)
111	- changed backend module loading for overloaded object behavior
112	                                        (reported by tokuhirom)
113
1142.53  Sun May 22 16:11:05 2011
115	- made Makefile.PL skipping a installing XS question
116            when set $ENV{PERL_ONLY} or $ENV{NO_XS} (rt#66820)
117
1182.52  Sun May 22 15:05:49 2011
119	- fixed to_json (pointed and patched by mmcleric in rt#68359)
120	- backport JSON::PP 2.27200
121            * fixed incr_parse docodeing string more correctly (rt#68032 by LCONS)
122
1232.51  Tue Mar  8 16:03:34 2011
124	- import JSON::PP 2.27105 as BackportPP
125	- fixed documentations (pointed by Britton Kerin and rt#64738)
126
1272.50  Mon Dec 20 14:56:42 2010
128	[JSON]
129	- stable release
130
1312.49_01  Sat Nov 27 22:03:17 2010
132	[JSON]
133	- JSON::PP is split away JSON distributino for perl 5.14
134	- JSON::backportPP is included in instead.
135
1362.27  Sun Oct 31 20:32:46 2010
137	[JSON::PP]
138	- Some optimizations (gfx)
139	[JSON::PP::5005]
140	- added missing B module varibales (makamaka)
141
1422.26  Tue Sep 28 17:41:37 2010
143	[JSON::PP]
144	- cleaned up code and enhanced sort option efficiency in encode.
145
1462.25  Tue Sep 28 16:47:08 2010
147	[JSON]
148	- JSON::Backend::XS::Supportable always executed a needless process
149	    with JSON::XS backend. This made encode/decode a bit slower.
150
1512.24  Mon Sep 27 10:56:24 2010
152	[JSON::PP]
153	- tweaked code.
154	- optimized code in hash object encoding.
155
1562.23  Sun Sep 26 22:08:12 2010
157	[JSON::PP]
158	- modified tied object handling in encode. it made encoding speed faster.
159	    pointed by https://rt.cpan.org/Ticket/Display.html?id=61604
160	- modified t/e10_bignum.t
161            for avoiding a warning in using Math::BigInt dev version
162
1632.22  Wed Aug 25 12:46:13 2010
164	[JSON]
165	- added JSON::XS installing feature in Makefile.PL
166	    with cpan or cpanm (some points suggested by gfx)
167	- check that to_json and from_json are not called as methods (CHORNY)
168	[JSON::PP]
169	- modified for -Duse64bitall -Duselongdouble compiled perl.
170	    11_pc_expo.t too. (these are patched by H.Merijn Brand)
171
1722.21  Mon Apr  5 14:56:52 2010
173	[JSON]
174	- enhanced 'HOW DO I DECODE A DATA FROM OUTER AND ENCODE TO OUTER'
175	- renamed eg/bench_pp_xs.pl to eg/bench_decode.pl
176	- added eg/bench_encode.pl
177
1782.20  Fri Apr  2 12:50:08 2010
179	[JSON]
180	- added eg/bench_pp_xs.pl for benchmark sample
181	- updated 'INCREMENTAL PARSING' section
182	[JSON::PP]
183	- decode_prefix() didn't count a consumed text length properly.
184	- enhanced XS compatibilty
185	    in the case of decoding a white space garbaged text.
186
1872.19  Tue Mar 30 13:40:24 2010
188	[JSON]
189	- fixed typo (rt#53535 by Angel Abad)
190	- added a recommendation
191              refering to (en|de)code_json to pod (suggested by tokuhirom)
192	- added 'HOW DO I DECODE A DATA FROM OUTER AND ENCODE TO OUTER' to pod.
193
1942.18  Tue Mar 23 15:18:10 2010
195	[JSON]
196	- updated document (compatible with JSON::XS 2.29)
197	[JSON::PP]
198	- fixed encode an overloaded 'eq' object bug (reported by Alexey A. Kiritchun)
199	- enhanced an error message compatible to JSON::XS
200
2012.17  Thu Jan  7 12:23:13 2010
202	[JSON]
203	- fixed a problem caused by JSON::XS backend and support_by_pp option
204	  (rt#52842,  rt#52847 by ikegami)
205	[JSON::PP]
206	- made compatible with JSON::XS 2.27
207	- patched decode for incr_parse (rt#52820 by ikegami)
208	- relaxed option caused an infinite loop in some condition.
209
2102.16  Fri Oct 16 15:07:37 2009
211	[JSON][JSON::PP]
212	- made compatible with JSON::XS 2.26
213            *indent adds a final newline
214	- corrected copyrights in JSON::PP58.
215
2162.15  Tue Jun  2 16:36:42 2009
217	[JSON]
218	- made compatible with JSON::XS 2.24
219	- corrected copyrights in some modules.
220	[JSON::PP]
221	 - modified incr_parse, pointed by Martin J. Evans (rt#46439)
222	 - deleted a meaningless code
223
2242.14  Tue Feb 24 11:20:24 2009
225	[JSON]
226	- the compatible XS version was miswritten in document.
227
2282.13  Sat Feb 21 17:01:05 2009
229	[JSON::PP]
230	- decode() didn't upgrade unicode escaped charcters \u0080-\u00ff.
231	  this problem was pointed by rt#43424 (Mika Raento)
232	[JSON::PP::56]
233	- fixed utf8::encode/decode emulators bugs.
234	- defined a missing B module constant in Perl 5.6.0.
235	  (reported by Clinton Pierce)
236	[JSON::PP::5005]
237	- _decode_unicode() returned a 0x80-0xff value as UTF8 encoded byte.
238	[JSON]
239	- added a refference to JSON::XS's document "JSON and ECMAscript".
240	- fixed a typo in the document (pointed by Jim Cromie).
241
2422.12  Wed Jul 16 11:14:35 2008
243	[JSON]
244	- made compatible with JSON::XS 2.22
245
246	[JSON::PP]
247	- fixed the incremental parser in negative nest level
248	    (pointed and patched by Yuval Kogman)
249
2502.11  Tue Jun 17 14:30:01 2008
251	[JSON::PP]
252	- fixed the decoding process which checks number.
253	    regarded number like chars in Unicode (ex. U+FF11) as [\d].
254	- enhanced error messages compatible to JSON::XS.
255
2562.10  Tue Jun  3 18:42:11 2008
257	[JSON]
258	- made compatible with JSON::XS 2.21
259	    * updated the document.
260	- added an item pointed by rt#32361 to the doc.
261
262	[JSON::PP] [JSON::PP58] [JSON::PP56] [JSON::PP5005]
263	- made compatible with JSON::XS 2.21
264	    * added incr_reset
265	- removed useless codes.
266
2672.09  Sun Apr 20 20:45:33 2008
268	[JSON]
269	- made compatible with JSON::XS 2.2
270	- changed pod section totally.
271
272	[JSON::PP] 2.20001
273	- made compatible witg JSON::XS 2.2
274	    * lifted the log2 rounding restriction of max_depth and max_size.
275	    * incremental json parsing (EXPERIMENTAL).
276	    * allow_unknown/get_allow_unknown methods.
277	- the version format was changed.
278	    X.YYZZZ =>  X.YY is the same as JSON::XS. ZZZ is the PP own version.
279	- changed pod section totally.
280
2812.08  Sat Apr 12 22:49:39 2008
282	[JSON]
283	- fixed JSON::Boolean inheritance mechanism.
284            If the backend is XS with support_by_pp mode and using PP only
285            support method, JSON::Boolean did not work correctly.
286            Thanks to hg[at]apteryx's point.
287
288	[JSON::PP] 2.07
289	- Now split into JSON::PP58 for Perl 5.8 and lator.
290	- enhanced an error message compatible to JSON::XS
291            did not croak when TO_JSON method returns same object as passed.
292
293	[JSON::PP58]
294	- modified for Perls post 5.8.0 that don't have utf8::is_utf8.
295	    Thanks to Andreas Koenig.
296
2972.07  Sat Feb 16 15:52:29 2008
298	[JSON]
299	- experimentally added -convert_blessed_universally to define
300	    UNIVERSAL::TO_JSON subroutine.
301
302              use JSON -convert_blessed_universally;
303              $json->convert_blessed->encode( $blessed );
304
305	- and as_nonbleesed is obsoleted (not yet removed). OK?
306	- fixed t/04_pretty.t.
307
3082.06  Fri Feb  8 16:21:59 2008
309	[JSON::PP] 2.06
310	- enhanced the XS compatibility for pretty-printing
311	    and the indent handling was broken!
312
3132.05  Tue Feb  5 13:57:19 2008
314	[JSON::PP] 2.05
315	- enhanced some XS compatibilities for de/encode.
316	- now decode_error can dump high (>127) chars.
317	- enhanced the XS combatilbity of the decoding error.
318	- fixed the utf8 checker while decoding (is_valid_utf8).
319	- implemented utf8::downgrade in JSON::PP56.
320	- enhanced utf8::encode in JSON::PP56.
321	- made utf8::downgrade return a true in JSON::PP5005.
322
3232.04  Sat Jan  5 16:10:01 2008
324	[JSON]
325	- fixed a document typo pointed by kawasaki@annocpan
326	- make DATA handle closed for error mssages in support_by_pp mode.
327	- switched JSON::Backend::XS::Supportable wrapper de/encode
328             to changing symbolic tables for croak messages and speed.
329	- fixed support_by_pp setting
330
331	[JSON::PP] 2.04
332	- enhanced the error message compatiblity to XS.
333
3342.03  Fri Jan  4 14:10:58 2008
335	[JSON]
336	- fixed the description - Transition ways from 1.xx to 2.xx.
337             $JSON::ConvBlessed compat => $json->allow_blessed->as_nonbleesed
338	- support_by_pp supports 'as_nonbleesed' (experimental)
339	- clean up the code for saving memory
340
341	[JSON::PP] 2.03
342	- Now the allo_bignum flag also affects the encoding process.
343            encode() can convert Math::BigInt/Float objects into JSON numbers
344	- added as_nonblessed option (experimental)
345	- cleaned up internal function names (renamed camel case names)
346
3472.02  Wed Dec 26 11:08:19 2007
348	[JSON]
349	- Now support_by_pp allows to use indent_length()
350
351	[JSON::PP] 2.02
352	- added get_indent_length
353
3542.01  Thu Dec 20 11:30:59 2007
355	[JSON]
356	- made the object methods - jsonToObj and objToJson
357          available for a while with warnings.
358
3592.00  Wed Dec 19 11:48:04 2007
360	[JSON]
361	- new version!
362	- modified Makefile.PL for broken Perls (when PERL_DL_NONLAZY = 1).
363
364	[JSON::PP] 2.0104
365	- clean up the document.
366	- use 'subs' instead of CORE::GLOBAL for fixing join() in 5.8.0 - 5.8.2
367	- enhanced decoding error messages for JSON::XS compatibility.
368	- jsonToObj and objToJson warn.
369
370
3711.99_05  Fri Dec 14 18:30:43 2007
372	[JSON]
373	- added a description about the Unicode handling to document.
374
375	[JSON::PP] (2.0103)
376	- Now the JSON::PP56 unicode handling does not require Unicode::String.
377	- Now JSON::PP5005 can de/enocde properly within the Perl 5.005 world.
378	- decode() always utf8::decode()ed to strings.
379	- decode() returned a big integer as string though the integer is
380          smaller than it is so.
381	- a bad know how - added the join() wrapper for Perl 5.8.0 - 5.8.2 bug.
382	- JSON::PP56 encode() did not handle Unicode properly.
383	- added a section about the unicode handling on Perls to JSON::PP doc.
384
3851.99_04  Mon Dec 10 14:28:15 2007
386	[JSON]
387	- modified the tests and source for Perl 5.005
388
389	[JSON::PP] (2.0102)
390	- modified some prototypes in JSON::PP5005.
391
3921.99_03  Mon Dec 10 11:43:02 2007
393	[JSON]
394	- modified tests and document.
395	   in Perl5.8.2 or earlier, decoding with utf8 is broken because of
396           a Perl side problem. (join() had a bug.)
397	- modified Makefile.PL for Perl 5.005.
398	   in the version, 'require JSON' is fail....
399
400	[JSON::PP] (2.0102)
401	- modified string decode function.
402	- enhanced error messages for compatibility to JSON::XS.
403	- enhanced utf8::decode emulator and unpack emulator in JSON::PP56.
404
4051.99_02  Sun Dec  9 05:06:19 2007
406        [JSON::PP] (2.0101)
407	- decoding with utf8 was broken in Perl 5.10
408	    as the behaviour of unpack was changed.
409	- added a fake in JSON::PP5005 (bytes.pm)
410	- added the missing file JONS::PP::Boolean.pm
411
4121.99_01  Sat Dec  8 12:01:43 2007
413	[JSON]
414	- released as version 2.0
415	   this module is incompatible to 1.xx, so check the document.
416
417        [JSON::PP] (2.01 from 0.97)
418	- updated JSON::PP for compatible to JSON::XS 2.01
419	- renamed from_json and to_json to decode_json and encode_json
420	- added get_* to JSON::PP
421	- deleted property() from JSON::PP
422	- deleted strict() and added loose()
423	- deleted disable_UTF8() and self_encode()
424	- renamed singlequote to allow_singlequote
425	- renamed allow_bigint to allow_bignum
426	- max_depth and max_size round up their arguments.
427	- added indent_length and sort_by
428
429
430## JSON version 1.xx
431
4321.15  Wed Nov 14 14:52:31 2007
433	- 1.xx final version.
434
4350.09  Sat Apr  9 15:27:47 2005
436	- original version; created by h2xs 1.22 with options
437		-XA -b 5.5.3 -n JSON
438
439