Revision history for Perl extension JSON.
4.05 2022-01-14
- removed VERSION section in pod (GH#52, abraxxa++)
4.04 2021-12-17
- updated backportPP with JSON::PP 4.07
4.03 2021-01-24
- corrected one typo in POD (James E Keenan)
- updated backportPP with JSON::PP 4.06
4.02 2019-02-23
- fixed a test that breaks if perl is compiled with -Dquadmath
(RT-128589)
4.01 2019-01-21
- added boolean function/method that takes a scalar value and
returns a boolean value (David Cantrell)
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, and thus JSON, also enabled allow_nonref
by default
- updated backportPP with JSON::PP 3.99_01
- allow PERL_JSON_PP_USE_B environmental variable to restore
old number detection behavior for compatibility
2.97001 2017-12-21
- updated backportPP with JSON::PP 2.97001
2.97000 2017-11-21
- updated backportPP with JSON::PP 2.97000
- use 5 digit minor version number for a while to avoid
confusion
- fixed is_bool to use blessed() instead of ref()
2.96 2017-11-20
- fixed packaging issue
- updated backportPP with JSON::PP 2.96
- not to use newer Test::More features (RT-122421; ilmari++)
2.95 2017-11-20
- updated backportPP with JSON::PP 2.95
2.94 2017-05-29
- fixed VERSION issue caused by VERSION methods added to abstract
backend packages (RT-121892; ppisar++)
- fixed a test for perl 5.6
2.93 2017-05-19
- add VERSION methods to (abstract) backend packages
- explained backward incompatibility about backend method
- updated VERSIONs of backportPP modules
2.92 2017-05-15
- production release
2.91_04 2017-01-10
- updated backportPP with JSON::PP 2.91_04
2.91_03 2017-01-09
- reworked documentation, based on the one for JSON::XS
- updated backportPP with JSON::PP 2.91_03
2.91_02 2016-12-04
- fixed not to fail tests under Perl 5.25.* (srezic++)
2.91_01 2016-12-03
- PERL_JSON_BACKEND now accepts Cpanel::JSON::XS as well
- tweaked tests to support various backends
- made convert_blessed_universally (for Perl 5.18+) and
support_by_pp less harmful
- fixed N/A exit code in Makefile.PL (bulk88)
- various doc patches from gregoa, topaz, zoffix, singingfish,
yanick, dsteinbrunner, Toby Inkster
- removed duplicated tests
- removed base.pm dependency
- updated backportPP with JSON::PP 2.91_01
2.90 Wed Oct 30 19:48:43 2013
** INCOMPATIBLE CHANGE **
- workaround for JSON::XS version 3.0 or later installed case.
* the objects returned by JSON::true/false are JSON::PP::Boolean.
* they do not overload 'eq'.
- changed test cases for this patch.
t/e02_bool.t
t/e03_bool2.t
t/x17_strange_overload.t
t/xe02_bool.t
t/xe03_bool2.t
t/xe12_boolean.t
2.61 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.60
- $json->is_xs, $json->is_pp was completely broken.
pointed by rt#75867 and emceelam
2.59 Wed Jun 5 14:35:54 2013
- PUREPERL_ONLY support was not supported...
and finally remove all PP options from Makefile.PL.
- recommend JSON::XS instead of conditionally requiring it
patched by miyagaw
( for example, $ cpanm --with-recommends JSON)
- Hide more packages from PAUSE (and other stuff)
patched by miyagawa
2.58 Thu May 23 09:04:37 2013
- support PUREPERL_ONLY install option. (rt#84876)
(PERL_ONLY and NO_XS are not yet removed)
- stop installing JSON::XS automatically on Perl 5.18
2.57
- t/x17_strage_overload.t didn't work correctly.
2.56 Sat Apr 6 09:58:32 2013
- fixed t/x17_strage_overload.t (rt#84451 by Ricardo Signes)
2.55
- update JSON::BackportPP version
2.54 Fri Apr 5 16:15:08 2013
- fixed t/19_incr.t on perl >= 5.17.10 (wyant, rt#84154)
pathced by mbeijen and modified with demerphq's patch
- Fixed some spelling (by briandfoy)
- fixed sppeling (by Perlover)
- enhanced documents (Thanks to Justin Hunter and Olof Johansson)
- changed backend module loading for overloaded object behavior
(reported by tokuhirom)
2.53 Sun May 22 16:11:05 2011
- made Makefile.PL skipping a installing XS question
when set $ENV{PERL_ONLY} or $ENV{NO_XS} (rt#66820)
2.52 Sun May 22 15:05:49 2011
- fixed to_json (pointed and patched by mmcleric in rt#68359)
- backport JSON::PP 2.27200
* fixed incr_parse docodeing string more correctly (rt#68032 by LCONS)
2.51 Tue Mar 8 16:03:34 2011
- import JSON::PP 2.27105 as BackportPP
- fixed documentations (pointed by Britton Kerin and rt#64738)
2.50 Mon Dec 20 14:56:42 2010
[JSON]
- stable release
2.49_01 Sat Nov 27 22:03:17 2010
[JSON]
- JSON::PP is split away JSON distributino for perl 5.14
- JSON::backportPP is included in instead.
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 compatibilty
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
refering 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 refference 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 compatiblity 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 to use 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