r41705 - in /branches/upstream/libjson-xs-perl/current: Changes META.yml Makefile.PL README XS.pm XS.xs
ryan52-guest at users.alioth.debian.org
ryan52-guest at users.alioth.debian.org
Wed Aug 12 00:25:15 UTC 2009
Author: ryan52-guest
Date: Wed Aug 12 00:25:09 2009
New Revision: 41705
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=41705
Log:
[svn-upgrade] Integrating new upstream version, libjson-xs-perl (2.250)
Modified:
branches/upstream/libjson-xs-perl/current/Changes
branches/upstream/libjson-xs-perl/current/META.yml
branches/upstream/libjson-xs-perl/current/Makefile.PL
branches/upstream/libjson-xs-perl/current/README
branches/upstream/libjson-xs-perl/current/XS.pm
branches/upstream/libjson-xs-perl/current/XS.xs
Modified: branches/upstream/libjson-xs-perl/current/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libjson-xs-perl/current/Changes?rev=41705&op=diff
==============================================================================
--- branches/upstream/libjson-xs-perl/current/Changes (original)
+++ branches/upstream/libjson-xs-perl/current/Changes Wed Aug 12 00:25:09 2009
@@ -1,4 +1,11 @@
Revision history for Perl extension JSON::XS
+
+2.25 Sat Aug 8 12:04:41 CEST 2009
+ - the perl debugger completely breaks lvalue subs - try to work
+ around the issue.
+ - ignore RMAGICAL hashes w.r.t. CANONICAL.
+ - try to work around a possible char signedness issue on aix.
+ - require common sense.
2.24 Sat May 30 08:25:45 CEST 2009
- the incremental parser did not update its parse offset
Modified: branches/upstream/libjson-xs-perl/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libjson-xs-perl/current/META.yml?rev=41705&op=diff
==============================================================================
--- branches/upstream/libjson-xs-perl/current/META.yml (original)
+++ branches/upstream/libjson-xs-perl/current/META.yml Wed Aug 12 00:25:09 2009
@@ -1,18 +1,28 @@
---- #YAML:1.0
-name: JSON-XS
-version: 2.24
-abstract: ~
-author: []
-license: unknown
-distribution_type: module
-configure_requires:
- ExtUtils::MakeMaker: 0
-requires: {}
-no_index:
- directory:
- - t
- - inc
-generated_by: ExtUtils::MakeMaker version 6.48
-meta-spec:
- url: http://module-build.sourceforge.net/META-spec-v1.4.html
- version: 1.4
+{
+ "no_index" : {
+ "directory" : [
+ "t",
+ "inc"
+ ]
+ },
+ "meta-spec" : {
+ "version" : 1.4,
+ "url" : "http://module-build.sourceforge.net/META-spec-v1.4.html"
+ },
+ "generated_by" : "ExtUtils::MakeMaker version 6.50",
+ "distribution_type" : "module",
+ "version" : "2.25",
+ "name" : "JSON-XS",
+ "author" : [],
+ "license" : "unknown",
+ "build_requires" : {
+ "ExtUtils::MakeMaker" : 0
+ },
+ "requires" : {
+ "common::sense" : 0
+ },
+ "abstract" : null,
+ "configure_requires" : {
+ "ExtUtils::MakeMaker" : 0
+ }
+}
Modified: branches/upstream/libjson-xs-perl/current/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libjson-xs-perl/current/Makefile.PL?rev=41705&op=diff
==============================================================================
--- branches/upstream/libjson-xs-perl/current/Makefile.PL (original)
+++ branches/upstream/libjson-xs-perl/current/Makefile.PL Wed Aug 12 00:25:09 2009
@@ -10,5 +10,8 @@
EXE_FILES => [ "bin/json_xs" ],
VERSION_FROM => "XS.pm",
NAME => "JSON::XS",
+ PREREQ_PM => {
+ common::sense => 0,
+ },
);
Modified: branches/upstream/libjson-xs-perl/current/README
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libjson-xs-perl/current/README?rev=41705&op=diff
==============================================================================
--- branches/upstream/libjson-xs-perl/current/README (original)
+++ branches/upstream/libjson-xs-perl/current/README Wed Aug 12 00:25:09 2009
@@ -22,8 +22,8 @@
# Note that JSON version 2.0 and above will automatically use JSON::XS
# if available, at virtually no speed overhead either, so you should
# be able to just:
-
- use JSON;
+
+ use JSON;
# and do the same things, except that you have a pure-perl fallback now.
@@ -379,6 +379,8 @@
in Perl.
This setting has no effect when decoding JSON texts.
+
+ This setting has currently no effect on tied hashes.
$json = $json->allow_nonref ([$enable])
$enabled = $json->get_allow_nonref
Modified: branches/upstream/libjson-xs-perl/current/XS.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libjson-xs-perl/current/XS.pm?rev=41705&op=diff
==============================================================================
--- branches/upstream/libjson-xs-perl/current/XS.pm (original)
+++ branches/upstream/libjson-xs-perl/current/XS.pm Wed Aug 12 00:25:09 2009
@@ -101,10 +101,9 @@
package JSON::XS;
-no warnings;
-use strict;
-
-our $VERSION = '2.24';
+use common::sense;
+
+our $VERSION = '2.25';
our @ISA = qw(Exporter);
our @EXPORT = qw(encode_json decode_json to_json from_json);
@@ -443,6 +442,8 @@
as key-value pairs have no inherent ordering in Perl.
This setting has no effect when decoding JSON texts.
+
+This setting has currently no effect on tied hashes.
=item $json = $json->allow_nonref ([$enable])
Modified: branches/upstream/libjson-xs-perl/current/XS.xs
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libjson-xs-perl/current/XS.xs?rev=41705&op=diff
==============================================================================
--- branches/upstream/libjson-xs-perl/current/XS.xs (original)
+++ branches/upstream/libjson-xs-perl/current/XS.xs Wed Aug 12 00:25:09 2009
@@ -14,7 +14,7 @@
#endif
// some old perls do not have this, try to make it work, no
-// guarentees, though. if it breaks, you get to keep the pieces.
+// guarantees, though. if it breaks, you get to keep the pieces.
#ifndef UTF8_MAXBYTES
# define UTF8_MAXBYTES 13
#endif
@@ -473,7 +473,7 @@
// actually, this is mostly due to the stupid so-called
// security workaround added somewhere in 5.8.x
// that randomises hash orderings
- if (enc->json.flags & F_CANONICAL)
+ if (enc->json.flags & F_CANONICAL && !SvRMAGICAL (hv))
{
int count = hv_iterinit (hv);
@@ -1086,20 +1086,20 @@
if (*start == '-')
switch (len)
{
- case 2: return newSViv (-( start [1] - '0' * 1));
- case 3: return newSViv (-( start [1] * 10 + start [2] - '0' * 11));
- case 4: return newSViv (-( start [1] * 100 + start [2] * 10 + start [3] - '0' * 111));
- case 5: return newSViv (-( start [1] * 1000 + start [2] * 100 + start [3] * 10 + start [4] - '0' * 1111));
- case 6: return newSViv (-(start [1] * 10000 + start [2] * 1000 + start [3] * 100 + start [4] * 10 + start [5] - '0' * 11111));
+ case 2: return newSViv (-(IV)( start [1] - '0' * 1));
+ case 3: return newSViv (-(IV)( start [1] * 10 + start [2] - '0' * 11));
+ case 4: return newSViv (-(IV)( start [1] * 100 + start [2] * 10 + start [3] - '0' * 111));
+ case 5: return newSViv (-(IV)( start [1] * 1000 + start [2] * 100 + start [3] * 10 + start [4] - '0' * 1111));
+ case 6: return newSViv (-(IV)(start [1] * 10000 + start [2] * 1000 + start [3] * 100 + start [4] * 10 + start [5] - '0' * 11111));
}
else
switch (len)
{
- case 1: return newSViv ( start [0] - '0' * 1);
- case 2: return newSViv ( start [0] * 10 + start [1] - '0' * 11);
- case 3: return newSViv ( start [0] * 100 + start [1] * 10 + start [2] - '0' * 111);
- case 4: return newSViv ( start [0] * 1000 + start [1] * 100 + start [2] * 10 + start [3] - '0' * 1111);
- case 5: return newSViv ( start [0] * 10000 + start [1] * 1000 + start [2] * 100 + start [3] * 10 + start [4] - '0' * 11111);
+ case 1: return newSViv ( start [0] - '0' * 1);
+ case 2: return newSViv ( start [0] * 10 + start [1] - '0' * 11);
+ case 3: return newSViv ( start [0] * 100 + start [1] * 10 + start [2] - '0' * 111);
+ case 4: return newSViv ( start [0] * 1000 + start [1] * 100 + start [2] * 10 + start [3] - '0' * 1111);
+ case 5: return newSViv ( start [0] * 10000 + start [1] * 1000 + start [2] * 100 + start [3] * 10 + start [4] - '0' * 11111);
}
{
@@ -1657,6 +1657,8 @@
json_true = get_bool ("JSON::XS::true");
json_false = get_bool ("JSON::XS::false");
+
+ CvNODEBUG_on (get_cv ("JSON::XS::incr_text", 0)); /* the debugger completely breaks lvalue subs */
}
PROTOTYPES: DISABLE
More information about the Pkg-perl-cvs-commits
mailing list