summaryrefslogtreecommitdiffstats
path: root/Module-Pluggable-4.8-Allow-single-letter-package-names.patch
diff options
context:
space:
mode:
authorPetr Písař <ppisar@redhat.com>2014-01-06 09:05:31 +0100
committerPetr Písař <ppisar@redhat.com>2014-01-06 09:05:31 +0100
commit7b53e50e45b9c4e7a298ce844e3e8c8ff969b603 (patch)
tree92a87a33d768ea66aa047179173ee20392c33f3e /Module-Pluggable-4.8-Allow-single-letter-package-names.patch
parent5e2617f7f19e8cc1420e00043b2460ff57364d27 (diff)
downloadperl-Module-Pluggable-f20.tar.gz
perl-Module-Pluggable-f20.tar.xz
perl-Module-Pluggable-f20.zip
Do not ignore single-letter-named packagesf20
Diffstat (limited to 'Module-Pluggable-4.8-Allow-single-letter-package-names.patch')
-rw-r--r--Module-Pluggable-4.8-Allow-single-letter-package-names.patch94
1 files changed, 94 insertions, 0 deletions
diff --git a/Module-Pluggable-4.8-Allow-single-letter-package-names.patch b/Module-Pluggable-4.8-Allow-single-letter-package-names.patch
new file mode 100644
index 0000000..5cb7615
--- /dev/null
+++ b/Module-Pluggable-4.8-Allow-single-letter-package-names.patch
@@ -0,0 +1,94 @@
+From 7872bc27ac7f828a6b53d00717abdf83f2d1866d Mon Sep 17 00:00:00 2001
+From: Simon Wistow <simon@fastly.com>
+Date: Tue, 22 Oct 2013 09:32:27 -0700
+Subject: [PATCH] Allow single letter package names
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ lib/Module/Pluggable/Object.pm | 2 +-
+ t/25single_letter_package.t | 42 ++++++++++++++++++++++++++++++++++++++++++
+ t/lib/M/X.pm | 7 +++++++
+ 3 files changed, 50 insertions(+), 1 deletion(-)
+ create mode 100755 t/25single_letter_package.t
+ create mode 100644 t/lib/M/X.pm
+
+diff --git a/lib/Module/Pluggable/Object.pm b/lib/Module/Pluggable/Object.pm
+index 6f7a051..46240a8 100755
+--- a/lib/Module/Pluggable/Object.pm
++++ b/lib/Module/Pluggable/Object.pm
+@@ -234,7 +234,7 @@ sub search_paths {
+ }
+ my $plugin = join '::', $searchpath, @dirs, $name;
+
+- next unless $plugin =~ m!(?:[a-z\d]+)[a-z\d]!i;
++ next unless $plugin =~ m!(?:[a-z\d]+)[a-z\d]*!i;
+
+ $self->handle_finding_plugin($plugin, \@plugins)
+ }
+diff --git a/t/25single_letter_package.t b/t/25single_letter_package.t
+new file mode 100755
+index 0000000..dd55fff
+--- /dev/null
++++ b/t/25single_letter_package.t
+@@ -0,0 +1,42 @@
++#!perl -w
++
++use strict;
++use FindBin;
++use lib (($FindBin::Bin."/lib")=~/^(.*)$/);
++use Test::More tests => 5;
++
++my $foo;
++ok($foo = M->new());
++
++my @plugins;
++my @expected = qw(M::X);
++ok(@plugins = sort $foo->plugins);
++
++
++
++is_deeply(\@plugins, \@expected, "is deeply");
++
++@plugins = ();
++
++ok(@plugins = sort M->plugins);
++
++
++
++
++is_deeply(\@plugins, \@expected, "is deeply class");
++
++
++
++package M;
++
++use strict;
++use Module::Pluggable search_path => "M";
++
++
++sub new {
++ my $class = shift;
++ return bless {}, $class;
++
++}
++1;
++
+diff --git a/t/lib/M/X.pm b/t/lib/M/X.pm
+new file mode 100644
+index 0000000..77f8f58
+--- /dev/null
++++ b/t/lib/M/X.pm
+@@ -0,0 +1,7 @@
++package M::X;
++
++use strict;
++
++sub new { return bless {}, $_[0]; }
++sub frobnitz {}
++1;
+--
+1.8.3.1
+