r30144 - in /trunk/libpoe-component-pluggable-perl: ./ debian/ inc/Module/ inc/Module/Install/ lib/POE/Component/ lib/POE/Component/Pluggable/

rmayorga at users.alioth.debian.org rmayorga at users.alioth.debian.org
Tue Jan 27 03:24:48 UTC 2009


Author: rmayorga
Date: Tue Jan 27 03:24:44 2009
New Revision: 30144

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=30144
Log:
* New upstream release
* debian/control
  + set debhelper version to 7
  + add myself to uploaders
* debian/rules, debian/compat; updated to dh7 using dh-make-perl
* debian/copyright:
  + update proposal format
  + add individual copyright stanza for debian/* based
  on debian/changelog
  + mention 3 more people holding copyright on *, according to upstream
  + add copyright stanza for inc/*

Added:
    trunk/libpoe-component-pluggable-perl/debian/libpoe-component-pluggable-perl.examples
Modified:
    trunk/libpoe-component-pluggable-perl/Changes
    trunk/libpoe-component-pluggable-perl/META.yml
    trunk/libpoe-component-pluggable-perl/Makefile.PL
    trunk/libpoe-component-pluggable-perl/debian/changelog
    trunk/libpoe-component-pluggable-perl/debian/compat
    trunk/libpoe-component-pluggable-perl/debian/control
    trunk/libpoe-component-pluggable-perl/debian/copyright
    trunk/libpoe-component-pluggable-perl/debian/rules
    trunk/libpoe-component-pluggable-perl/inc/Module/Install.pm
    trunk/libpoe-component-pluggable-perl/inc/Module/Install/Base.pm
    trunk/libpoe-component-pluggable-perl/inc/Module/Install/Can.pm
    trunk/libpoe-component-pluggable-perl/inc/Module/Install/Fetch.pm
    trunk/libpoe-component-pluggable-perl/inc/Module/Install/Makefile.pm
    trunk/libpoe-component-pluggable-perl/inc/Module/Install/Metadata.pm
    trunk/libpoe-component-pluggable-perl/inc/Module/Install/Win32.pm
    trunk/libpoe-component-pluggable-perl/inc/Module/Install/WriteAll.pm
    trunk/libpoe-component-pluggable-perl/lib/POE/Component/Pluggable.pm
    trunk/libpoe-component-pluggable-perl/lib/POE/Component/Pluggable/Pipeline.pm

Modified: trunk/libpoe-component-pluggable-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/Changes?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/Changes (original)
+++ trunk/libpoe-component-pluggable-perl/Changes Tue Jan 27 03:24:44 2009
@@ -1,5 +1,14 @@
 POE::Component::Pluggable
 =========================
+
+1.14	Mon Jan 26 12:25:26 GMT 2009
+	- We were not processing '_default' in $self. Fixed.
+
+1.12	Thu Jan 22 10:29:10 GMT 2009
+	- Fixed circular reference problem with ::Pipeline
+	  reported with hints on how to fix by Jonathan Steinert
+	- Some Makefile.PL magic to make sure that we have 
+	  Scalar::Util::weaken
 
 1.10	Thu Jun 26 19:19:37 BST 2008
 	- Report errors if register/unregister calls fail (Hinrik)

Modified: trunk/libpoe-component-pluggable-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/META.yml?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/META.yml (original)
+++ trunk/libpoe-component-pluggable-perl/META.yml Tue Jan 27 03:24:44 2009
@@ -5,20 +5,20 @@
 build_requires:
   Test::More: 0.47
 distribution_type: module
-generated_by: 'Module::Install version 0.75'
+generated_by: 'Module::Install version 0.78'
 license: perl
 meta-spec:
-  url: http://module-build.sourceforge.net/META-spec-v1.3.html
-  version: 1.3
+  url: http://module-build.sourceforge.net/META-spec-v1.4.html
+  version: 1.4
 name: POE-Component-Pluggable
 no_index:
   directory:
+    - examples
     - inc
     - t
-    - examples
-    - examples
 requires:
-  Carp: 0
   POE: 1.0002
-  perl: 5.000
-version: 1.10
+  perl: 5.6.0
+resources:
+  license: http://dev.perl.org/licenses/
+version: 1.14

Modified: trunk/libpoe-component-pluggable-perl/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/Makefile.PL?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/Makefile.PL (original)
+++ trunk/libpoe-component-pluggable-perl/Makefile.PL Tue Jan 27 03:24:44 2009
@@ -6,8 +6,30 @@
 version_from 'lib/POE/Component/Pluggable.pm';
 abstract_from 'lib/POE/Component/Pluggable.pm';
 build_requires 'Test::More' => 0.47;
-perl_version '5.000';
-requires 'warnings::compat' => 0 if $] < 5.006;
-requires 'Carp' => 0;
+perl_version '5.006';
+eval "use Scalar::Util qw(weaken);";
+if ( $@ ) {
+   unless ( can_cc() ) {
+	print <<NOTICE;
+
+\a--------------------------------------------------------------
+Hi,
+
+Sorry about this but we require weak references by using 
+Scalar::Util::weaken.
+
+You don't appear to have a version of Scalar::Util installed
+that supports weaken and your don't have a working compiler
+available so that we can install a version of Scalar::Util
+that does support weaken.
+
+Giving up.
+--------------------------------------------------------------
+
+NOTICE
+       exit 0;
+   }
+   requires 'Scalar::Util' => 1.19;
+}
 requires 'POE' => 1.0002;
 WriteAll();

Modified: trunk/libpoe-component-pluggable-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/debian/changelog?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/debian/changelog (original)
+++ trunk/libpoe-component-pluggable-perl/debian/changelog Tue Jan 27 03:24:44 2009
@@ -1,9 +1,23 @@
-libpoe-component-pluggable-perl (1.10-2) UNRELEASED; urgency=low
-
+libpoe-component-pluggable-perl (1.14-1) unstable; urgency=low
+  
+  [ gregor herrmann ]
   * debian/control: Changed: Switched Vcs-Browser field to ViewSVN
     (source stanza).
+  
+  [ Rene Mayorga ]
+  * New upstream release
+  * debian/control
+    + set debhelper version to 7
+    + add myself to uploaders
+  * debian/rules, debian/compat; updated to dh7 using dh-make-perl
+  * debian/copyright:
+    + update proposal format
+    + add individual copyright stanza for debian/* based
+    on debian/changelog
+    + mention 3 more people holding copyright on *, according to upstream
+    + add copyright stanza for inc/*
 
- -- gregor herrmann <gregoa at debian.org>  Sun, 16 Nov 2008 20:46:19 +0100
+ -- Rene Mayorga <rmayorga at debian.org>  Mon, 26 Jan 2009 20:59:46 -0600
 
 libpoe-component-pluggable-perl (1.10-1) unstable; urgency=low
 

Modified: trunk/libpoe-component-pluggable-perl/debian/compat
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/debian/compat?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/debian/compat (original)
+++ trunk/libpoe-component-pluggable-perl/debian/compat Tue Jan 27 03:24:44 2009
@@ -1,1 +1,1 @@
-5
+7

Modified: trunk/libpoe-component-pluggable-perl/debian/control
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/debian/control?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/debian/control (original)
+++ trunk/libpoe-component-pluggable-perl/debian/control Tue Jan 27 03:24:44 2009
@@ -1,11 +1,11 @@
 Source: libpoe-component-pluggable-perl
 Section: perl
 Priority: optional
-Build-Depends: debhelper (>= 5)
+Build-Depends: debhelper (>= 7)
 Build-Depends-Indep: perl (>= 5.000), libpoe-perl (>= 2:1.0002),
  libtest-pod-perl, libtest-pod-coverage-perl
 Maintainer: Debian Perl Group <pkg-perl-maintainers at lists.alioth.debian.org>
-Uploaders: Martín Ferrari <tincho at debian.org>
+Uploaders: Martín Ferrari <tincho at debian.org>, Rene Mayorga <rmayorga at debian.org>
 Standards-Version: 3.8.0
 Homepage: http://search.cpan.org/dist/POE-Component-Pluggable/
 Vcs-Svn: svn://svn.debian.org/pkg-perl/trunk/libpoe-component-pluggable-perl/

Modified: trunk/libpoe-component-pluggable-perl/debian/copyright
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/debian/copyright?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/debian/copyright (original)
+++ trunk/libpoe-component-pluggable-perl/debian/copyright Tue Jan 27 03:24:44 2009
@@ -1,23 +1,34 @@
-Format-Specification: http://wiki.debian.org/Proposals/CopyrightFormat
-Upstream-Author: Chris Williams <chris at bingosnet.co.uk>
-Packaged-By: Martín Ferrari <tincho at debian.org>
-Packaged-Date: Fri, 06 Jun 2008 07:45:40 -0300
-Original-Source-Location: http://search.cpan.org/dist/POE-Component-Pluggable/
-Original-Source-Command: uscan --force-download
-Original-Source-Depends: devscripts
+Format-Specification:
+    http://wiki.debian.org/Proposals/CopyrightFormat?action=recall&rev=196
+Upstream-Maintainer: Chris Williams <chris at bingosnet.co.uk>
+Upstream-Source: http://search.cpan.org/dist/POE-Component-Pluggable/
+Upstream-Name: POE-Component-Pluggable
 
 Files: *
-Copyright: © 2008 Chris Williams, Apocalypse, Hinrik Örn Sigurðsson and
-                  Jeff Pinyan.
+Copyright: © 2008, Chris Williams <chris at bingosnet.co.uk>,
+                   Apocalypse, Hinrik Örn Sigurðsson and Jeff Pinyan.
+License-Alias: Perl
 License: Artistic | GPL-1+
- This program is free software; you can redistribute it and/or modify it under
- the same terms as Perl itself.
+
+Files: inc/*
+Copyright: © 2008 - 2009 Adam Kennedy.
+License-Alias: Perl
+License: Artistic | GPL-1+
 
 Files: debian/*
-Copyright: © 2008 Debian Perl Group <debian-perl at lists.debian.org>
+Copyright: © 2008 Martín Ferrari <tincho at debian.org> 
 License: Artistic | GPL-1+
 
-Perl is distributed under your choice of the GNU General Public License or
-the Artistic License.  On Debian GNU/Linux systems, the complete text of the
-GNU General Public License can be found in `/usr/share/common-licenses/GPL'
-and the Artistic Licence in `/usr/share/common-licenses/Artistic'.
+License: Artistic
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the Artistic License, which comes with Perl.
+    On Debian GNU/Linux systems, the complete text of the Artistic License
+    can be found in `/usr/share/common-licenses/Artistic'
+
+License: GPL-1+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 1, or (at your option)
+    any later version.
+    On Debian GNU/Linux systems, the complete text of the GNU General
+    Public License can be found in `/usr/share/common-licenses/GPL'

Added: trunk/libpoe-component-pluggable-perl/debian/libpoe-component-pluggable-perl.examples
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/debian/libpoe-component-pluggable-perl.examples?rev=30144&op=file
==============================================================================
--- trunk/libpoe-component-pluggable-perl/debian/libpoe-component-pluggable-perl.examples (added)
+++ trunk/libpoe-component-pluggable-perl/debian/libpoe-component-pluggable-perl.examples Tue Jan 27 03:24:44 2009
@@ -1,0 +1,1 @@
+examples/*

Modified: trunk/libpoe-component-pluggable-perl/debian/rules
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/debian/rules?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/debian/rules (original)
+++ trunk/libpoe-component-pluggable-perl/debian/rules Tue Jan 27 03:24:44 2009
@@ -1,60 +1,23 @@
 #!/usr/bin/make -f
-
-# Uncomment this to turn on verbose mode.
-#export DH_VERBOSE=1
-
-# If set to a true value then MakeMaker's prompt function will
-# always return the default without waiting for user input.
-export PERL_MM_USE_DEFAULT=1
-
-PERL   ?= /usr/bin/perl
-PACKAGE = $(shell dh_listpackages)
-TMP     = $(CURDIR)/debian/$(PACKAGE)
 
 build: build-stamp
 build-stamp:
-	dh_testdir
-	$(PERL) Makefile.PL INSTALLDIRS=vendor
-	$(MAKE)
-	$(MAKE) test
-	# Until #480565 is fixed, manually fix manpages
-	find $(CURDIR)/blib -name \*.3pm -exec \
-		sed -i 's/\\\*(d\\-/\\*(d-/g' {} \;
+	dh build
 	touch $@
 
 clean:
-	dh_testdir
-	dh_testroot
-	dh_clean build-stamp install-stamp
-	[ ! -f Makefile ] || $(MAKE) realclean
+	dh $@
 
 install: install-stamp
 install-stamp: build-stamp
-	dh_testdir
-	dh_testroot
-	dh_clean -k
-	$(MAKE) install DESTDIR=$(TMP) PREFIX=/usr
-	[ ! -d $(TMP)/usr/lib/perl5 ] || \
-		rmdir --ignore-fail-on-non-empty --parents --verbose \
-		$(TMP)/usr/lib/perl5
+	dh install
 	touch $@
 
 binary-arch:
-# We have nothing to do here for an architecture-independent package
 
-binary-indep: build install
-	dh_testdir
-	dh_testroot
-	dh_installexamples examples/*
-	dh_installdocs
-	dh_installchangelogs Changes
-	dh_perl
-	dh_compress
-	dh_fixperms
-	dh_installdeb
-	dh_gencontrol
-	dh_md5sums
-	dh_builddeb
+binary-indep: install
+	dh $@
 
-binary: binary-indep binary-arch
-.PHONY: build clean binary-indep binary-arch binary install
+binary: binary-arch binary-indep
+
+.PHONY: binary binary-arch binary-indep install clean build

Modified: trunk/libpoe-component-pluggable-perl/inc/Module/Install.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/inc/Module/Install.pm?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/inc/Module/Install.pm (original)
+++ trunk/libpoe-component-pluggable-perl/inc/Module/Install.pm Tue Jan 27 03:24:44 2009
@@ -30,7 +30,7 @@
 	# This is not enforced yet, but will be some time in the next few
 	# releases once we can make sure it won't clash with custom
 	# Module::Install extensions.
-	$VERSION = '0.75';
+	$VERSION = '0.78';
 
 	*inc::Module::Install::VERSION = *VERSION;
 	@inc::Module::Install::ISA     = __PACKAGE__;
@@ -125,8 +125,10 @@
 			goto &$code unless $cwd eq $pwd;
 		}
 		$$sym =~ /([^:]+)$/ or die "Cannot autoload $who - $sym";
-		unshift @_, ( $self, $1 );
-		goto &{$self->can('call')} unless uc($1) eq $1;
+		unless ( uc($1) eq $1 ) {
+			unshift @_, ( $self, $1 );
+			goto &{$self->can('call')};
+		}
 	};
 }
 
@@ -248,7 +250,7 @@
 sub load_extensions {
 	my ($self, $path, $top) = @_;
 
-	unless ( grep { lc $_ eq lc $self->{prefix} } @INC ) {
+	unless ( grep { !ref $_ and lc $_ eq lc $self->{prefix} } @INC ) {
 		unshift @INC, $self->{prefix};
 	}
 
@@ -339,7 +341,10 @@
 	close FH or die "close($_[0]): $!";
 }
 
-sub _version {
+# _version is for processing module versions (eg, 1.03_05) not
+# Perl versions (eg, 5.8.1).
+
+sub _version ($) {
 	my $s = shift || 0;
 	   $s =~ s/^(\d+)\.?//;
 	my $l = $1 || 0;
@@ -348,6 +353,17 @@
 	return $l + 0;
 }
 
+# Cloned from Params::Util::_CLASS
+sub _CLASS ($) {
+	(
+		defined $_[0]
+		and
+		! ref $_[0]
+		and
+		$_[0] =~ m/^[^\W\d]\w*(?:::\w+)*$/s
+	) ? $_[0] : undef;
+}
+
 1;
 
-# Copyright 2008 Adam Kennedy.
+# Copyright 2008 - 2009 Adam Kennedy.

Modified: trunk/libpoe-component-pluggable-perl/inc/Module/Install/Base.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/inc/Module/Install/Base.pm?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/inc/Module/Install/Base.pm (original)
+++ trunk/libpoe-component-pluggable-perl/inc/Module/Install/Base.pm Tue Jan 27 03:24:44 2009
@@ -1,7 +1,7 @@
 #line 1
 package Module::Install::Base;
 
-$VERSION = '0.75';
+$VERSION = '0.78';
 
 # Suspend handler for "redefined" warnings
 BEGIN {
@@ -45,6 +45,8 @@
     $_[0]->_top->{admin} or Module::Install::Base::FakeAdmin->new;
 }
 
+#line 101
+
 sub is_admin {
     $_[0]->admin->VERSION;
 }
@@ -67,4 +69,4 @@
 
 1;
 
-#line 138
+#line 146

Modified: trunk/libpoe-component-pluggable-perl/inc/Module/Install/Can.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/inc/Module/Install/Can.pm?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/inc/Module/Install/Can.pm (original)
+++ trunk/libpoe-component-pluggable-perl/inc/Module/Install/Can.pm Tue Jan 27 03:24:44 2009
@@ -11,7 +11,7 @@
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.75';
+	$VERSION = '0.78';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -39,6 +39,7 @@
 	return $_cmd if (-x $_cmd or $_cmd = MM->maybe_command($_cmd));
 
 	for my $dir ((split /$Config::Config{path_sep}/, $ENV{PATH}), '.') {
+		next if $dir eq '';
 		my $abs = File::Spec->catfile($dir, $_[1]);
 		return $abs if (-x $abs or $abs = MM->maybe_command($abs));
 	}
@@ -79,4 +80,4 @@
 
 __END__
 
-#line 157
+#line 158

Modified: trunk/libpoe-component-pluggable-perl/inc/Module/Install/Fetch.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/inc/Module/Install/Fetch.pm?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/inc/Module/Install/Fetch.pm (original)
+++ trunk/libpoe-component-pluggable-perl/inc/Module/Install/Fetch.pm Tue Jan 27 03:24:44 2009
@@ -6,20 +6,20 @@
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.75';
+	$VERSION = '0.78';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
 
 sub get_file {
     my ($self, %args) = @_;
-    my ($scheme, $host, $path, $file) = 
+    my ($scheme, $host, $path, $file) =
         $args{url} =~ m|^(\w+)://([^/]+)(.+)/(.+)| or return;
 
     if ( $scheme eq 'http' and ! eval { require LWP::Simple; 1 } ) {
         $args{url} = $args{ftp_url}
             or (warn("LWP support unavailable!\n"), return);
-        ($scheme, $host, $path, $file) = 
+        ($scheme, $host, $path, $file) =
             $args{url} =~ m|^(\w+)://([^/]+)(.+)/(.+)| or return;
     }
 

Modified: trunk/libpoe-component-pluggable-perl/inc/Module/Install/Makefile.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/inc/Module/Install/Makefile.pm?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/inc/Module/Install/Makefile.pm (original)
+++ trunk/libpoe-component-pluggable-perl/inc/Module/Install/Makefile.pm Tue Jan 27 03:24:44 2009
@@ -7,7 +7,7 @@
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.75';
+	$VERSION = '0.78';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -36,9 +36,9 @@
 
 sub makemaker_args {
 	my $self = shift;
-	my $args = ($self->{makemaker_args} ||= {});
-	  %$args = ( %$args, @_ ) if @_;
-	$args;
+	my $args = ( $self->{makemaker_args} ||= {} );
+	%$args = ( %$args, @_ );
+	return $args;
 }
 
 # For mm args that take multiple space-seperated args,
@@ -64,7 +64,7 @@
 	my $self  = shift;
 	my $clean = $self->makemaker_args->{clean} ||= {};
 	  %$clean = (
-		%$clean, 
+		%$clean,
 		FILES => join ' ', grep { length $_ } ($clean->{FILES} || (), @_),
 	);
 }
@@ -73,7 +73,7 @@
 	my $self      = shift;
 	my $realclean = $self->makemaker_args->{realclean} ||= {};
 	  %$realclean = (
-		%$realclean, 
+		%$realclean,
 		FILES => join ' ', grep { length $_ } ($realclean->{FILES} || (), @_),
 	);
 }
@@ -116,9 +116,15 @@
 
 	# Make sure we have a new enough
 	require ExtUtils::MakeMaker;
-	$self->configure_requires( 'ExtUtils::MakeMaker' => $ExtUtils::MakeMaker::VERSION );
-
-	# Generate the 
+
+	# MakeMaker can complain about module versions that include
+	# an underscore, even though its own version may contain one!
+	# Hence the funny regexp to get rid of it.  See RT #35800
+	# for details.
+
+	$self->configure_requires( 'ExtUtils::MakeMaker' => $ExtUtils::MakeMaker::VERSION =~ /^(\d+\.\d+)/ );
+
+	# Generate the
 	my $args = $self->makemaker_args;
 	$args->{DISTNAME} = $self->name;
 	$args->{NAME}     = $self->module_name || $self->name;
@@ -175,7 +181,9 @@
 
 	my $user_preop = delete $args{dist}->{PREOP};
 	if (my $preop = $self->admin->preop($user_preop)) {
-		$args{dist} = $preop;
+		foreach my $key ( keys %$preop ) {
+			$args{dist}->{$key} = $preop->{$key};
+		}
 	}
 
 	my $mm = ExtUtils::MakeMaker::WriteMakefile(%args);
@@ -188,7 +196,7 @@
 	my $top_class     = ref($self->_top) || '';
 	my $top_version   = $self->_top->VERSION || '';
 
-	my $preamble = $self->preamble 
+	my $preamble = $self->preamble
 		? "# Preamble by $top_class $top_version\n"
 			. $self->preamble
 		: '';
@@ -242,4 +250,4 @@
 
 __END__
 
-#line 371
+#line 379

Modified: trunk/libpoe-component-pluggable-perl/inc/Module/Install/Metadata.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/inc/Module/Install/Metadata.pm?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/inc/Module/Install/Metadata.pm (original)
+++ trunk/libpoe-component-pluggable-perl/inc/Module/Install/Metadata.pm Tue Jan 27 03:24:44 2009
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.75';
+	$VERSION = '0.78';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -17,9 +17,7 @@
 	abstract
 	author
 	version
-	license
 	distribution_type
-	perl_version
 	tests
 	installdirs
 };
@@ -33,11 +31,18 @@
 	resources
 };
 
-sub Meta            { shift        }
-sub Meta_ScalarKeys { @scalar_keys }
-sub Meta_TupleKeys  { @tuple_keys  }
-
-foreach my $key (@scalar_keys) {
+my @resource_keys = qw{
+	homepage
+	bugtracker
+	repository
+};
+
+sub Meta              { shift          }
+sub Meta_ScalarKeys   { @scalar_keys   }
+sub Meta_TupleKeys    { @tuple_keys    }
+sub Meta_ResourceKeys { @resource_keys }
+
+foreach my $key ( @scalar_keys ) {
 	*$key = sub {
 		my $self = shift;
 		return $self->{values}{$key} if defined wantarray and !@_;
@@ -46,12 +51,30 @@
 	};
 }
 
+foreach my $key ( @resource_keys ) {
+	*$key = sub {
+		my $self = shift;
+		unless ( @_ ) {
+			return () unless $self->{values}{resources};
+			return map  { $_->[1] }
+			       grep { $_->[0] eq $key }
+			       @{ $self->{values}{resources} };
+		}
+		return $self->{values}{resources}{$key} unless @_;
+		my $uri = shift or die(
+			"Did not provide a value to $key()"
+		);
+		$self->resources( $key => $uri );
+		return 1;
+	};
+}
+
 sub requires {
 	my $self = shift;
 	while ( @_ ) {
 		my $module  = shift or last;
 		my $version = shift || 0;
-		push @{ $self->{values}->{requires} }, [ $module, $version ];
+		push @{ $self->{values}{requires} }, [ $module, $version ];
 	}
 	$self->{values}{requires};
 }
@@ -61,7 +84,7 @@
 	while ( @_ ) {
 		my $module  = shift or last;
 		my $version = shift || 0;
-		push @{ $self->{values}->{build_requires} }, [ $module, $version ];
+		push @{ $self->{values}{build_requires} }, [ $module, $version ];
 	}
 	$self->{values}{build_requires};
 }
@@ -71,9 +94,9 @@
 	while ( @_ ) {
 		my $module  = shift or last;
 		my $version = shift || 0;
-		push @{ $self->{values}->{configure_requires} }, [ $module, $version ];
-	}
-	$self->{values}->{configure_requires};
+		push @{ $self->{values}{configure_requires} }, [ $module, $version ];
+	}
+	$self->{values}{configure_requires};
 }
 
 sub recommends {
@@ -81,9 +104,9 @@
 	while ( @_ ) {
 		my $module  = shift or last;
 		my $version = shift || 0;
-		push @{ $self->{values}->{recommends} }, [ $module, $version ];
-	}
-	$self->{values}->{recommends};
+		push @{ $self->{values}{recommends} }, [ $module, $version ];
+	}
+	$self->{values}{recommends};
 }
 
 sub bundles {
@@ -91,26 +114,31 @@
 	while ( @_ ) {
 		my $module  = shift or last;
 		my $version = shift || 0;
-		push @{ $self->{values}->{bundles} }, [ $module, $version ];
-	}
-	$self->{values}->{bundles};
+		push @{ $self->{values}{bundles} }, [ $module, $version ];
+	}
+	$self->{values}{bundles};
 }
 
 # Resource handling
+my %lc_resource = map { $_ => 1 } qw{
+	homepage
+	license
+	bugtracker
+	repository
+};
+
 sub resources {
 	my $self = shift;
 	while ( @_ ) {
-		my $resource = shift or last;
-		my $value    = shift or next;
-		push @{ $self->{values}->{resources} }, [ $resource, $value ];
-	}
-	$self->{values}->{resources};
-}
-
-sub repository {
-	my $self = shift;
-	$self->resources( repository => shift );
-	return 1;
+		my $name  = shift or last;
+		my $value = shift or next;
+		if ( $name eq lc $name and ! $lc_resource{$name} ) {
+			die("Unsupported reserved lowercase resource '$name'");
+		}
+		$self->{values}{resources} ||= [];
+		push @{ $self->{values}{resources} }, [ $name, $value ];
+	}
+	$self->{values}{resources};
 }
 
 # Aliases for build_requires that will have alternative
@@ -126,30 +154,74 @@
 
 sub sign {
 	my $self = shift;
-	return $self->{'values'}{'sign'} if defined wantarray and ! @_;
-	$self->{'values'}{'sign'} = ( @_ ? $_[0] : 1 );
+	return $self->{values}{sign} if defined wantarray and ! @_;
+	$self->{values}{sign} = ( @_ ? $_[0] : 1 );
 	return $self;
 }
 
 sub dynamic_config {
 	my $self = shift;
 	unless ( @_ ) {
-		warn "You MUST provide an explicit true/false value to dynamic_config, skipping\n";
+		warn "You MUST provide an explicit true/false value to dynamic_config\n";
 		return $self;
 	}
 	$self->{values}{dynamic_config} = $_[0] ? 1 : 0;
-	return $self;
+	return 1;
+}
+
+sub perl_version {
+	my $self = shift;
+	return $self->{values}{perl_version} unless @_;
+	my $version = shift or die(
+		"Did not provide a value to perl_version()"
+	);
+
+	# Convert triple-part versions (eg, 5.6.1 or 5.8.9) to
+	# numbers (eg, 5.006001 or 5.008009).
+	# Also, convert double-part versions (eg, 5.8)
+
+	$version =~ s/^(\d+)\.(\d+)(?:\.(\d+))?$/sprintf("%d.%03d%03d",$1,$2,$3 || 0)/e;
+
+	$version =~ s/_.+$//;
+	$version = $version + 0; # Numify
+	unless ( $version >= 5.005 ) {
+		die "Module::Install only supports 5.005 or newer (use ExtUtils::MakeMaker)\n";
+	}
+	$self->{values}{perl_version} = $version;
+	return 1;
+}
+
+sub license {
+	my $self = shift;
+	return $self->{values}{license} unless @_;
+	my $license = shift or die(
+		'Did not provide a value to license()'
+	);
+	$self->{values}{license} = $license;
+
+	# Automatically fill in license URLs
+	if ( $license eq 'perl' ) {
+		$self->resources( license => 'http://dev.perl.org/licenses/' );
+	}
+
+	return 1;
 }
 
 sub all_from {
 	my ( $self, $file ) = @_;
 
 	unless ( defined($file) ) {
-		my $name = $self->name
-			or die "all_from called with no args without setting name() first";
+		my $name = $self->name or die(
+			"all_from called with no args without setting name() first"
+		);
 		$file = join('/', 'lib', split(/-/, $name)) . '.pm';
 		$file =~ s{.*/}{} unless -e $file;
