-
Notifications
You must be signed in to change notification settings - Fork 35
/
Copy pathChanges
500 lines (400 loc) · 15.9 KB
/
Changes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
Revision history for Perl extension JSON::PP.
4.17_01 2023-7-29
- fix a reentrant issue (experimental) (GH#61, 87)
4.16 2022-12-30
- drop support for perls < 5.8 (GH#84, haarg++)
4.15 2022-12-27
- fix core bool test to not ignore errors (GH#82, haarg++)
4.14 2022-12-26
- updated manifest (GH#81, demerphq++)
4.13 2022-12-26
- Break up 099_binary.t into 16 pieces that can be tested in parallel (GH#80, demerphq++)
4.12 2022-10-09
- call unimport overload first to silence warnings (GH#76, haarg++)
4.11 2022-07-31
- restored cre boolean support (GH#73, #74, haarg++)
4.10 2022-06-24
- fix a regression of decode_error introduced at 4.08 (GH#75, reported by andk++)
- convert all tests to use Test::More (GH#70, haarg++)
4.09 2022-05-22
- reverted core boolean support for now (GH#72)
- incr_parse() Hangs on Certain Inputs (GH#67, DabeDotCom++)
- silence warnings about non-characters on older perls (GH#68, haarg++)
4.08 2022-04-10
- remove unneeded utf8::upgrade and downgrade (GH#59, FGasper++)
- core boolean support (GH#62, 63, haarg++)
- EBCDIC support (GH#64, khwilliamson++)
- shorten a test name (GH#65, khwilliamson)
4.07 2021-12-17
- fix incr_parse($unicode_str) bug (GH#56, DabeDotCom++)
4.06 2021-01-24
- fix return values of boolean_values for compatibility
(yahermann++)
4.05 2020-07-09
- no code changes
- modify tests for perl 7 (Nicolas R)
4.04 2019-06-29
- document indent_length option (GH#48)
4.03 2019-06-19
- (Encode::)decode json_pp input properly by default
(GH#47)
4.02 2019-02-23
- fix a test that breaks if perl is compiled with
-Dquadmath (RT-128589)
4.01 2019-02-22
- allow to pass indent_length to json_pp (GH#46)
4.00 2018-12-07
- production release
3.99_01 2018-12-03
- BACKWARD INCOMPATIBILITY:
As JSON::XS 4.0 changed its policy and enabled allow_nonref
by default, JSON::PP also enabled allow_nonref by default
- implement allow_tags that was introduced by JSON::XS 3.0
- add boolean_values that was introduced by JSON::XS 4.0
- allow literal tags in strings in relaxed mode, as JSON::XS 3.02 does
- allow PERL_JSON_PP_USE_B environmental variable to restore
old number detection behavior for compatibility
- various doc updates
2.97001 2017-12-21
- tweak internal number detector to always considers a flagged
value as a string (GH#35, haarg++)
- clarify json_pp options (RT-123766; Dan Jacobson)
2.97000 2017-11-21
- fix is_bool to use blessed() instead of ref() (jwrightecs++)
- use 5 digit minor version number for a while to avoid confusion
(GH#33, dansut)
2.96 2017-11-20
- not to use newer Test::More features (RT-122421 for JSON)
2.95 2017-11-20
- json_pp now prints an encoded json string (RT#123653)
- fix is_bool to use ->isa("JSON::PP::Boolean"), instead
of UNIVERSAL::isa("JSON::PP::Boolean") (GH#34, aidy++)
2.94 2017-05-29
- fix a test to support perl 5.6
2.93 2017-05-15
- fix packaging issue
2.92 2017-05-15
- production release
2.91_04 2017-01-10
- fixed isa tests for bignum
2.91_03 2017-01-09
- reworked documentation, based on the one for JSON::XS
- let json_pp utility to show the version of JSON::PP
- applied a patch to fix loading order of B module (pali++)
2.91_02 2016-12-04
- fixed not to fail tests under Perl 5.25.* (srezic++)
2.91_01 2016-12-03
- changed the number detection logic, patched by haarg
(experimental)
- merged PR from dagolden to correct 0 handling
- removed base.pm dependency (dolmen)
- fixed wrong character offset spotted by ilmari
- applied patches from Jarkko Hietaniemi to address VAX issues
- small doc fixes from bessarabov, gregoa, Chris Anderson
- applied a patch to remove . in @INC in json_pp (Tony Cook)
- removed $VAR1 from json_pp output, spotted by tokuhirom
- fixed an issue to ignore trailing 0
- added Scalar::Util dependency for Perl 5.8+
- fixed issues spotted by Nicolas Seriot's JSON Test Suite
including experimental UTF-16/32 support and backward
incompatible change of C style comment handling (now disabled
by default)
- moved the guts of JSON::PP::Boolean into lib/JSON/PP/Boolean.pm
and gave it a proper version
- refactored incremental parser to let it handle incomplete
JSON text properly
- imported and tweaked tests from JSON.pm
- minor code clean up
2.27400 2016-04-23
[JSON::PP] appleid and merged long term neglected patches & PRs.
thanks to charsbar
- document patches
by AM909, leon[at]astray.com, dsteinbrunner, jwilk, alfiedotwtf
- modified Makefile.PL to set UNINST=1 if needed on old perls
by dagolden
- decode decimals to Perl's internal NV type
by dagolden
see to https://github.com/makamaka/JSON-PP/commits/master
2.27300 2014-10-06
- fixed a problem about substr in perl 5.8.6 and below
many people report this issue and patched by haarg[at]haarg.org
2.27203 Thu Oct 17 19:38:55 2013
- fixed return/or in _incr_parse
reported and patched by MAUKE, sprout and rjbs
https://rt.cpan.org/Public/Bug/Display.html?id=86948
2.27202 Wed Mar 13 15:41:22 2013
- license in Makefile.PL was missing
2.27201 Wed Mar 13 13:22:33 2013
- occasionally failed in t/019_incr.t in Perl 5.17.6 or more
(because of hash iterator randomization)
reported and patched by demerphq
https://rt.cpan.org/Public/Bug/Display.html?id=83421
2.27200 Sun May 22 12:17:51 2011
- fixed incr_parse decoding string more correctly (rt#68032 by LCONS)
2.27105 Tue Mar 8 12:38:42 2011
- removed t/900_pod.t from package because of author test
2.27104 Thu Jan 20 19:06:25 2011
- fixed a problem to convert overloaded objects (pointed by rt#64783)
- changed decoding methods object() and array() to pass a object.
2.27103 Wed Dec 29 15:32:38 2010
- added bin/json_pp - command line utility
2.27102 Mon Dec 20 20:29:39 2010
- modified JSON::PP::Boolean pod
2.27101 Mon Dec 20 16:21:03 2010
- renamed JSON::PPdev to JSON::PP
2.27100 Sun Nov 28 02:02:49 2010
- split away JSON distribution 2.27 (= JSON::PP 2.27008)
- renamed t/* files
--------------------------------------------------------------------------
old history
--------------------------------------------------------------------------
2.27 Sun Oct 31 20:32:46 2010
[JSON::PP]
- Some optimizations (gfx)
[JSON::PP::5005]
- added missing B module varibales (makamaka)
2.26 Tue Sep 28 17:41:37 2010
[JSON::PP]
- cleaned up code and enhanced sort option efficiency in encode.
2.25 Tue Sep 28 16:47:08 2010
[JSON]
- JSON::Backend::XS::Supportable always executed a needless process
with JSON::XS backend. This made encode/decode a bit slower.
2.24 Mon Sep 27 10:56:24 2010
[JSON::PP]
- tweaked code.
- optimized code in hash object encoding.
2.23 Sun Sep 26 22:08:12 2010
[JSON::PP]
- modified tied object handling in encode. it made encoding speed faster.
pointed by https://rt.cpan.org/Ticket/Display.html?id=61604
- modified t/e10_bignum.t
for avoiding a warning in using Math::BigInt dev version
2.22 Wed Aug 25 12:46:13 2010
[JSON]
- added JSON::XS installing feature in Makefile.PL
with cpan or cpanm (some points suggested by gfx)
- check that to_json and from_json are not called as methods (CHORNY)
[JSON::PP]
- modified for -Duse64bitall -Duselongdouble compiled perl.
11_pc_expo.t too. (these are patched by H.Merijn Brand)
2.21 Mon Apr 5 14:56:52 2010
[JSON]
- enhanced 'HOW DO I DECODE A DATA FROM OUTER AND ENCODE TO OUTER'
- renamed eg/bench_pp_xs.pl to eg/bench_decode.pl
- added eg/bench_encode.pl
2.20 Fri Apr 2 12:50:08 2010
[JSON]
- added eg/bench_pp_xs.pl for benchmark sample
- updated 'INCREMENTAL PARSING' section
[JSON::PP]
- decode_prefix() didn't count a consumed text length properly.
- enhanced XS compatibility
in the case of decoding a white space garbaged text.
2.19 Tue Mar 30 13:40:24 2010
[JSON]
- fixed typo (rt#53535 by Angel Abad)
- added a recommendation
referring to (en|de)code_json to pod (suggested by tokuhirom)
- added 'HOW DO I DECODE A DATA FROM OUTER AND ENCODE TO OUTER' to pod.
2.18 Tue Mar 23 15:18:10 2010
[JSON]
- updated document (compatible with JSON::XS 2.29)
[JSON::PP]
- fixed encode an overloaded 'eq' object bug (reported by Alexey A. Kiritchun)
- enhanced an error message compatible to JSON::XS
2.17 Thu Jan 7 12:23:13 2010
[JSON]
- fixed a problem caused by JSON::XS backend and support_by_pp option
(rt#52842, rt#52847 by ikegami)
[JSON::PP]
- made compatible with JSON::XS 2.27
- patched decode for incr_parse (rt#52820 by ikegami)
- relaxed option caused an infinite loop in some condition.
2.16 Fri Oct 16 15:07:37 2009
[JSON][JSON::PP]
- made compatible with JSON::XS 2.26
*indent adds a final newline
- corrected copyrights in JSON::PP58.
2.15 Tue Jun 2 16:36:42 2009
[JSON]
- made compatible with JSON::XS 2.24
- corrected copyrights in some modules.
[JSON::PP]
- modified incr_parse, pointed by Martin J. Evans (rt#46439)
- deleted a meaningless code
2.14 Tue Feb 24 11:20:24 2009
[JSON]
- the compatible XS version was miswritten in document.
2.13 Sat Feb 21 17:01:05 2009
[JSON::PP]
- decode() didn't upgrade unicode escaped charcters \u0080-\u00ff.
this problem was pointed by rt#43424 (Mika Raento)
[JSON::PP::56]
- fixed utf8::encode/decode emulators bugs.
- defined a missing B module constant in Perl 5.6.0.
(reported by Clinton Pierce)
[JSON::PP::5005]
- _decode_unicode() returned a 0x80-0xff value as UTF8 encoded byte.
[JSON]
- added a reference to JSON::XS's document "JSON and ECMAscript".
- fixed a typo in the document (pointed by Jim Cromie).
2.12 Wed Jul 16 11:14:35 2008
[JSON]
- made compatible with JSON::XS 2.22
[JSON::PP]
- fixed the incremental parser in negative nest level
(pointed and patched by Yuval Kogman)
2.11 Tue Jun 17 14:30:01 2008
[JSON::PP]
- fixed the decoding process which checks number.
regarded number like chars in Unicode (ex. U+FF11) as [\d].
- enhanced error messages compatible to JSON::XS.
2.10 Tue Jun 3 18:42:11 2008
[JSON]
- made compatible with JSON::XS 2.21
* updated the document.
- added an item pointed by rt#32361 to the doc.
[JSON::PP] [JSON::PP58] [JSON::PP56] [JSON::PP5005]
- made compatible with JSON::XS 2.21
* added incr_reset
- removed useless codes.
2.09 Sun Apr 20 20:45:33 2008
[JSON]
- made compatible with JSON::XS 2.2
- changed pod section totally.
[JSON::PP] 2.20001
- made compatible witg JSON::XS 2.2
* lifted the log2 rounding restriction of max_depth and max_size.
* incremental json parsing (EXPERIMENTAL).
* allow_unknown/get_allow_unknown methods.
- the version format was changed.
X.YYZZZ => X.YY is the same as JSON::XS. ZZZ is the PP own version.
- changed pod section totally.
2.08 Sat Apr 12 22:49:39 2008
[JSON]
- fixed JSON::Boolean inheritance mechanism.
If the backend is XS with support_by_pp mode and using PP only
support method, JSON::Boolean did not work correctly.
Thanks to hg[at]apteryx's point.
[JSON::PP] 2.07
- Now split into JSON::PP58 for Perl 5.8 and lator.
- enhanced an error message compatible to JSON::XS
did not croak when TO_JSON method returns same object as passed.
[JSON::PP58]
- modified for Perls post 5.8.0 that don't have utf8::is_utf8.
Thanks to Andreas Koenig.
2.07 Sat Feb 16 15:52:29 2008
[JSON]
- experimentally added -convert_blessed_universally to define
UNIVERSAL::TO_JSON subroutine.
use JSON -convert_blessed_universally;
$json->convert_blessed->encode( $blessed );
- and as_nonbleesed is obsoleted (not yet removed). OK?
- fixed t/04_pretty.t.
2.06 Fri Feb 8 16:21:59 2008
[JSON::PP] 2.06
- enhanced the XS compatibility for pretty-printing
and the indent handling was broken!
2.05 Tue Feb 5 13:57:19 2008
[JSON::PP] 2.05
- enhanced some XS compatibilities for de/encode.
- now decode_error can dump high (>127) chars.
- enhanced the XS combatilbity of the decoding error.
- fixed the utf8 checker while decoding (is_valid_utf8).
- implemented utf8::downgrade in JSON::PP56.
- enhanced utf8::encode in JSON::PP56.
- made utf8::downgrade return a true in JSON::PP5005.
2.04 Sat Jan 5 16:10:01 2008
[JSON]
- fixed a document typo pointed by kawasaki@annocpan
- make DATA handle closed for error mssages in support_by_pp mode.
- switched JSON::Backend::XS::Supportable wrapper de/encode
to changing symbolic tables for croak messages and speed.
- fixed support_by_pp setting
[JSON::PP] 2.04
- enhanced the error message compatibility to XS.
2.03 Fri Jan 4 14:10:58 2008
[JSON]
- fixed the description - Transition ways from 1.xx to 2.xx.
$JSON::ConvBlessed compat => $json->allow_blessed->as_nonbleesed
- support_by_pp supports 'as_nonbleesed' (experimental)
- clean up the code for saving memory
[JSON::PP] 2.03
- Now the allo_bignum flag also affects the encoding process.
encode() can convert Math::BigInt/Float objects into JSON numbers
- added as_nonblessed option (experimental)
- cleaned up internal function names (renamed camel case names)
2.02 Wed Dec 26 11:08:19 2007
[JSON]
- Now support_by_pp allows using indent_length()
[JSON::PP] 2.02
- added get_indent_length
2.01 Thu Dec 20 11:30:59 2007
[JSON]
- made the object methods - jsonToObj and objToJson
available for a while with warnings.
2.00 Wed Dec 19 11:48:04 2007
[JSON]
- new version!
- modified Makefile.PL for broken Perls (when PERL_DL_NONLAZY = 1).
[JSON::PP] 2.0104
- clean up the document.
- use 'subs' instead of CORE::GLOBAL for fixing join() in 5.8.0 - 5.8.2
- enhanced decoding error messages for JSON::XS compatibility.
- jsonToObj and objToJson warn.
1.99_05 Fri Dec 14 18:30:43 2007
[JSON]
- added a description about the Unicode handling to document.
[JSON::PP] (2.0103)
- Now the JSON::PP56 unicode handling does not require Unicode::String.
- Now JSON::PP5005 can de/enocde properly within the Perl 5.005 world.
- decode() always utf8::decode()ed to strings.
- decode() returned a big integer as string though the integer is
smaller than it is so.
- a bad know how - added the join() wrapper for Perl 5.8.0 - 5.8.2 bug.
- JSON::PP56 encode() did not handle Unicode properly.
- added a section about the unicode handling on Perls to JSON::PP doc.
1.99_04 Mon Dec 10 14:28:15 2007
[JSON]
- modified the tests and source for Perl 5.005
[JSON::PP] (2.0102)
- modified some prototypes in JSON::PP5005.
1.99_03 Mon Dec 10 11:43:02 2007
[JSON]
- modified tests and document.
in Perl5.8.2 or earlier, decoding with utf8 is broken because of
a Perl side problem. (join() had a bug.)
- modified Makefile.PL for Perl 5.005.
in the version, 'require JSON' is fail....
[JSON::PP] (2.0102)
- modified string decode function.
- enhanced error messages for compatibility to JSON::XS.
- enhanced utf8::decode emulator and unpack emulator in JSON::PP56.
1.99_02 Sun Dec 9 05:06:19 2007
[JSON::PP] (2.0101)
- decoding with utf8 was broken in Perl 5.10
as the behaviour of unpack was changed.
- added a fake in JSON::PP5005 (bytes.pm)
- added the missing file JONS::PP::Boolean.pm
1.99_01 Sat Dec 8 12:01:43 2007
[JSON]
- released as version 2.0
this module is incompatible to 1.xx, so check the document.
[JSON::PP] (2.01 from 0.97)
- updated JSON::PP for compatible to JSON::XS 2.01
- renamed from_json and to_json to decode_json and encode_json
- added get_* to JSON::PP
- deleted property() from JSON::PP
- deleted strict() and added loose()
- deleted disable_UTF8() and self_encode()
- renamed singlequote to allow_singlequote
- renamed allow_bigint to allow_bignum
- max_depth and max_size round up their arguments.
- added indent_length and sort_by
## JSON version 1.xx
1.15 Wed Nov 14 14:52:31 2007
- 1.xx final version.
0.09 Sat Apr 9 15:27:47 2005
- original version; created by h2xs 1.22 with options
-XA -b 5.5.3 -n JSON