* of the decoder before upgrading to version 2 of the
* encoder!
+2.11 Sun Apr 13 23:04
+ - Work around regression in Perl 5.16.3 - 5.17.0
+ As of 8ae39f603f0f5778c160e18e08df60 while each
+ automagically becomes while $_= defined(each);
+ which manages to break some of our test code.
+
+2.10 Sun Apr 13 21:30
+ - Fix broken MANIFEST
+
+2.09 Sun Apr 13 21:15
+ - Synchro release with Decoder change.
+
2.08 Thu Apr 10 22:10 2013
- Production release for previous changes.
"Steffen Mueller <smueller@cpan.org>, Yves Orton <yves@cpan.org>"
],
"dynamic_config" : 1,
- "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351",
+ "generated_by" : "ExtUtils::MakeMaker version 6.66, CPAN::Meta::Converter version 2.120921",
"license" : [
"perl_5"
],
"url" : "git://github.com/Sereal/Sereal.git"
}
},
- "version" : "2.08"
+ "version" : "2.11"
}
configure_requires:
ExtUtils::MakeMaker: 0
dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351'
+generated_by: 'ExtUtils::MakeMaker version 6.66, CPAN::Meta::Converter version 2.120921'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
resources:
bugtracker: https://github.com/Sereal/Sereal/issues
repository: git://github.com/Sereal/Sereal.git
-version: 2.08
+version: 2.11
Regenerate these constant functions by feeding this entire source file to
perl -x
-#!/usr/bin/perl -w
+#!/home/yorton/perl5/perlbrew/perls/perl-5.18.2/bin/perl -w
use ExtUtils::Constant qw (constant_types C_constant XS_constant);
my $types = {map {($_, 1)} qw(IV)};
use Carp qw/croak/;
use XSLoader;
-our $VERSION = '2.08'; # Don't forget to update the TestCompat set for testing against installed decoders!
+our $VERSION = '2.11'; # Don't forget to update the TestCompat set for testing against installed decoders!
our $XS_VERSION = $VERSION; $VERSION= eval $VERSION;
# not for public consumption, just for testing.
}
my $count= 0;
- foreach (@$corpus) {
- $count++ if $sub->($_);
+ foreach my $test (@$corpus) {
+ $count++ if $sub->($test);
}
return $count;
}
-
+#use Devel::Peek;
sub run_bulk_tests {
my %opt = @_;
my $total= read_files(sub { return 1 });
my $read= 0;
my $eval_ok= read_files(sub {
+ my $struct= $_[0];
diag("read $read\n") unless ++$read % 1000;
- my ($dump,$undump);
+ my ($dump, $undump);
my $ok= eval {
$dump = Sereal::Encoder::encode_sereal($_[0]);
$undump= Sereal::Decoder::decode_sereal($dump);
my $err = $@ || 'Zombie error';
ok($ok,"Error return is empty")
or diag("Error was: '$err'"), return $ok;
+ if ($ok and ref($struct) eq "HASH") {
+ my $each_count= 0;
+
+ $each_count++ while my($k,$v)= each %$undump;
- my $eval_dump= Data::Dumper->new([ $_[0] ])->Sortkeys(1)->Dump();
- my $undump_dump= Data::Dumper->new([ $undump ])->Sortkeys(1)->Dump();
- $ok= is_string($undump_dump, $eval_dump)
- or diag $_[0];
+ my $keys_count= 0 + keys %$struct;
+ is($each_count,$keys_count,"Number of keys match");
+ }
+
+ my $struct_dd= Data::Dumper->new([ $struct ])->Sortkeys(1)->Dump();
+ my $undump_dd= Data::Dumper->new([ $undump ])->Sortkeys(1)->Dump();
+ $ok= is_string($undump_dd, $struct_dd)
+ or diag $struct_dd;
return $ok;
});
is($total,$eval_ok);
note join "\n","", map {sprintf"%-20s" . (" %20s" x (@$_-1)), @$_ } @$result;
}
}
-
1;