From 98ed93da4b84cf5c18ad7d196221c2a0d32da91b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppi...@redhat.com>
Date: Fri, 7 Aug 2015 10:14:13 +0200
Subject: Do not use broken Data::Dump::Streamer


diff --git a/Carp-REPL-0.18-Use-Data-Dumper-instead-of-Data-Dump-Streamer.patch 
b/Carp-REPL-0.18-Use-Data-Dumper-instead-of-Data-Dump-Streamer.patch
new file mode 100644
index 0000000..7b2ae3d
--- /dev/null
+++ b/Carp-REPL-0.18-Use-Data-Dumper-instead-of-Data-Dump-Streamer.patch
@@ -0,0 +1,133 @@
+From 41c192d5c23cc484c0f57570a614b3d635a60c6d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppi...@redhat.com>
+Date: Fri, 7 Aug 2015 10:09:25 +0200
+Subject: [PATCH] Use Data::Dumper instead of Data::Dump::Streamer
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Data::Dump::Streamer does not work with perl-5.22.0. It's used only
+for formating output. Let use Data::Dumper now.
+
+CPAN RT#105016
+
+Signed-off-by: Petr Písař <ppi...@redhat.com>
+---
+ Makefile.PL                        |  2 +-
+ lib/Devel/REPL/Plugin/Carp/REPL.pm | 12 ++++++++++--
+ t/12-env.t                         | 28 ++++++++++++++--------------
+ 3 files changed, 25 insertions(+), 17 deletions(-)
+
+diff --git a/Makefile.PL b/Makefile.PL
+index e7ea4ef..8d3dbe7 100644
+--- a/Makefile.PL
++++ b/Makefile.PL
+@@ -58,7 +58,7 @@ my %WriteMakefileArgs = (
+                     'Devel::LexAlias'                 => '0',
+                     'Devel::REPL'                     => '0',
+                     'namespace::autoclean'            => '0',
+-                    'Data::Dump::Streamer'            => '0',
++                    'Data::Dumper'                    => '0',
+                     'Lexical::Persistence'            => '0',
+                 },
+             },
+diff --git a/lib/Devel/REPL/Plugin/Carp/REPL.pm 
b/lib/Devel/REPL/Plugin/Carp/REPL.pm
+index 5c55a83..71f8ec4 100644
+--- a/lib/Devel/REPL/Plugin/Carp/REPL.pm
++++ b/lib/Devel/REPL/Plugin/Carp/REPL.pm
+@@ -6,7 +6,7 @@ use Devel::REPL::Plugin;
+ use namespace::autoclean;
+ use Devel::LexAlias;
+ use Devel::StackTrace::WithLexicals;
+-use Data::Dump::Streamer;
++use Data::Dumper;
+ 
+ sub BEFORE_PLUGIN {
+     my $self = shift;
+@@ -140,7 +140,15 @@ around 'read' => sub {
+     }
+ 
+     if ($line =~ /^\s*:e(?:nv)?\s*/) {
+-        $self->print(Dump($self->frame->lexicals)->Names('Env')->Out);
++        my $formater = Data::Dumper->new([$self->frame->lexicals]);
++        $formater->Useqq(1);
++        $formater->Varname('Env');
++        $formater->Quotekeys(0);
++        $formater->Sortkeys(1);
++        $formater->Deparse(1);
++        my $output = $formater->Dump;
++        $output =~ s/^\$Env1 =/\$Env =/;
++        $self->print($output);
+         return '';
+     }
+ 
+diff --git a/t/12-env.t b/t/12-env.t
+index 1eab05c..526f917 100644
+--- a/t/12-env.t
++++ b/t/12-env.t
+@@ -22,24 +22,24 @@ expect_like(qr{\bNow at t/scripts/12-env\.pl:42 \(frame 
1\)\.});
+ 
+ expect_send(':e');
+ expect_like(qr/\$Env = \{(?!\};)/);
+-expect_like(qr/"\\\$alpha" => \\do \{ my \$v = 1 \}/);
+-expect_like(qr/"%args"   => \{/);
++expect_like(qr/"\\\$alpha" => \\1/);
++expect_like(qr/"%args" +=> \{/);
+ expect_like(qr/Be => 4/);
+-expect_like(qr/H  => 1/);
++expect_like(qr/H +=> 1/);
+ expect_like(qr/He => 2/);
+ expect_like(qr/Li => 3/);
+-expect_like(qr/"\\\$beta"  => \\do \{ my \$v = 2 \}/);
+-expect_like(qr/"\\\$delta" => \\do \{ my \$v = 4 \}/);
+-expect_like(qr/"\\\$gamma" => \\do \{ my \$v = 3 \}/);
++expect_like(qr/"\\\$beta" +=> \\2/);
++expect_like(qr/"\\\$delta" => \\4/);
++expect_like(qr/"\\\$gamma" => \\3/);
+ 
+ expect_send(':u');
+ expect_like(qr{\bNow at t/scripts/12-env\.pl:44 \(frame 2\)\.});
+ 
+ expect_send(':e');
+ expect_like(qr/\$Env = \{(?!\};)/);
+-expect_like(qr/"%args"     => \{/);
++expect_like(qr/"%args" +=> \{/);
+ expect_like(qr/Be => 4/);
+-expect_like(qr/H  => 1/);
++expect_like(qr/H +=> 1/);
+ expect_like(qr/He => 2/);
+ expect_like(qr/Li => 3/);
+ expect_like(qr/\+.*\+.*\+/);
+@@ -49,23 +49,23 @@ expect_like(qr{\bNow at t/scripts/12-env\.pl:28 \(frame 
3\)\.});
+ 
+ expect_send(':e');
+ expect_like(qr/\$Env = \{(?!\};)/);
+-expect_like(qr/"\\\$dos"  => \\do \{ my \$v = 'is' \}/);
+-expect_like(qr/"\\\$tres" => \\do \{ my \$v = 'I' \}/);
+-expect_like(qr/"\\\$uno"  => \\do \{ my \$v = 'I' \}/);
++expect_like(qr/"\\\$dos" +=> \\"is"/);
++expect_like(qr/"\\\$tres" => \\"I"/);
++expect_like(qr/"\\\$uno" +=> \\"I"/);
+ 
+ expect_send(':u');
+ expect_like(qr{\bNow at t/scripts/12-env\.pl:19 \(frame 4\)\.});
+ 
+ expect_send(':e');
+ expect_like(qr/\$Env = \{(?!\};)/);
+-expect_like(qr/"\\\$a" => \\do \{ my \$v = 'I' \}/);
+-expect_like(qr/"\\\$b" => \\do \{ my \$v = 'I' \}/);
++expect_like(qr/"\\\$a" => \\"I"/);
++expect_like(qr/"\\\$b" => \\"I"/);
+ 
+ expect_send(':u');
+ expect_like(qr{\b\QNow at t/scripts/12-env.pl:13 (frame 5).\E});
+ 
+ expect_send(':e');
+-expect_like(qr/\$Env = \{ "\\\$num" => \\do \{ my \$v = 'I' \} \};/);
++expect_like(qr/\$Env = \{\n +"\\\$num" => \\"I"\n +\};/);
+ 
+ expect_send(':u');
+ expect_like(qr{\b\QNow at t/scripts/12-env.pl:7 (frame 6).\E});
+-- 
+2.4.3
+
diff --git a/perl-Carp-REPL.spec b/perl-Carp-REPL.spec
index 88632b5..8ca2a00 100644
--- a/perl-Carp-REPL.spec
+++ b/perl-Carp-REPL.spec
@@ -6,6 +6,8 @@ License:        GPL+ or Artistic
 Group:          Development/Libraries
 URL:            http://search.cpan.org/dist/Carp-REPL/
 Source0:        
http://www.cpan.org/authors/id/E/ET/ETHER/Carp-REPL-%{version}.tar.gz
+# Do not use broken Data::Dump::Streamer, bug #1231297, CPAN RT#105016
+Patch0:         
Carp-REPL-0.18-Use-Data-Dumper-instead-of-Data-Dump-Streamer.patch
 BuildArch:      noarch
 # Build
 BuildRequires:  make
@@ -15,7 +17,7 @@ BuildRequires:  perl(strict)
 BuildRequires:  perl(utf8)
 BuildRequires:  perl(warnings)
 # Runtime
-BuildRequires:  perl(Data::Dump::Streamer)
+BuildRequires:  perl(Data::Dumper)
 BuildRequires:  perl(Devel::LexAlias)
 BuildRequires:  perl(Devel::REPL::Plugin)
 BuildRequires:  perl(Devel::REPL::Plugin::LexEnv)
@@ -43,6 +45,7 @@ you get a REPL instead of dying or continuing blindly.
 
 %prep
 %setup -q -n Carp-REPL-%{version}
+%patch0 -p1
 
 %build
 perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1
@@ -63,6 +66,7 @@ make test
 %changelog
 * Fri Aug 07 2015 Petr Pisar <ppi...@redhat.com> - 0.18-3
 - Specify all dependencies
+- Do not use broken Data::Dump::Streamer (bug #1231297)
 
 * Thu Jun 18 2015 Fedora Release Engineering <rel-...@lists.fedoraproject.org> 
- 0.18-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
-- 
cgit v0.10.2


        
http://pkgs.fedoraproject.org/cgit/perl-Carp-REPL.git/commit/?h=master&id=98ed93da4b84cf5c18ad7d196221c2a0d32da91b
--
Fedora Extras Perl SIG
http://www.fedoraproject.org/wiki/Extras/SIGs/Perl
perl-devel mailing list
perl-devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/perl-devel

Reply via email to