Hello community,
here is the log from the commit of package perl-Devel-PatchPerl for openSUSE:Factory checked in at 2012-02-16 12:25:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Devel-PatchPerl (Old)
and /work/SRC/openSUSE:Factory/.perl-Devel-PatchPerl.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Devel-PatchPerl", Maintainer is ""
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Devel-PatchPerl/perl-Devel-PatchPerl.changes 2012-01-04 07:26:35.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.perl-Devel-PatchPerl.new/perl-Devel-PatchPerl.changes 2012-02-16 12:25:28.000000000 +0100
@@ -1,0 +2,7 @@
+Mon Feb 13 19:41:12 UTC 2012 - coolo@suse.com
+
+- updated to 0.66
+ - Added cygwin hints file
+ - Added a plugin system
+
+-------------------------------------------------------------------
Old:
----
Devel-PatchPerl-0.62.tar.gz
New:
----
Devel-PatchPerl-0.66.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Devel-PatchPerl.spec ++++++
--- /var/tmp/diff_new_pack.vUXDuS/_old 2012-02-16 12:25:32.000000000 +0100
+++ /var/tmp/diff_new_pack.vUXDuS/_new 2012-02-16 12:25:32.000000000 +0100
@@ -1,7 +1,7 @@
#
# spec file for package perl-Devel-PatchPerl
#
-# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -15,8 +15,9 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
+
Name: perl-Devel-PatchPerl
-Version: 0.62
+Version: 0.66
Release: 0
%define cpan_name Devel-PatchPerl
Summary: Patch perl source a la Devel::PPPort's buildperl.pl
@@ -29,10 +30,12 @@
BuildRequires: perl-macros
BuildRequires: perl(File::pushd) >= 1.00
BuildRequires: perl(IPC::Cmd) >= 0.40
+BuildRequires: perl(Module::Pluggable)
#BuildRequires: perl(Devel::PatchPerl)
#BuildRequires: perl(Devel::PatchPerl::Hints)
Requires: perl(File::pushd) >= 1.00
Requires: perl(IPC::Cmd) >= 0.40
+Requires: perl(Module::Pluggable)
%{perl_requires}
%description
++++++ Devel-PatchPerl-0.62.tar.gz -> Devel-PatchPerl-0.66.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/Changes new/Devel-PatchPerl-0.66/Changes
--- old/Devel-PatchPerl-0.62/Changes 2011-11-06 00:15:59.000000000 +0100
+++ new/Devel-PatchPerl-0.66/Changes 2012-02-08 14:03:34.000000000 +0100
@@ -1,4 +1,24 @@
==============================
+2012-02-08 13:01:27 +0000 0.66
+==============================
+
+ commit 61579d54b0273fbfcb1ac39175ff641434a87103
+ Author: Chris 'BinGOs' Williams
+ Date: Wed Feb 8 13:01:27 2012 +0000
+
+ Added cygwin hints file
+
+==============================
+2012-02-04 14:40:40 +0000 0.64
+==============================
+
+ commit 31651f154271f81ce4b239366fa383e65c5b9355
+ Author: Chris 'BinGOs' Williams
+ Date: Sat Feb 4 14:37:53 2012 +0000
+
+ Added a plugin system
+
+==============================
2011-11-05 23:14:37 +0000 0.62
==============================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/LICENSE new/Devel-PatchPerl-0.66/LICENSE
--- old/Devel-PatchPerl-0.62/LICENSE 2011-11-06 00:15:59.000000000 +0100
+++ new/Devel-PatchPerl-0.66/LICENSE 2012-02-08 14:03:34.000000000 +0100
@@ -1,4 +1,4 @@
-This software is copyright (c) 2011 by Chris Williams and Marcus Holland-Moritz.
+This software is copyright (c) 2012 by Chris Williams and Marcus Holland-Moritz.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
@@ -12,7 +12,7 @@
--- The GNU General Public License, Version 1, February 1989 ---
-This software is Copyright (c) 2011 by Chris Williams and Marcus Holland-Moritz.
+This software is Copyright (c) 2012 by Chris Williams and Marcus Holland-Moritz.
This is free software, licensed under:
@@ -272,7 +272,7 @@
--- The Artistic License 1.0 ---
-This software is Copyright (c) 2011 by Chris Williams and Marcus Holland-Moritz.
+This software is Copyright (c) 2012 by Chris Williams and Marcus Holland-Moritz.
This is free software, licensed under:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/MANIFEST new/Devel-PatchPerl-0.66/MANIFEST
--- old/Devel-PatchPerl-0.62/MANIFEST 2011-11-06 00:15:59.000000000 +0100
+++ new/Devel-PatchPerl-0.66/MANIFEST 2012-02-08 14:03:34.000000000 +0100
@@ -9,9 +9,12 @@
dist.ini
lib/Devel/PatchPerl.pm
lib/Devel/PatchPerl/Hints.pm
+lib/Devel/PatchPerl/Plugin.pm
t/00-compile.t
t/01-hints.t
t/02_vers.t
+t/03_plugin.t
+t/lib/Devel/PatchPerl/Plugin/TEST.pm
t/modern/patchlevel.h
t/old/patchlevel.h
t/release-pod-coverage.t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/META.json new/Devel-PatchPerl-0.66/META.json
--- old/Devel-PatchPerl-0.62/META.json 2011-11-06 00:15:59.000000000 +0100
+++ new/Devel-PatchPerl-0.66/META.json 2012-02-08 14:03:34.000000000 +0100
@@ -4,7 +4,7 @@
"Chris Williams "
],
"dynamic_config" : 0,
- "generated_by" : "Dist::Zilla version 4.300003, CPAN::Meta::Converter version 2.112621",
+ "generated_by" : "Dist::Zilla version 4.300007, CPAN::Meta::Converter version 2.120351",
"license" : [
"perl_5"
],
@@ -22,9 +22,10 @@
"runtime" : {
"requires" : {
"File::pushd" : "1.00",
- "IO::File" : 0,
+ "IO::File" : "0",
"IPC::Cmd" : "0.40",
- "MIME::Base64" : 0,
+ "MIME::Base64" : "0",
+ "Module::Pluggable" : "0",
"perl" : "v5.6.0"
}
}
@@ -38,6 +39,6 @@
"web" : "https://github.com/bingos/devel-patchperl"
}
},
- "version" : "0.62"
+ "version" : "0.66"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/META.yml new/Devel-PatchPerl-0.66/META.yml
--- old/Devel-PatchPerl-0.62/META.yml 2011-11-06 00:15:59.000000000 +0100
+++ new/Devel-PatchPerl-0.66/META.yml 2012-02-08 14:03:34.000000000 +0100
@@ -6,7 +6,7 @@
configure_requires:
ExtUtils::MakeMaker: 6.30
dynamic_config: 0
-generated_by: 'Dist::Zilla version 4.300003, CPAN::Meta::Converter version 2.112621'
+generated_by: 'Dist::Zilla version 4.300007, CPAN::Meta::Converter version 2.120351'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -17,8 +17,9 @@
IO::File: 0
IPC::Cmd: 0.40
MIME::Base64: 0
+ Module::Pluggable: 0
perl: v5.6.0
resources:
homepage: https://github.com/bingos/devel-patchperl
repository: https://github.com/bingos/devel-patchperl.git
-version: 0.62
+version: 0.66
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/Makefile.PL new/Devel-PatchPerl-0.66/Makefile.PL
--- old/Devel-PatchPerl-0.62/Makefile.PL 2011-11-06 00:15:59.000000000 +0100
+++ new/Devel-PatchPerl-0.66/Makefile.PL 2012-02-08 14:03:34.000000000 +0100
@@ -25,9 +25,10 @@
"File::pushd" => "1.00",
"IO::File" => 0,
"IPC::Cmd" => "0.40",
- "MIME::Base64" => 0
+ "MIME::Base64" => 0,
+ "Module::Pluggable" => 0
},
- "VERSION" => "0.62",
+ "VERSION" => "0.66",
"test" => {
"TESTS" => "t/*.t"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/README new/Devel-PatchPerl-0.66/README
--- old/Devel-PatchPerl-0.62/README 2011-11-06 00:15:59.000000000 +0100
+++ new/Devel-PatchPerl-0.66/README 2012-02-08 14:03:34.000000000 +0100
@@ -2,7 +2,7 @@
Devel::PatchPerl - Patch perl source a la Devel::PPPort's buildperl.pl
VERSION
- version 0.62
+ version 0.66
SYNOPSIS
use strict;
@@ -30,14 +30,20 @@
If you don't supply the path to unwrapped perl source, it will
assume the current working directory.
+PLUGIN SYSTEM
+ See Devel::PatchPerl::Plugin for details of Devel::PatchPerl's plugin
+ system.
+
SEE ALSO
Devel::PPPort
+ Devel::PatchPerl::Plugin
+
AUTHOR
Chris Williams
COPYRIGHT AND LICENSE
- This software is copyright (c) 2011 by Chris Williams and Marcus
+ This software is copyright (c) 2012 by Chris Williams and Marcus
Holland-Moritz.
This is free software; you can redistribute it and/or modify it under
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/bin/patchperl new/Devel-PatchPerl-0.66/bin/patchperl
--- old/Devel-PatchPerl-0.62/bin/patchperl 2011-11-06 00:15:59.000000000 +0100
+++ new/Devel-PatchPerl-0.66/bin/patchperl 2012-02-08 14:03:34.000000000 +0100
@@ -19,7 +19,7 @@
=head1 VERSION
-version 0.62
+version 0.66
=head1 AUTHOR
@@ -27,7 +27,7 @@
=head1 COPYRIGHT AND LICENSE
-This software is copyright (c) 2011 by Chris Williams and Marcus Holland-Moritz.
+This software is copyright (c) 2012 by Chris Williams and Marcus Holland-Moritz.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/dist.ini new/Devel-PatchPerl-0.66/dist.ini
--- old/Devel-PatchPerl-0.62/dist.ini 2011-11-06 00:15:59.000000000 +0100
+++ new/Devel-PatchPerl-0.66/dist.ini 2012-02-08 14:03:34.000000000 +0100
@@ -1,5 +1,5 @@
name = Devel-PatchPerl
-version = 0.62
+version = 0.66
author = Chris Williams
license = Perl_5
copyright_holder = Chris Williams and Marcus Holland-Moritz
@@ -12,3 +12,4 @@
IO::File = 0
IPC::Cmd = 0.40
MIME::Base64 = 0
+Module::Pluggable = 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/lib/Devel/PatchPerl/Hints.pm new/Devel-PatchPerl-0.66/lib/Devel/PatchPerl/Hints.pm
--- old/Devel-PatchPerl-0.62/lib/Devel/PatchPerl/Hints.pm 2011-11-06 00:15:59.000000000 +0100
+++ new/Devel-PatchPerl-0.66/lib/Devel/PatchPerl/Hints.pm 2012-02-08 14:03:34.000000000 +0100
@@ -1,6 +1,6 @@
package Devel::PatchPerl::Hints;
{
- $Devel::PatchPerl::Hints::VERSION = '0.62';
+ $Devel::PatchPerl::Hints::VERSION = '0.66';
}
#ABSTRACT: replacement 'hints' files
@@ -1183,6 +1183,47 @@
LgpjYXNlICIkZF9vbGRwdGhyZWFkcyIgaW4KICAgICcnfCR1bmRlZikKCWRfY3J5cHRfcl9wcm90
bz0ndW5kZWYnCglkX2dldGdyZW50X3JfcHJvdG89J3VuZGVmJwoJZF9nZXRwd2VudF9yX3Byb3Rv
PSd1bmRlZicKCWRfc3RyZXJyb3Jfcl9wcm90bz0ndW5kZWYnCgk7OwogICAgZXNhYwo=',
+'cygwin' =>
+'IyEgL2Jpbi9zaAojIGN5Z3dpbi5zaCAtIGhpbnRzIGZvciBidWlsZGluZyBwZXJsIHVzaW5nIHRo
+ZSBDeWd3aW4gZW52aXJvbm1lbnQgZm9yIFdpbjMyCiMKCiMgbm90IG90aGVyd2lzZSBzZXR0YWJs
+ZQpleGVfZXh0PScuZXhlJwpmaXJzdG1ha2VmaWxlPSdHTlVtYWtlZmlsZScKY2FzZSAiJGxkbGli
+cHRobmFtZSIgaW4KJycpIGxkbGlicHRobmFtZT1QQVRIIDs7CmVzYWMKYXJjaG9ianM9J2N5Z3dp
+bi5vJwoKIyBtYW5kYXRvcnkgKG92ZXJyaWRlcyBpbmNvcnJlY3QgZGVmYXVsdHMpCnRlc3QgLXog
+IiRjYyIgJiYgY2M9J2djYycKaWYgdGVzdCAteiAiJHBsaWJwdGgiCnRoZW4KICAgIHBsaWJwdGg9
+YGdjYyAtcHJpbnQtZmlsZS1uYW1lPWxpYmMuYWAKICAgIHBsaWJwdGg9YGRpcm5hbWUgJHBsaWJw
+dGhgCiAgICBwbGlicHRoPWBjZCAkcGxpYnB0aCAmJiBwd2RgCmZpCnNvPSdkbGwnCiMgLSBlbGlt
+aW5hdGUgLWxjLCBpbXBsaWVkIGJ5IGdjYyBhbmQgYSBzeW1saW5rIHRvIGxpYmN5Z3dpbi5hCmxp
+YnN3YW50ZWQ9YGVjaG8gIiAkbGlic3dhbnRlZCAiIHwgc2VkIC1lICdzLyBjIC8gL2cnYAojIC0g
+ZWxpbWluYXRlIC1sbSwgc3ltbGluayB0byBsaWJjeWd3aW4uYQpsaWJzd2FudGVkPWBlY2hvICIg
+JGxpYnN3YW50ZWQgIiB8IHNlZCAtZSAncy8gbSAvIC9nJ2AKIyAtIGVsaW1pbmF0ZSAtbHV0aWws
+IHN5bWJvbHMgYXJlIGFsbCBpbiBsaWJjeWd3aW4uYQpsaWJzd2FudGVkPWBlY2hvICIgJGxpYnN3
+YW50ZWQgIiB8IHNlZCAtZSAncy8gdXRpbCAvIC9nJ2AKIyAtIGFkZCBsaWJnZGJtX2NvbXBhdCAk
+bGlic3dhbnRlZApsaWJzd2FudGVkPSIkbGlic3dhbnRlZCBnZGJtX2NvbXBhdCIKdGVzdCAteiAi
+JG9wdGltaXplIiAmJiBvcHRpbWl6ZT0nLU8zJwptYW4zZXh0PSczcG0nCnRlc3QgLXogIiR1c2U2
+NGJpdGludCIgJiYgdXNlNjRiaXRpbnQ9J2RlZmluZScKdGVzdCAteiAiJHVzZWl0aHJlYWRzIiAm
+JiB1c2VpdGhyZWFkcz0nZGVmaW5lJwpjY2ZsYWdzPSIkY2NmbGFncyAtRFBFUkxfVVNFX1NBRkVf
+UFVURU5WIC1VX19TVFJJQ1RfQU5TSV9fIgojIC0gb3RoZXJ3aXNlIGk2ODYtY3lnd2luCmFyY2hu
+YW1lPSdjeWd3aW4nCgojIGR5bmFtaWMgbG9hZGluZwojIC0gb3RoZXJ3aXNlIC1mcGljCmNjY2Rs
+ZmxhZ3M9JyAnCmxkZGxmbGFncz0nIC0tc2hhcmVkJwp0ZXN0IC16ICIkbGQiICYmIGxkPSdnKysn
+CgpjYXNlICIkb3N2ZXJzIiBpbgogICAgIyBDb25maWd1cmUgZ2V0cyB0aGVzZSB3cm9uZyBpZiB0
+aGUgSVBDIHNlcnZlciBpc24ndCB5ZXQgcnVubmluZzoKICAgICMgb25seSB1c2UgZm9yIDEuNS43
+IGFuZCBvbndhcmRzCiAgICBbMi05XSp8MS5bNi05XSp8MS5bMS01XVswLTldKnwxLjUuWzctOV0q
+fDEuNS5bMS02XVswLTldKikKICAgICAgICBkX3NlbWN0bF9zZW1pZF9kcz0nZGVmaW5lJwogICAg
+ICAgIGRfc2VtY3RsX3NlbXVuPSdkZWZpbmUnCiAgICAgICAgOzsKZXNhYwoKY2FzZSAiJG9zdmVy
+cyIgaW4KICAgIFsyLTldKnwxLls2LTldKikKICAgICAgICAjIElQdjYgb25seSBzaW5jZSAxLjcK
+ICAgICAgICBkX2luZXRudG9wPSdkZWZpbmUnCiAgICAgICAgZF9pbmV0cHRvbj0nZGVmaW5lJwog
+ICAgICAgIDs7CiAgICAqKQogICAgICAgICMgSVB2NiBub3QgaW1wbGVtZW50ZWQgYmVmb3JlIGN5
+Z3dpbi0xLjcKICAgICAgICBkX2luZXRudG9wPSd1bmRlZicKICAgICAgICBkX2luZXRwdG9uPSd1
+bmRlZicKZXNhYwoKIyBjb21waWxlIFdpbjMyQ09SRSAibW9kdWxlIiBhcyBzdGF0aWMuIHRyeSB0
+byBhdm9pZCB0aGUgc3BhY2UuCmlmIHRlc3QgLXogIiRzdGF0aWNfZXh0IjsgdGhlbgogIHN0YXRp
+Y19leHQ9IldpbjMyQ09SRSIKZWxzZQogIHN0YXRpY19leHQ9IiRzdGF0aWNfZXh0IFdpbjMyQ09S
+RSIKZmkKCiMgV2luOXggcHJvYmxlbSB3aXRoIG5vbi1ibG9ja2luZyByZWFkIGZyb20gYSBjbG9z
+ZWQgcGlwZQpkX2VvZm5ibGs9J2RlZmluZScKCiMgc3VwcHJlc3MgYXV0by1pbXBvcnQgd2Fybmlu
+Z3MKbGRmbGFncz0iJGxkZmxhZ3MgLVdsLC0tZW5hYmxlLWF1dG8taW1wb3J0IC1XbCwtLWV4cG9y
+dC1hbGwtc3ltYm9scyAtV2wsLS1lbmFibGUtYXV0by1pbWFnZS1iYXNlIgpsZGRsZmxhZ3M9IiRs
+ZGRsZmxhZ3MgJGxkZmxhZ3MiCgojIHN0cmlwIGV4ZSdzIGFuZCBkbGwncywgYmV0dGVyIGRvIGl0
+IGFmdGVyd2FyZHMKI2xkZmxhZ3M9IiRsZGZsYWdzIC1zIgojY2NkbGZsYWdzPSIkY2NkbGZsYWdz
+IC1zIgojbGRkbGZsYWdzPSIkbGRkbGZsYWdzIC1zIgo=',
);
my %files = (
@@ -1193,6 +1234,7 @@
'dragonfly' => 'dragonfly.sh',
'darwin' => 'darwin.sh',
'hpux' => 'hpux.sh',
+ 'cygwin' => 'cygwin.sh',
);
sub hint_file {
@@ -1217,7 +1259,7 @@
=head1 VERSION
-version 0.62
+version 0.66
=head1 SYNOPSIS
@@ -1272,7 +1314,7 @@
=head1 COPYRIGHT AND LICENSE
-This software is copyright (c) 2011 by Chris Williams and Marcus Holland-Moritz.
+This software is copyright (c) 2012 by Chris Williams and Marcus Holland-Moritz.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/lib/Devel/PatchPerl/Plugin.pm new/Devel-PatchPerl-0.66/lib/Devel/PatchPerl/Plugin.pm
--- old/Devel-PatchPerl-0.62/lib/Devel/PatchPerl/Plugin.pm 1970-01-01 01:00:00.000000000 +0100
+++ new/Devel-PatchPerl-0.66/lib/Devel/PatchPerl/Plugin.pm 2012-02-08 14:03:34.000000000 +0100
@@ -0,0 +1,92 @@
+package Devel::PatchPerl::Plugin;
+{
+ $Devel::PatchPerl::Plugin::VERSION = '0.66';
+}
+
+#ABSTRACT: Devel::PatchPerl plugins explained
+
+use strict;
+use warnings;
+
+qq[Plug it in];
+
+
+__END__
+=pod
+
+=head1 NAME
+
+Devel::PatchPerl::Plugin - Devel::PatchPerl plugins explained
+
+=head1 VERSION
+
+version 0.66
+
+=head1 DESCRIPTION
+
+This document explains the LDevel::PatchPerl plugin system.
+
+Plugins are a mechanism for providing additional functionality to
+LDevel::PatchPerl.
+
+Plugins are searched for in the LDevel::PatchPerl::Plugin namespace.
+
+=head1 INITIALISATION
+
+The plugin constructor is C<patchperl>.
+
+A plugin is specified using the C environment
+variable. It may either be specified in full (ie. CDevel::PatchPerl::Plugin::Feegle)
+or as the short part (ie. C<Feegle>).
+
+ $ export PERL5_PATCHPERL_PLUGIN=Devel::PatchPerl::Plugin::Feegle
+
+ $ export PERL5_PATCHPERL_PLUGIN=Feegle
+
+When LDevel::PatchPerl has identified the perl source patch and done its patching
+it will attempt to load the plugin identified. It will then call the class method
+C<patchperl> for the plugin package, with the following parameters:
+
+ 'version', the Perl version of the source tree;
+ 'source', the absolute path to the Perl source tree;
+ 'patchexe', the 'patch' utility that can be used;
+
+Plugins are called with the current working directory being the root of the
+Perl source tree, ie. C<source>.
+
+Summarised:
+
+ $ENV{PERL5_PATCHPERL_PLUGIN} = 'Devel::PatchPerl::Plugin::Feegle';
+
+ my $plugin = $ENV{PERL5_PATCHPERL_PLUGIN};
+
+ eval "require $plugin";
+
+ eval {
+ $plugin->patchperl( version => $vers, source => $srcdir, patchexe => $patch );
+ };
+
+=head1 WHAT CAN PLUGINS DO?
+
+Anything you desire to a Perl source tree.
+
+=head1 WHY USE AN ENVIRONMENT VARIABLE TO SPECIFY PLUGINS?
+
+So that indicating a plugin to use can be specified independently of whatever mechanism is
+calling LDevel::PatchPerl to do its bidding.
+
+Think L<perlbrew>.
+
+=head1 AUTHOR
+
+Chris Williams
+
+=head1 COPYRIGHT AND LICENSE
+
+This software is copyright (c) 2012 by Chris Williams and Marcus Holland-Moritz.
+
+This is free software; you can redistribute it and/or modify it under
+the same terms as the Perl 5 programming language system itself.
+
+=cut
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/lib/Devel/PatchPerl.pm new/Devel-PatchPerl-0.66/lib/Devel/PatchPerl.pm
--- old/Devel-PatchPerl-0.62/lib/Devel/PatchPerl.pm 2011-11-06 00:15:59.000000000 +0100
+++ new/Devel-PatchPerl-0.66/lib/Devel/PatchPerl.pm 2012-02-08 14:03:34.000000000 +0100
@@ -1,6 +1,6 @@
package Devel::PatchPerl;
{
- $Devel::PatchPerl::VERSION = '0.62';
+ $Devel::PatchPerl::VERSION = '0.66';
}
# ABSTRACT: Patch perl source a la Devel::PPPort's buildperl.pl
@@ -12,6 +12,7 @@
use IO::File;
use IPC::Cmd qw[can_run run];
use Devel::PatchPerl::Hints qw[hint_file];
+use Module::Pluggable search_path => ['Devel::PatchPerl::Plugin'];
use vars qw[@ISA @EXPORT_OK];
@ISA = qw(Exporter);
@@ -164,9 +165,41 @@
$sub->(@args);
}
}
+ _process_plugin( version => $vers, source => $source, patchexe => $patch_exe );
}
}
+sub _process_plugin {
+ my %args = @_;
+ return unless my $possible = $ENV{PERL5_PATCHPERL_PLUGIN};
+ my ($plugin) = grep { $possible eq $_ or /\Q$possible\E$/ } __PACKAGE__->plugins;
+ unless ( $plugin ) {
+ warn "# You specified a plugin '", $ENV{PERL5_PATCHPERL_PLUGIN},
+ "' that isn't installed, just thought you might be interested.\n";
+ return;
+ }
+ {
+ local $@;
+ eval "require $plugin";
+ if ($@) {
+ die "# I tried to load '", $ENV{PERL5_PATCHPERL_PLUGIN},
+ "' but it didn't work out. Here is what happened '$@'\n";
+ }
+ }
+ {
+ local $@;
+ eval {
+ $plugin->patchperl(
+ %args,
+ );
+ };
+ if ($@) {
+ warn "# Warnings from the plugin: '$@'\n";
+ }
+ }
+ return 1;
+}
+
sub _is
{
my($s1, $s2) = @_;
@@ -1756,7 +1789,7 @@
=head1 VERSION
-version 0.62
+version 0.66
=head1 SYNOPSIS
@@ -1792,17 +1825,23 @@
=back
+=head1 PLUGIN SYSTEM
+
+See LDevel::PatchPerl::Plugin for details of Devel::PatchPerl's plugin system.
+
=head1 SEE ALSO
LDevel::PPPort
+LDevel::PatchPerl::Plugin
+
=head1 AUTHOR
Chris Williams
=head1 COPYRIGHT AND LICENSE
-This software is copyright (c) 2011 by Chris Williams and Marcus Holland-Moritz.
+This software is copyright (c) 2012 by Chris Williams and Marcus Holland-Moritz.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/t/03_plugin.t new/Devel-PatchPerl-0.66/t/03_plugin.t
--- old/Devel-PatchPerl-0.62/t/03_plugin.t 1970-01-01 01:00:00.000000000 +0100
+++ new/Devel-PatchPerl-0.66/t/03_plugin.t 2012-02-08 14:03:34.000000000 +0100
@@ -0,0 +1,11 @@
+use strict;
+use warnings;
+use lib 't/lib';
+BEGIN {
+ $ENV{PERL5_PATCHPERL_PLUGIN} = 'TEST';
+}
+use Test::More qq'no_plan';
+use File::Spec;
+use Devel::PatchPerl;
+my $result = Devel::PatchPerl::_process_plugin(version => '5.14.2');
+ok( $result, 'The result was okay' );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-0.62/t/lib/Devel/PatchPerl/Plugin/TEST.pm new/Devel-PatchPerl-0.66/t/lib/Devel/PatchPerl/Plugin/TEST.pm
--- old/Devel-PatchPerl-0.62/t/lib/Devel/PatchPerl/Plugin/TEST.pm 1970-01-01 01:00:00.000000000 +0100
+++ new/Devel-PatchPerl-0.66/t/lib/Devel/PatchPerl/Plugin/TEST.pm 2012-02-08 14:03:34.000000000 +0100
@@ -0,0 +1,10 @@
+package Devel::PatchPerl::Plugin::TEST;
+
+use strict;
+use warnings;
+
+sub patchperl {
+ warn "I AM A TEST PLUGIN\n";
+}
+
+qq[1];
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org