-		die "all_from: cannot find $file from $name" unless -e $file;
+		unless ( -e $file ) {
+			die("all_from cannot find $file from $name");
+		}
+	}
+	unless ( -f $file ) {
+		die("The path '$file' does not exist, or is not a file");
 	}
 
 	# Some methods pull from POD instead of code.
@@ -228,8 +300,8 @@
 	while ( my ( $name, $mods ) = splice( @_, 0, 2 ) ) {
 		$self->feature( $name, @$mods );
 	}
-	return $self->{values}->{features}
-		? @{ $self->{values}->{features} }
+	return $self->{values}{features}
+		? @{ $self->{values}{features} }
 		: ();
 }
 
@@ -303,7 +375,7 @@
 			$self->module_name($module_name);
 		}
 	} else {
-		die "Cannot determine name from $file\n";
+		die("Cannot determine name from $file\n");
 	}
 }
 
@@ -362,8 +434,12 @@
 		my $license_text = $1;
 		my @phrases      = (
 			'under the same (?:terms|license) as perl itself' => 'perl',        1,
+			'GNU general public license'                      => 'gpl',         1,
 			'GNU public license'                              => 'gpl',         1,
+			'GNU lesser general public license'               => 'lgpl',        1,
 			'GNU lesser public license'                       => 'lgpl',        1,
+			'GNU library general public license'              => 'lgpl',        1,
+			'GNU library public license'                      => 'lgpl',        1,
 			'BSD license'                                     => 'bsd',         1,
 			'Artistic license'                                => 'artistic',    1,
 			'GPL'                                             => 'gpl',         1,
@@ -376,9 +452,6 @@
 		while ( my ($pattern, $license, $osi) = splice(@phrases, 0, 3) ) {
 			$pattern =~ s{\s+}{\\s+}g;
 			if ( $license_text =~ /\b$pattern\b/i ) {
-				if ( $osi and $license_text =~ /All rights reserved/i ) {
-					print "WARNING: 'All rights reserved' in copyright may invalidate Open Source license.\n";
-				}
 				$self->license($license);
 				return 1;
 			}
@@ -389,19 +462,22 @@
 	return 'unknown';
 }
 
-sub install_script {
-	my $self = shift;
-	my $args = $self->makemaker_args;
-	my $exe  = $args->{EXE_FILES} ||= [];
-        foreach ( @_ ) {
-		if ( -f $_ ) {
-			push @$exe, $_;
-		} elsif ( -d 'script' and -f "script/$_" ) {
-			push @$exe, "script/$_";
-		} else {
-			die "Cannot find script '$_'";
-		}
-	}
+sub bugtracker_from {
+	my $self    = shift;
+	my $content = Module::Install::_read($_[0]);
+	my @links   = $content =~ m/L\<(http\:\/\/rt\.cpan\.org\/[^>]+)\>/g;
+	unless ( @links ) {
+		warn "Cannot determine bugtracker info from $_[0]\n";
+		return 0;
+	}
+	if ( @links > 1 ) {
+		warn "Found more than on rt.cpan.org link in $_[0]\n";
+		return 0;
+	}
+
+	# Set the bugtracker
+	bugtracker( $links[0] );
+	return 1;
 }
 
 1;

Modified: trunk/libpoe-component-pluggable-perl/inc/Module/Install/Win32.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/inc/Module/Install/Win32.pm?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/inc/Module/Install/Win32.pm (original)
+++ trunk/libpoe-component-pluggable-perl/inc/Module/Install/Win32.pm Tue Jan 27 03:24:44 2009
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.75';
+	$VERSION = '0.78';
 	@ISA     = qw{Module::Install::Base};
 	$ISCORE  = 1;
 }

Modified: trunk/libpoe-component-pluggable-perl/inc/Module/Install/WriteAll.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/inc/Module/Install/WriteAll.pm?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/inc/Module/Install/WriteAll.pm (original)
+++ trunk/libpoe-component-pluggable-perl/inc/Module/Install/WriteAll.pm Tue Jan 27 03:24:44 2009
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.75';
+	$VERSION = '0.78';
 	@ISA     = qw{Module::Install::Base};
 	$ISCORE  = 1;
 }

