--- JSON-XS/Changes 2007/07/01 22:20:00 1.62 +++ JSON-XS/Changes 2008/04/19 03:39:27 1.111 @@ -1,12 +1,102 @@ Revision history for Perl extension JSON::XS -TODO: object filtering (decode_filtered?) -TODO: make xs-level object bigger, longer -1.4 - - add convert_blessed option. + - move =encoding around again, to avoid bugs with search.cpan.org. + when can we finally have utf-8 in pod??? + +2.2 Wed Apr 16 20:37:25 CEST 2008 + - lifted the log2 rounding restriction of max_depth and max_size. + - make booleans mutable by creating a copy instead of handing out + the same scalar (reported by pasha sadri). + - added support for incremental json parsing (still EXPERIMENTAL). + - implemented and added a json_xs command line utility that can convert + from/to a number of serialisation formats - tell me if you need more. + - implement allow_unknown/get_allow_unknown methods. + - fixed documentation of max_depth w.r.t. higher and equal. + - moved down =encoding directive a bit, too much breaks if its the first + pod directive :/. + - removed documentation section on other modules, it became somewhat + outdated and is nowadays mostly of historical interest. + +2.1 Wed Mar 19 23:23:18 CET 2008 + - update documentation here and there: add a large section + about utf8/latin1/ascii flags, add a security consideration + and extend and clarify the JSON and YAML section. + - medium speed enhancements when encoding/decoding non-ascii chars. + - minor speedup in number encoding case. + - extend and clarify the section on incompatibilities + between YAML and JSON. + - switch to static inline from just inline when using gcc. + - add =encoding utf-8 to the manpage, now that perl 5.10 supports it. + - fix some issues with UV to JSON conversion of unknown impact. + - published the yahoo locals search result used in benchmarks as the + original url changes so comparison is impossible. + +2.01 Wed Dec 5 11:40:28 CET 2007 + - INCOMPATIBLE API CHANGE: to_json and from_json have been + renamed to encode_json/decode_json for JSON.pm compatibility. + The old functions croak and might be replaced by JSON.pm + comaptible versions in some later release. + +2.0 Tue Dec 4 11:30:46 CET 2007 + - this is supposed to be the first version of JSON::XS + compatible with version 2.0+ of the JSON module. + Using the JSON module as frontend to JSON::XS should be + as fast as using JSON::XS directly, so consider using it + instead. + - added get_* methods for all "simple" options. + - make JSON::XS subclassable. + +1.53 Tue Nov 13 23:58:33 CET 2007 + - minor doc clarifications. + - fixed many doc typos (patch by Thomas L. Shinnick). + +1.52 Mon Oct 15 03:22:06 CEST 2007 + - remove =encoding pod directive again, it confuses too many pod + parsers :/. + +1.51 Sat Oct 13 03:55:56 CEST 2007 + - encode empty arrays/hashes in a compact way when pretty is enabled. + - apparently JSON::XS was used to find some bugs in the + JSON_checker testsuite, so add (the corrected) JSON_checker tests to + the testsuite. + - quite a bit of doc updates/extension. + - require 5.8.2, as this seems to be the first unicode-stable version. + +1.5 Tue Aug 28 04:05:38 CEST 2007 + - add support for tied hashes, based on ideas and testcase by + Marcus Holland-Moritz. + - implemented relaxed parsing mode where some extensions are being + accepted. generation is still JSON-only. + +1.44 Wed Aug 22 01:02:44 CEST 2007 + - very experimental process-emulation support, slowing everything down. + the horribly broken perl threads are still not supported - YMMV. + +1.43 Thu Jul 26 13:26:37 CEST 2007 + - convert big json numbers exclusively consisting of digits to NV + only when there is no loss of precision, otherwise to string. + +1.42 Tue Jul 24 00:51:18 CEST 2007 + - fix a crash caused by not handling missing array elements + (report and testcase by Jay Kuri). + +1.41 Tue Jul 10 18:21:44 CEST 2007 + - fix compilation with NDEBUG (assert side-effect), + affects convert_blessed only. + - fix a bug in decode filters calling ENTER; SAVETMPS; + one time too often. + - catch a typical error in TO_JSON methods. + - antique-ised XS.xs again to work with outdated + C compilers (windows...). + +1.4 Mon Jul 2 10:06:30 CEST 2007 + - add convert_blessed setting. - encode did not catch all blessed objects, encoding their contents in most cases. This has been fixed by introducing the allow_blessed setting. + - added filter_json_object and filter_json_single_key_object + settings that specify a callback to be called when + all/specific json objects are encountered. - assume that most object keys are simple ascii words and optimise this case, penalising the general case. This can speed up decoding by 30% in typical cases and gives @@ -17,6 +107,10 @@ of JSON will not have them either. - bit the bullet and converted the very simple json object into a more complex one. + - work around a bug where perl wrongly claims an integer + is not an integer. + - unbundle JSON::XS::Boolean into own pm file so Storable + and similar modules can resolve the overloading when thawing. 1.3 Sun Jun 24 01:55:02 CEST 2007 - make JSON::XS::true and false special overloaded objects @@ -153,7 +247,7 @@ (non-unicode) codepoint is encountered. 0.2 Fri Mar 23 00:23:34 CET 2007 - - the "could not sleep without debuggign release". + - the "could not sleep without debugging release". it should basically work now, with many bugs as no production tests have been run yet. - added more testcases.