Hello community,
here is the log from the commit of package perl-Protocol-Redis for openSUSE:Factory checked in at 2019-12-30 12:35:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Protocol-Redis (Old)
and /work/SRC/openSUSE:Factory/.perl-Protocol-Redis.new.6675 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Protocol-Redis"
Mon Dec 30 12:35:20 2019 rev:3 rq:759959 version:1.0011
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Protocol-Redis/perl-Protocol-Redis.changes 2019-08-29 17:27:47.619265319 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Protocol-Redis.new.6675/perl-Protocol-Redis.changes 2019-12-30 12:35:24.151822921 +0100
@@ -1,0 +2,9 @@
+Thu Dec 26 03:12:25 UTC 2019 -
+
+- updated to 1.0011
+ see /usr/share/doc/packages/perl-Protocol-Redis/Changes
+
+ 1.0011 25.12.2019 00:00:00
+ - Fix improper integer value in protocol test (Grinnz)
+
+-------------------------------------------------------------------
Old:
----
Protocol-Redis-1.0010.tar.gz
New:
----
Protocol-Redis-1.0011.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Protocol-Redis.spec ++++++
--- /var/tmp/diff_new_pack.yO8lsV/_old 2019-12-30 12:35:24.771823254 +0100
+++ /var/tmp/diff_new_pack.yO8lsV/_new 2019-12-30 12:35:24.775823256 +0100
@@ -17,7 +17,7 @@
Name: perl-Protocol-Redis
-Version: 1.0010
+Version: 1.0011
Release: 0
%define cpan_name Protocol-Redis
Summary: Redis protocol parser/encoder with asynchronous capabilities
@@ -40,7 +40,7 @@
%prep
%setup -q -n %{cpan_name}-%{version}
-find . -type f ! -name \*.pl -print0 | xargs -0 chmod 644
+find . -type f ! -path "*/t/*" ! -name "*.pl" ! -path "*/bin/*" ! -path "*/script/*" ! -name "configure" -print0 | xargs -0 chmod 644
%build
perl Makefile.PL INSTALLDIRS=vendor
@@ -56,6 +56,6 @@
%files -f %{name}.files
%defattr(-,root,root,755)
-%doc Changes README
+%doc Changes
%changelog
++++++ Protocol-Redis-1.0010.tar.gz -> Protocol-Redis-1.0011.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Protocol-Redis-1.0010/Changes new/Protocol-Redis-1.0011/Changes
--- old/Protocol-Redis-1.0010/Changes 2019-08-28 19:49:45.000000000 +0200
+++ new/Protocol-Redis-1.0011/Changes 2019-12-25 16:33:58.000000000 +0100
@@ -1,5 +1,8 @@
This file documents the revision history for Perl extension Protocol::Redis
+1.0011 25.12.2019 00:00:00
+ - Fix improper integer value in protocol test (Grinnz)
+
1.0010 28.08.2019 00:00:00
- code cleanup, prerequirements improvement, updated metadata to
meta-spec (Grinnz)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Protocol-Redis-1.0010/MANIFEST new/Protocol-Redis-1.0011/MANIFEST
--- old/Protocol-Redis-1.0010/MANIFEST 2019-08-28 21:17:50.000000000 +0200
+++ new/Protocol-Redis-1.0011/MANIFEST 2019-12-25 16:39:37.000000000 +0100
@@ -1,9 +1,9 @@
+benchmark.pl
Changes
lib/Protocol/Redis.pm
lib/Protocol/Redis/Test.pm
Makefile.PL
-MANIFEST This list of files
-README
+MANIFEST
t/redis.t
xt/pod.t
META.yml Module YAML meta-data (added by MakeMaker)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Protocol-Redis-1.0010/META.json new/Protocol-Redis-1.0011/META.json
--- old/Protocol-Redis-1.0010/META.json 2019-08-28 21:17:50.000000000 +0200
+++ new/Protocol-Redis-1.0011/META.json 2019-12-25 16:39:37.000000000 +0100
@@ -4,7 +4,7 @@
"Sergey Zasenko "
],
"dynamic_config" : 0,
- "generated_by" : "ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.150010",
+ "generated_by" : "ExtUtils::MakeMaker version 7.42, CPAN::Meta::Converter version 2.150010",
"license" : [
"perl_5"
],
@@ -52,6 +52,6 @@
"web" : "https://github.com/und3f/protocol-redis"
}
},
- "version" : "1.0010",
+ "version" : "1.0011",
"x_serialization_backend" : "JSON::PP version 2.97001"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Protocol-Redis-1.0010/META.yml new/Protocol-Redis-1.0011/META.yml
--- old/Protocol-Redis-1.0010/META.yml 2019-08-28 21:17:50.000000000 +0200
+++ new/Protocol-Redis-1.0011/META.yml 2019-12-25 16:39:37.000000000 +0100
@@ -7,7 +7,7 @@
configure_requires:
ExtUtils::MakeMaker: '0'
dynamic_config: 0
-generated_by: 'ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.150010'
+generated_by: 'ExtUtils::MakeMaker version 7.42, CPAN::Meta::Converter version 2.150010'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -25,5 +25,5 @@
bugtracker: https://github.com/und3f/protocol-redis/issues
license: http://dev.perl.org/licenses/
repository: https://github.com/und3f/protocol-redis.git
-version: '1.0010'
+version: '1.0011'
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Protocol-Redis-1.0010/README new/Protocol-Redis-1.0011/README
--- old/Protocol-Redis-1.0010/README 2019-08-28 21:10:27.000000000 +0200
+++ new/Protocol-Redis-1.0011/README 1970-01-01 01:00:00.000000000 +0100
@@ -1,111 +0,0 @@
-NAME
- Protocol::Redis - Redis protocol parser/encoder with asynchronous
- capabilities.
-
-SYNOPSIS
- use Protocol::Redis;
- my $redis = Protocol::Redis->new(api => 1) or die "API v1 not supported";
-
- $redis->parse("+foo\r\n");
-
- # get parsed message
- my $message = $redis->get_message;
- print "parsed message: ", $message->{data}, "\n";
-
- # asynchronous parsing interface
- $redis->on_message(sub {
- my ($redis, $message) = @_;
- print "parsed message: ", $message->{data}, "\n";
- });
-
- # parse pipelined message
- $redis->parse("+bar\r\n-error\r\n");
-
- # create message
- print "Get key message:\n",
- $redis->encode({type => '*', data => [
- {type => '$', data => 'string'},
- {type => '+', data => 'OK'}
- ]});
-
-DESCRIPTION
- Redis protocol parser/encoder with asynchronous capabilities and
- pipelining http://redis.io/topics/pipelining support.
-
-APIv1
- Protocol::Redis APIv1 uses "Unified Request Protocol
- http://redis.io/topics/protocol" for message encoding/parsing and
- supports methods described further. Client libraries should specify API
- version during Protocol::Redis construction.
-
- "new"
- my $redis = Protocol::Redis->new(api => 1)
- or die "API v1 not supported";
-
- Construct Protocol::Redis object with specific API version support. If
- specified API version not supported constructor returns undef. Client
- libraries should always specify API version.
-
- "parse"
- $redis->parse("*2\r\n$4ping\r\n\r\n");
-
- Parse Redis protocol chunk.
-
- "get_message"
- while (my $message = $redis->get_message) {
- ...
- }
-
- Get parsed message or undef.
-
- "on_message"
- $redis->on_message(sub {
- my ($redis, $message) = @_;
-
- }
-
- Calls callback on each parsed message.
-
- "encode"
- my $string = $redis->encode({type => '+', data => 'test'});
- $string = $redis->encode(
- {type => '*', data => [
- {type => '$', data => 'test'}]});
-
- Encode data into redis message.
-
- "api"
- my $api_version = $redis->api;
-
- Get API version.
-
-SUPPORT
- IRC
- #redis on irc.perl.org
-
-DEVELOPMENT
- Repository
- http://github.com/und3f/protocol-redis
-
-AUTHOR
- Sergey Zasenko, "undef@cpan.org".
-
-CREDITS
- In alphabetical order
-
- David Leadbeater (dgl)
-
- Viacheslav Tykhanovskyi (vti)
-
- Yaroslav Korshak (yko)
-
- Dan Book (Grinnz)
-
- Jan Henning Thorsen (jhthorsen)
-
-COPYRIGHT AND LICENSE
- Copyright (C) 2011-2019, Sergey Zasenko.
-
- This program is free software, you can redistribute it and/or modify it
- under the same terms as Perl 5.10.
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Protocol-Redis-1.0010/benchmark.pl new/Protocol-Redis-1.0011/benchmark.pl
--- old/Protocol-Redis-1.0010/benchmark.pl 1970-01-01 01:00:00.000000000 +0100
+++ new/Protocol-Redis-1.0011/benchmark.pl 2019-08-28 19:41:14.000000000 +0200
@@ -0,0 +1,95 @@
+#!/usr/bin/env perl
+
+use strict;
+use warnings;
+
+use Benchmark qw(:all :hireswallclock);
+
+use FindBin;
+use lib "$FindBin::Bin/lib";
+use Protocol::Redis;
+use Protocol::Redis::Faster;
+use Protocol::Redis::Test;
+
+my $redis = Protocol::Redis->new(api => 1);
+my $redis_fast = Protocol::Redis::Faster->new(api => 1);
+
+$redis->on_message(sub { });
+
+sub encode {
+ my $redis = shift;
+
+ # Encode message
+ $redis->encode({type => '+', data => 'OK'});
+ $redis->encode({type => '-', data => 'ERROR'});
+ $redis->encode({type => ':', data => '5'});
+
+ # Encode bulk message
+ $redis->encode({type => '$', data => 'test'});
+ $redis->encode({type => '$', data => "\0\r\n"});
+ $redis->encode({type => '$', data => undef});
+
+ # Encode multi-bulk
+ $redis->encode({type => '*', data => [{type => '$', data => 'test'}]});
+
+ $redis->encode(
+ { type => '*',
+ data => [
+ {type => '$', data => 'test1'}, {type => '$', data => 'test2'}
+ ]
+ }
+ );
+
+ $redis->encode({type => '*', data => []});
+
+ $redis->encode({type => '*', data => undef});
+
+ $redis->encode(
+ { type => '*',
+ data => [
+ {type => '$', data => 'foo'},
+ {type => '$', data => undef},
+ {type => '$', data => 'bar'}
+ ]
+ }
+ );
+}
+
+cmpthese(2**17, {
+ 'P:R:F encode' => sub { encode($redis_fast) },
+ 'P:R encode' => sub { encode($redis) },
+ });
+
+my $status_message = $redis->encode({type => '+', data => 'OK'});
+cmpthese(
+ -1,
+ { 'P:R Status parse' => sub { $redis->parse($status_message) },
+ 'P:R:F Status parse' => sub { $redis_fast->parse($status_message) },
+});
+
+my $a = 'cmpthese',(
+ -1,
+ {
+ 'P:R Splitted status parse' =>
+ sub { $redis->parse("+OK"); $redis->parse("\r\n") },
+ 'P:R:F Splitted status parse' =>
+ sub { $redis_fast->parse("+OK"); $redis->parse("\r\n") },
+ }
+);
+
+my $bulk_message = $redis->encode({type => '$', data => 'test'}) . $redis->encode({type => '$', data => undef});
+cmpthese(-1, {
+ 'Bulk parse P:R' => sub { $redis->parse($bulk_message) },
+ 'Bulk parse P:R:F' => sub { $redis_fast->parse($bulk_message) },
+});
+
+my $mbulk_message = $redis->encode(
+ { type => '*',
+ data =>
+ [{type => '$', data => 'test1'}, {type => '$', data => 'test2'}]
+ }
+);
+cmpthese(-1, {
+ 'P:R Multi-Bulk parse' => sub { $redis->parse($mbulk_message) },
+ 'P:R:F Multi-Bulk parse' => sub { $redis_fast->parse($mbulk_message) },
+ });
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Protocol-Redis-1.0010/lib/Protocol/Redis/Test.pm new/Protocol-Redis-1.0011/lib/Protocol/Redis/Test.pm
--- old/Protocol-Redis-1.0010/lib/Protocol/Redis/Test.pm 2019-08-28 21:02:24.000000000 +0200
+++ new/Protocol-Redis-1.0011/lib/Protocol/Redis/Test.pm 2019-12-25 16:32:28.000000000 +0100
@@ -207,14 +207,14 @@
# Complex string
$redis->parse("\*4\r\n");
- $redis->parse("\$5\r\ntest1\r\n\$-1\r\n:test2\r\n+test3\r\n\$5\r\n123");
+ $redis->parse("\$5\r\ntest1\r\n\$-1\r\n:42\r\n+test3\r\n\$5\r\n123");
$redis->parse("45\r\n");
is_deeply $redis->get_message, {
type => '*',
data => [
{type => '$', data => 'test1'},
{type => '$', data => undef},
- {type => ':', data => 'test2'},
+ {type => ':', data => 42},
{type => '+', data => 'test3'}
]
};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Protocol-Redis-1.0010/lib/Protocol/Redis.pm new/Protocol-Redis-1.0011/lib/Protocol/Redis.pm
--- old/Protocol-Redis-1.0010/lib/Protocol/Redis.pm 2019-08-28 21:16:24.000000000 +0200
+++ new/Protocol-Redis-1.0011/lib/Protocol/Redis.pm 2019-12-25 16:33:57.000000000 +0100
@@ -4,7 +4,7 @@
use warnings;
use 5.008_001;
-our $VERSION = '1.0010';
+our $VERSION = '1.0011';
require Carp;
@@ -275,16 +275,16 @@
=over 2
+Dan Book (Grinnz)
+
David Leadbeater (dgl)
+Jan Henning Thorsen (jhthorsen)
+
Viacheslav Tykhanovskyi (vti)
Yaroslav Korshak (yko)
-Dan Book (Grinnz)
-
-Jan Henning Thorsen (jhthorsen)
-
=back
=head1 COPYRIGHT AND LICENSE