Modified: trunk/libpoe-component-pluggable-perl/lib/POE/Component/Pluggable.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/lib/POE/Component/Pluggable.pm?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/lib/POE/Component/Pluggable.pm (original)
+++ trunk/libpoe-component-pluggable-perl/lib/POE/Component/Pluggable.pm Tue Jan 27 03:24:44 2009
@@ -7,7 +7,7 @@
 use POE::Component::Pluggable::Constants qw(:ALL);
 use vars qw($VERSION);
 
-$VERSION='1.10';
+$VERSION='1.14';
 
 sub _pluggable_init {
   my ($self, %opts) = @_;
@@ -53,6 +53,10 @@
 
   if ( $self->can($sub) ) {
     eval { $self_ret = $self->$sub( $self, @args ) };
+    warn "$@" if $@;
+  }
+  elsif ( $self->can('_default') ) {
+    eval { $self_ret = $self->_default( $self, $sub, @args ) };
     warn "$@" if $@;
   }
 

Modified: trunk/libpoe-component-pluggable-perl/lib/POE/Component/Pluggable/Pipeline.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libpoe-component-pluggable-perl/lib/POE/Component/Pluggable/Pipeline.pm?rev=30144&op=diff
==============================================================================
--- trunk/libpoe-component-pluggable-perl/lib/POE/Component/Pluggable/Pipeline.pm (original)
+++ trunk/libpoe-component-pluggable-perl/lib/POE/Component/Pluggable/Pipeline.pm Tue Jan 27 03:24:44 2009
@@ -3,12 +3,15 @@
 use strict;
 use warnings;
 use Carp;
+use Scalar::Util qw(weaken);
 use vars qw($VERSION);
 
-$VERSION = '1.10';
+$VERSION = '1.12';
 
 sub new {
   my ($package, $pluggable) = @_;
+
+  weaken( $pluggable );
 
   return bless {
     PLUGS => {},
@@ -29,7 +32,8 @@
     push @{ $self->{PIPELINE} }, $plug;
     $self->{PLUGS}{$alias} = $plug;
     $self->{PLUGS}{$plug} = $alias;
-    $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_add" => $alias => $plug);
+    $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_add" => $alias => $plug)
+	if defined $self->{OBJECT};
     return scalar @{ $self->{PIPELINE} };
   }
   else { return }
@@ -46,7 +50,8 @@
   delete $self->{HANDLES}{$plug};
 
   $self->_unregister($alias, $plug);
-  $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_del" => $alias => $plug);
+  $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_del" => $alias => $plug)
+	if defined $self->{OBJECT};
 
   return wantarray ? ($plug, $alias) : $plug;
 }
@@ -62,7 +67,9 @@
     unshift @{ $self->{PIPELINE} }, $plug;
     $self->{PLUGS}{$alias} = $plug;
     $self->{PLUGS}{$plug} = $alias;
-    $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_add" => $alias => $plug);
+    $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_add" => $alias => $plug)
+	if defined $self->{OBJECT};
+
     return scalar @{ $self->{PIPELINE} };
   }
   else { return }
@@ -81,7 +88,8 @@
   delete $self->{HANDLES}{$plug};
 
   $self->_unregister($alias, $plug);
-  $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_del" => $alias => $plug);
+  $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_del" => $alias => $plug)
+	if defined $self->{OBJECT};
 
   return wantarray ? ($plug, $alias) : $plug;
 }
@@ -100,7 +108,8 @@
   delete $self->{HANDLES}{$old_p};
   
   $self->_unregister($old_a, $old_p);
-  $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_del" => $old_a => $old_p);
+  $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_del" => $old_a => $old_p)
+	if defined $self->{OBJECT};
 
   $@ = "Plugin named '$new_a' already exists ($self->{PLUGS}{$new_a}", return
     if $self->{PLUGS}{$new_a};
@@ -115,7 +124,8 @@
       $_ = $new_p, last if $_ == $old_p;
     }
 
-    $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_add" => $new_a => $new_p);
+    $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_add" => $new_a => $new_p)
+	if defined $self->{OBJECT};
     return 1;
   }
   else { return }
@@ -142,7 +152,8 @@
   }
 
   $self->_unregister($old_a, $old_p);
-  $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_del" => $old_a => $old_p);
+  $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_del" => $old_a => $old_p)
+	if defined $self->{OBJECT};
 
   return wantarray ? ($old_p, $old_a) : $old_p;
 }
@@ -200,7 +211,8 @@
       ++$i;
     }
 
-    $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_add" => $new_a => $new_p);
+    $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_add" => $new_a => $new_p)
+	if defined $self->{OBJECT};
     return 1;
   }
   else { return }
@@ -231,7 +243,8 @@
       ++$i;
     }
 
-    $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_add" => $new_a => $new_p);
+    $self->{OBJECT}->_pluggable_event("$self->{OBJECT}->{_pluggable_prefix}plugin_add" => $new_a => $new_p)
+	if defined $self->{OBJECT};
     return 1;
   }
   else { return }
@@ -277,6 +290,7 @@
 
 sub _register {
   my ($self, $alias, $plug) = @_;
+  return unless defined $self->{OBJECT};
 
   my $return;
   my $sub = "$self->{OBJECT}->{_pluggable_reg_prefix}register";
@@ -288,6 +302,7 @@
 
 sub _unregister {
   my ($self, $alias, $plug) = @_;
+  return unless defined $self->{OBJECT};
 
   my $return;
   my $sub = "$self->{OBJECT}->{_pluggable_reg_prefix}unregister";




More information about the Pkg-perl-cvs-commits mailing list