r26239 - in /trunk/libmodule-scandeps-perl: ./ debian/ debian/patches/ inc/Module/ inc/Module/Install/ lib/Module/ script/ t/

ansgar-guest at users.alioth.debian.org ansgar-guest at users.alioth.debian.org
Sat Oct 25 17:24:52 UTC 2008


Author: ansgar-guest
Date: Sat Oct 25 17:24:49 2008
New Revision: 26239

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=26239
Log:
* New upstream release.
* Refresh patch.
* Add myself to Uploaders.
* Convert debian/copyright to proposed machine-readable format.
  Copyright holders for debian/* are taken from the changelog.
* debian/control: Fix Homepage field.
* Build-depend on libprefork-perl to enable an additional test.
* Refresh debian/rules for debhelper 7.
* Bump Standards Version to 3.8.0 (no changes)

Added:
    trunk/libmodule-scandeps-perl/t/13-static_prefork_test.t
      - copied unchanged from r26235, branches/upstream/libmodule-scandeps-perl/current/t/13-static_prefork_test.t
Modified:
    trunk/libmodule-scandeps-perl/AUTHORS
    trunk/libmodule-scandeps-perl/Changes
    trunk/libmodule-scandeps-perl/MANIFEST
    trunk/libmodule-scandeps-perl/META.yml
    trunk/libmodule-scandeps-perl/debian/changelog
    trunk/libmodule-scandeps-perl/debian/compat
    trunk/libmodule-scandeps-perl/debian/control
    trunk/libmodule-scandeps-perl/debian/copyright
    trunk/libmodule-scandeps-perl/debian/patches/fix_references_to_renamed_executable
    trunk/libmodule-scandeps-perl/debian/rules
    trunk/libmodule-scandeps-perl/inc/Module/Install.pm
    trunk/libmodule-scandeps-perl/inc/Module/Install/Base.pm
    trunk/libmodule-scandeps-perl/inc/Module/Install/Can.pm
    trunk/libmodule-scandeps-perl/inc/Module/Install/Fetch.pm
    trunk/libmodule-scandeps-perl/inc/Module/Install/Makefile.pm
    trunk/libmodule-scandeps-perl/inc/Module/Install/Metadata.pm
    trunk/libmodule-scandeps-perl/inc/Module/Install/Win32.pm
    trunk/libmodule-scandeps-perl/inc/Module/Install/WriteAll.pm
    trunk/libmodule-scandeps-perl/lib/Module/ScanDeps.pm
    trunk/libmodule-scandeps-perl/script/scandeps.pl

Modified: trunk/libmodule-scandeps-perl/AUTHORS
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/AUTHORS?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/AUTHORS (original)
+++ trunk/libmodule-scandeps-perl/AUTHORS Sat Oct 25 17:24:49 2008
@@ -29,6 +29,7 @@
 Jouke Visser                  (JOUKE)
 Malcolm Nooning
 Marcus Rueckert
+Mark Stosberg                 (MARKSTOS)
 Markus Jansen
 Matt S Trout                  (MSTROUT)
 Matt Sergeant                 (MSERGEANT)

Modified: trunk/libmodule-scandeps-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/Changes?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/Changes (original)
+++ trunk/libmodule-scandeps-perl/Changes Sat Oct 25 17:24:49 2008
@@ -1,3 +1,17 @@
+[Changes for 0.86 - 2008-10-23]
+* Fix the 'use prefork "Foo"' static detection.
+* Fix the detection of any of the module-loader modules such as
+  prefork, autouse, etc. if invoked as 'use prefork"Foo"' (note
+  the lack of a space).
+* Slightly refactor the loader-module scanning. (see above)
+* Support for "use maybe 'foo';"
+* Use (arch|priv)libexp instead of (arch|priv)lib
+  in scandeps.pl (Mark Stosberg)
+* Update to Module::Install 0.77
+
+[Changes for 0.85 - 2008-08-01]
+* Add special case for Net::Server.
+
 [Changes for 0.84 - 2008-05-13]
 * Add special case for Class::MethodMaker.
 

Modified: trunk/libmodule-scandeps-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/MANIFEST?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/MANIFEST (original)
+++ trunk/libmodule-scandeps-perl/MANIFEST Sat Oct 25 17:24:49 2008
@@ -8,6 +8,7 @@
 inc/Module/Install/Metadata.pm
 inc/Module/Install/Win32.pm
 inc/Module/Install/WriteAll.pm
+lib/Module/.ScanDeps.pm.swp
 lib/Module/ScanDeps.pm
 lib/Module/ScanDeps/DataFeed.pm
 Makefile.PL
@@ -20,6 +21,7 @@
 t/10-case-insensitive-keys.t
 t/11-finds-shared-lib.t
 t/12-ScanFileRE.t
+t/13-static_prefork_test.t
 t/2-static_functional_interface_fake.t
 t/3-static_oo_interface_real.t
 t/4-static_functional_interface_options_fake.t

Modified: trunk/libmodule-scandeps-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/META.yml?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/META.yml (original)
+++ trunk/libmodule-scandeps-perl/META.yml Sat Oct 25 17:24:49 2008
@@ -5,11 +5,11 @@
 build_requires:
   Test::More: 0
 distribution_type: module
-generated_by: 'Module::Install version 0.72'
+generated_by: 'Module::Install version 0.77'
 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: Module-ScanDeps
 no_index:
   directory:
@@ -21,4 +21,6 @@
   Module::Build::ModuleInfo: 0
   perl: 5.6.0
   version: 0
-version: 0.84
+resources:
+  license: http://dev.perl.org/licenses/
+version: 0.86

Modified: trunk/libmodule-scandeps-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/debian/changelog?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/debian/changelog (original)
+++ trunk/libmodule-scandeps-perl/debian/changelog Sat Oct 25 17:24:49 2008
@@ -1,9 +1,21 @@
-libmodule-scandeps-perl (0.84-2) UNRELEASED; urgency=low
+libmodule-scandeps-perl (0.86-1) unstable; urgency=low
 
+  [ gregor herrmann ]
   * Add debian/README.source to document quilt usage, as required by
     Debian Policy since 3.8.0.
 
- -- gregor herrmann <gregoa at debian.org>  Wed, 06 Aug 2008 21:33:53 -0300
+  [ Ansgar Burchardt ]
+  * New upstream release.
+  * Refresh patch.
+  * Add myself to Uploaders.
+  * Convert debian/copyright to proposed machine-readable format.
+    Copyright holders for debian/* are taken from the changelog.
+  * debian/control: Fix Homepage field.
+  * Build-depend on libprefork-perl to enable an additional test.
+  * Refresh debian/rules for debhelper 7.
+  * Bump Standards Version to 3.8.0 (no changes)
+
+ -- Ansgar Burchardt <ansgar at 43-1.org>  Sat, 25 Oct 2008 19:24:28 +0200
 
 libmodule-scandeps-perl (0.84-1) unstable; urgency=low
 

Modified: trunk/libmodule-scandeps-perl/debian/compat
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/debian/compat?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/debian/compat (original)
+++ trunk/libmodule-scandeps-perl/debian/compat Sat Oct 25 17:24:49 2008
@@ -1,1 +1,1 @@
-5
+7

Modified: trunk/libmodule-scandeps-perl/debian/control
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/debian/control?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/debian/control (original)
+++ trunk/libmodule-scandeps-perl/debian/control Sat Oct 25 17:24:49 2008
@@ -1,23 +1,23 @@
 Source: libmodule-scandeps-perl
 Section: perl
 Priority: optional
-Build-Depends: debhelper (>= 5), quilt (>= 0.40)
+Build-Depends: debhelper (>= 7), quilt (>= 0.40)
 Build-Depends-Indep: perl (>= 5.8.0-7), perl-modules (>= 5.10.0) |
  libmodule-build-perl (>= 0.28), libversion-perl, libtest-pod-perl,
- libmodule-pluggable-perl
+ libmodule-pluggable-perl, libprefork-perl
 Uploaders: Florian Ragwitz <rafl at debian.org>, Gunnar Wolf <gwolf at debian.org>,
  Krzysztof Krzyzaniak (eloy) <eloy at debian.org>,
- gregor herrmann <gregoa at debian.org>
+ gregor herrmann <gregoa at debian.org>, Ansgar Burchardt <ansgar at 43-1.org>
 Maintainer: Debian Perl Group <pkg-perl-maintainers at lists.alioth.debian.org>
-Homepage: http://search.cpan.org/dist/Module::ScanDeps/
+Homepage: http://search.cpan.org/dist/Module-ScanDeps/
 Vcs-Svn: svn://svn.debian.org/pkg-perl/trunk/libmodule-scandeps-perl/
 Vcs-Browser: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/
-Standards-Version: 3.7.3
+Standards-Version: 3.8.0
 
 Package: libmodule-scandeps-perl
 Architecture: all
 Depends: ${perl:Depends}, perl-modules (>= 5.10.0) | libmodule-build-perl (>= 0.28),
  libversion-perl
-Description: perl module to recursively scan Perl code for dependencies
+Description: Perl module to recursively scan Perl code for dependencies
  Module::ScanDeps scans potential modules used by perl programs and returns
  informations about their module dependencies.

Modified: trunk/libmodule-scandeps-perl/debian/copyright
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/debian/copyright?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/debian/copyright (original)
+++ trunk/libmodule-scandeps-perl/debian/copyright Sat Oct 25 17:24:49 2008
@@ -1,16 +1,35 @@
-This package was debianized by Florian Ragwitz <rafl at debian.org> on
-Tue, 01 Nov 2005 17:59:34 +0100.
+Format-Specification: http://wiki.debian.org/Proposals/CopyrightFormat?action=recall&rev=228
+Upstream-Name: Module-ScanDeps
+Upstream-Maintainer: Steffen Müller
+Upstream-Source: http://search.cpan.org/dist/Module-ScanDeps/
 
-The upstream author is: Autrijus Tang <autrijus at autrijus.org>
+Files: *
+Copyright:
+ © 2002-2008, Audrey Tang <autrijus at autrijus.org>
+ © 2005-2008, Steffen Mueller <smueller at cpan.org>
+License: GPL-1+ | Artistic
+ All rights reserved. You can redistribute and/or modify this bundle under the
+ same terms as Perl itself.
+ .
+ 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'.
 
-Upstream source location: http://search.cpan.org/dist/Module-ScanDeps/
+Files: inc/*
+Copyright: © 2002-2008, Brian Ingerson, Audrey Tang and Adam Kennedy.
+License: GPL-1+ | Artistic
+ This program is free software; you can redistribute it and/or modify it under
+ the same terms as Perl itself.
 
-Copyright 2002-2008 by Autrijus Tang <autrijus at autrijus.org>.
+Files: debian/*
+Copyright:
+ © 2005-2006, Florian Ragwitz <rafl at debian.org>
+ © 2007-2008, Krzysztof Krzyzaniak (eloy) <eloy at debian.org>
+ © 2008,      Gunnar Wolf <gwolf at debian.org>
+ © 2008,      gregor herrmann <gregoa at debian.org>
+ © 2008,      Ansgar Burchardt <ansgar at 43-1.org>
+License: GPL-1+ | Artistic
+ It is assumed that all contributors put their work under the same license
+ as the module itself.
 
-This program is free software; you can redistribute it and/or modify it
-under the same terms as Perl itself.
-
-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'.

Modified: trunk/libmodule-scandeps-perl/debian/patches/fix_references_to_renamed_executable
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/debian/patches/fix_references_to_renamed_executable?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/debian/patches/fix_references_to_renamed_executable (original)
+++ trunk/libmodule-scandeps-perl/debian/patches/fix_references_to_renamed_executable Sat Oct 25 17:24:49 2008
@@ -1,6 +1,6 @@
---- a/lib/Module/ScanDeps.pm
-+++ b/lib/Module/ScanDeps.pm
-@@ -36,12 +36,12 @@ Module::ScanDeps - Recursively scan Perl
+--- libmodule-scandeps-perl.orig/lib/Module/ScanDeps.pm
++++ libmodule-scandeps-perl/lib/Module/ScanDeps.pm
+@@ -36,12 +36,12 @@
  
  =head1 SYNOPSIS
  
@@ -18,7 +18,7 @@
  
  Used in a program;
  
-@@ -1275,7 +1275,7 @@ __END__
+@@ -1281,7 +1281,7 @@
  
  =head1 SEE ALSO
  
@@ -27,9 +27,9 @@
  for a number of files.
  
  An application of B<Module::ScanDeps> is to generate executables from
---- a/script/scandeps.pl
-+++ b/script/scandeps.pl
-@@ -135,18 +135,18 @@ __END__
+--- libmodule-scandeps-perl.orig/script/scandeps.pl
++++ libmodule-scandeps-perl/script/scandeps.pl
+@@ -135,18 +135,18 @@
  
  =head1 NAME
  

Modified: trunk/libmodule-scandeps-perl/debian/rules
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/debian/rules?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/debian/rules (original)
+++ trunk/libmodule-scandeps-perl/debian/rules Sat Oct 25 17:24:49 2008
@@ -1,67 +1,39 @@
 #!/usr/bin/make -f
-# This debian/rules file is provided as a template for normal perl
-# packages. It was created by Marc Brockschmidt <marc at dch-faq.de> for
-# the Debian Perl Group (http://pkg-perl.alioth.debian.org/) but may
-# be used freely wherever it is useful.
-
-# 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
 
 include /usr/share/quilt/quilt.make
 
-PERL   ?= /usr/bin/perl
-PACKAGE = $(shell dh_listpackages)
-TMP     = $(CURDIR)/debian/$(PACKAGE)
+TMP=$(CURDIR)/debian/libmodule-scandeps-perl
 
 build: build-stamp
 build-stamp: $(QUILT_STAMPFN)
-	dh_testdir
-	$(PERL) Makefile.PL INSTALLDIRS=vendor
-	$(MAKE)
-	$(MAKE) test
+	dh build
 	touch $@
 
 clean: unpatch
-	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 --before dh_compress
+
 	# no extensions in PATH
 	[ ! -f $(TMP)/usr/bin/scandeps.pl ] || \
 		mv $(TMP)/usr/bin/scandeps.pl $(TMP)/usr/bin/scandeps
 	[ ! -f $(TMP)/usr/share/man/man1/scandeps.pl.1p ] || \
 		mv $(TMP)/usr/share/man/man1/scandeps.pl.1p $(TMP)/usr/share/man/man1/scandeps.1p
+
+	# 0.86 ships with temporary files
+	rm -f $(TMP)/usr/share/perl5/Module/.ScanDeps.pm.swp
+
+	dh install --remaining
+
 	touch $@
 
 binary-arch:
-# We have nothing to do here for an architecture-independent package
 
-binary-indep: build install
-	dh_testdir
-	dh_testroot
-	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/libmodule-scandeps-perl/inc/Module/Install.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/inc/Module/Install.pm?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/inc/Module/Install.pm (original)
+++ trunk/libmodule-scandeps-perl/inc/Module/Install.pm Sat Oct 25 17:24:49 2008
@@ -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.72';
+	$VERSION = '0.77';
 
 	*inc::Module::Install::VERSION = *VERSION;
 	@inc::Module::Install::ISA     = __PACKAGE__;
@@ -85,7 +85,7 @@
 
 # Build.PL was formerly supported, but no longer is due to excessive
 # difficulty in implementing every single feature twice.
-if ( $0 =~ /Build.PL$/i or -f 'Build.PL' ) { die <<"END_DIE" }
+if ( $0 =~ /Build.PL$/i ) { die <<"END_DIE" }
 
 Module::Install no longer supports Build.PL.
 
@@ -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')};
+		}
 	};
 }
 
@@ -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.

Modified: trunk/libmodule-scandeps-perl/inc/Module/Install/Base.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/inc/Module/Install/Base.pm?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/inc/Module/Install/Base.pm (original)
+++ trunk/libmodule-scandeps-perl/inc/Module/Install/Base.pm Sat Oct 25 17:24:49 2008
@@ -1,7 +1,7 @@
 #line 1
 package Module::Install::Base;
 
-$VERSION = '0.72';
+$VERSION = '0.77';
 
 # 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/libmodule-scandeps-perl/inc/Module/Install/Can.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/inc/Module/Install/Can.pm?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/inc/Module/Install/Can.pm (original)
+++ trunk/libmodule-scandeps-perl/inc/Module/Install/Can.pm Sat Oct 25 17:24:49 2008
@@ -11,7 +11,7 @@
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.72';
+	$VERSION = '0.77';
 	$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/libmodule-scandeps-perl/inc/Module/Install/Fetch.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/inc/Module/Install/Fetch.pm?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/inc/Module/Install/Fetch.pm (original)
+++ trunk/libmodule-scandeps-perl/inc/Module/Install/Fetch.pm Sat Oct 25 17:24:49 2008
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.72';
+	$VERSION = '0.77';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }

Modified: trunk/libmodule-scandeps-perl/inc/Module/Install/Makefile.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/inc/Module/Install/Makefile.pm?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/inc/Module/Install/Makefile.pm (original)
+++ trunk/libmodule-scandeps-perl/inc/Module/Install/Makefile.pm Sat Oct 25 17:24:49 2008
@@ -7,7 +7,7 @@
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.72';
+	$VERSION = '0.77';
 	$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,
@@ -116,7 +116,13 @@
 
 	# Make sure we have a new enough
 	require ExtUtils::MakeMaker;
-	$self->configure_requires( 'ExtUtils::MakeMaker' => $ExtUtils::MakeMaker::VERSION );
+
+	# 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;
@@ -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);
@@ -242,4 +250,4 @@
 
 __END__
 
-#line 371
+#line 379

Modified: trunk/libmodule-scandeps-perl/inc/Module/Install/Metadata.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/inc/Module/Install/Metadata.pm?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/inc/Module/Install/Metadata.pm (original)
+++ trunk/libmodule-scandeps-perl/inc/Module/Install/Metadata.pm Sat Oct 25 17:24:49 2008
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.72';
+	$VERSION = '0.77';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -17,9 +17,7 @@
 	abstract
 	author
 	version
-	license
 	distribution_type
-	perl_version
 	tests
 	installdirs
 };
@@ -30,13 +28,21 @@
 	requires
 	recommends
 	bundles
+	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 !@_;
@@ -45,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};
 }
@@ -60,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};
 }
@@ -70,7 +94,7 @@
 	while ( @_ ) {
 		my $module  = shift or last;
 		my $version = shift || 0;
-		push @{ $self->{values}->{configure_requires} }, [ $module, $version ];
+		push @{ $self->{values}{configure_requires} }, [ $module, $version ];
 	}
 	$self->{values}{configure_requires};
 }
@@ -80,7 +104,7 @@
 	while ( @_ ) {
 		my $module  = shift or last;
 		my $version = shift || 0;
-		push @{ $self->{values}->{recommends} }, [ $module, $version ];
+		push @{ $self->{values}{recommends} }, [ $module, $version ];
 	}
 	$self->{values}{recommends};
 }
@@ -90,9 +114,31 @@
 	while ( @_ ) {
 		my $module  = shift or last;
 		my $version = shift || 0;
-		push @{ $self->{values}->{bundles} }, [ $module, $version ];
+		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 $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
@@ -108,30 +154,73 @@
 
 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).
+
+	$version =~ s/^(\d+)\.(\d+)\.(\d+)$/sprintf("%d.%03d%03d",$1,$2,$3)/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.
@@ -210,8 +299,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} }
 		: ();
 }
 
@@ -267,22 +356,25 @@
 	 );
 }
 
+# Add both distribution and module name
 sub name_from {
-	my $self = shift;
+	my ($self, $file) = @_;
 	if (
-		Module::Install::_read($_[0]) =~ m/
+		Module::Install::_read($file) =~ m/
 		^ \s*
 		package \s*
 		([\w:]+)
 		\s* ;
 		/ixms
 	) {
-		my $name = $1;
+		my ($name, $module_name) = ($1, $1);
 		$name =~ s{::}{-}g;
 		$self->name($name);
+		unless ( $self->module_name ) {
+			$self->module_name($module_name);
+		}
 	} else {
-		die "Cannot determine name from $_[0]\n";
-		return;
+		die("Cannot determine name from $file\n");
 	}
 }
 
@@ -291,7 +383,7 @@
 	if (
 		Module::Install::_read($_[0]) =~ m/
 		^
-		use \s*
+		(?:use|require) \s*
 		v?
 		([\d_\.]+)
 		\s* ;
@@ -341,8 +433,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,
@@ -356,7 +452,7 @@
 			$pattern =~ s{\s+}{\\s+}g;
 			if ( $license_text =~ /\b$pattern\b/i ) {
 				if ( $osi and $license_text =~ /All rights reserved/i ) {
-					warn "LEGAL WARNING: 'All rights reserved' may invalidate Open Source licenses. Consider removing it.";
+					print "WARNING: 'All rights reserved' in copyright may invalidate Open Source license.\n";
 				}
 				$self->license($license);
 				return 1;
@@ -366,6 +462,24 @@
 
 	warn "Cannot determine license info from $_[0]\n";
 	return 'unknown';
+}
+
+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;
 }
 
 sub install_script {
@@ -378,7 +492,7 @@
 		} elsif ( -d 'script' and -f "script/$_" ) {
 			push @$exe, "script/$_";
 		} else {
-			die "Cannot find script '$_'";
+			die("Cannot find script '$_'");
 		}
 	}
 }

Modified: trunk/libmodule-scandeps-perl/inc/Module/Install/Win32.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/inc/Module/Install/Win32.pm?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/inc/Module/Install/Win32.pm (original)
+++ trunk/libmodule-scandeps-perl/inc/Module/Install/Win32.pm Sat Oct 25 17:24:49 2008
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.72';
+	$VERSION = '0.77';
 	@ISA     = qw{Module::Install::Base};
 	$ISCORE  = 1;
 }

Modified: trunk/libmodule-scandeps-perl/inc/Module/Install/WriteAll.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/inc/Module/Install/WriteAll.pm?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/inc/Module/Install/WriteAll.pm (original)
+++ trunk/libmodule-scandeps-perl/inc/Module/Install/WriteAll.pm Sat Oct 25 17:24:49 2008
@@ -6,7 +6,7 @@
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.72';
+	$VERSION = '0.77';
 	@ISA     = qw{Module::Install::Base};
 	$ISCORE  = 1;
 }

Modified: trunk/libmodule-scandeps-perl/lib/Module/ScanDeps.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/lib/Module/ScanDeps.pm?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/lib/Module/ScanDeps.pm (original)
+++ trunk/libmodule-scandeps-perl/lib/Module/ScanDeps.pm Sat Oct 25 17:24:49 2008
@@ -4,7 +4,7 @@
 use strict;
 use vars qw( $VERSION @EXPORT @EXPORT_OK $CurrentPackage @IncludeLibs $ScanFileRE );
 
-$VERSION   = '0.84';
+$VERSION   = '0.86';
 @EXPORT    = qw( scan_deps scan_deps_runtime );
 @EXPORT_OK = qw( scan_line scan_chunk add_deps scan_deps_runtime path_to_inc_name );
 
@@ -330,6 +330,7 @@
     'MIME/Decoder.pm'               => 'sub',
     'Net/DNS/RR.pm'                 => 'sub',
     'Net/FTP.pm'                    => 'sub',
+    'Net/Server.pm'                 => 'sub',
     'Net/SSH/Perl.pm'               => 'sub',
     'PDF/API2/Resource/Font.pm'     => 'sub',
     'PDF/API2/Basic/TTF/Font.pm'    => sub {
@@ -340,10 +341,10 @@
         POE/Kernel.pm POE/Session.pm
     ) ],
     'POE/Kernel.pm'                    => sub {
-	_glob_in_inc('POE/XS/Resource', 1),
-	_glob_in_inc('POE/Resource', 1),
-	_glob_in_inc('POE/XS/Loop', 1),
-	_glob_in_inc('POE/Loop', 1),
+        _glob_in_inc('POE/XS/Resource', 1),
+        _glob_in_inc('POE/Resource', 1),
+        _glob_in_inc('POE/XS/Loop', 1),
+        _glob_in_inc('POE/Loop', 1),
     },
     'Parse/AFP.pm'                  => 'sub',
     'Parse/Binary.pm'               => 'sub',
@@ -370,7 +371,7 @@
     },
     'Template.pm'      => 'sub',
     'Term/ReadLine.pm' => 'sub',
-	'Test/Deep.pm'     => 'sub',
+    'Test/Deep.pm'     => 'sub',
     'Tk.pm'            => sub {
         $SeenTk = 1;
         qw( Tk/FileSelect.pm Encode/Unicode.pm );
@@ -435,8 +436,8 @@
         return 'pod/perldiag.pod';
     },
     'threads/shared.pm' => [qw( attributes.pm )],
-    	# anybody using threads::shared is likely to declare variables
-	# with attribute :shared
+    # anybody using threads::shared is likely to declare variables
+    # with attribute :shared
     'utf8.pm' => [
         'utf8_heavy.pl', do {
             my $dir = 'unicore';
@@ -709,7 +710,7 @@
           }
         }
 
-        if (my ($autouse) = /^\s*use\s+autouse\s+(["'].*?["']|\w+)/)	
+        if (my ($autouse) = /^\s*use\s+autouse\s+(["'].*?["']|\w+)/)
         {
             $autouse =~ s/["']//g;
             $autouse =~ s{::}{/}g;
@@ -734,6 +735,25 @@
     return sort keys %found;
 }
 
+# short helper for scan_chunk
+sub _typical_module_loader_chunk {
+  local $_ = shift;
+  my $loader = shift;
+  my $loader_file = $loader;
+  $loader_file =~ s/::/\//;
+  $loader_file .= ".pm";
+  $loader = quotemeta($loader);
+
+  if (/^\s* use \s+ $loader \b \s* (.*)/sx) {
+    return [
+      $loader_file,
+      map { s{::}{/}g; "$_.pm" }
+      grep { length and !/^q[qw]?$/ } split(/[^\w:]+/, $1)
+    ];
+  }
+  return();
+}
+
 sub scan_chunk {
     my $chunk = shift;
 
@@ -741,31 +761,18 @@
     my $module = eval {
         $_ = $chunk;
 
-        return [ 'base.pm',
-            map { s{::}{/}g; "$_.pm" }
-              grep { length and !/^q[qw]?$/ } split(/[^\w:]+/, $1) ]
-          if /^\s* use \s+ base \s+ (.*)/sx;
-
-        return [ 'prefork.pm',
-            map { s{::}{/}g; "$_.pm" }
-              grep { length and !/^q[qw]?$/ } split(/[^\w:]+/, $1) ]
-
-          if /^\s* use \s+ base \s+ (.*)/sx;
+        # TODO: There's many more of these "loader" type modules on CPAN!
+        # scan for the typical module-loader modules
+        foreach my $loader (qw(base prefork POE encoding maybe)) {
+          my $retval = _typical_module_loader_chunk($_, $loader);
+          return $retval if $retval;
+        }
+
         return [ 'Class/Autouse.pm',
             map { s{::}{/}g; "$_.pm" }
               grep { length and !/^:|^q[qw]?$/ } split(/[^\w:]+/, $1) ]
-          if /^\s* use \s+ Class::Autouse \s+ (.*)/sx
+          if /^\s* use \s+ Class::Autouse \b \s* (.*)/sx
               or /^\s* Class::Autouse \s* -> \s* autouse \s* (.*)/sx;
-
-        return [ 'POE.pm',
-            map { s{::}{/}g; "POE/$_.pm" }
-              grep { length and !/^q[qw]?$/ } split(/[^\w:]+/, $1) ]
-          if /^\s* use \s+ POE \s+ (.*)/sx;
-
-        return [ 'encoding.pm',
-            map { _find_encoding($_) }
-              grep { length and !/^q[qw]?$/ } split(/[^\w:-]+/, $1) ]
-          if /^\s* use \s+ encoding \s+ (.*)/sx;
 
         return $1 if /(?:^|\s)(?:use|no|require)\s+([\w:\.\-\\\/\"\']+)/;
         return $1
@@ -928,8 +935,7 @@
                            type   => $type );
             }
         }
-    }
-
+    } # end for modules
     return $rv;
 }
 

Modified: trunk/libmodule-scandeps-perl/script/scandeps.pl
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libmodule-scandeps-perl/script/scandeps.pl?rev=26239&op=diff
==============================================================================
--- trunk/libmodule-scandeps-perl/script/scandeps.pl (original)
+++ trunk/libmodule-scandeps-perl/script/scandeps.pl Sat Oct 25 17:24:49 2008
@@ -63,8 +63,8 @@
 
     next if $skip{$name};
 
-    my $privPath = "$Config::Config{privlib}/$key";
-    my $archPath = "$Config::Config{archlib}/$key";
+    my $privPath = "$Config::Config{privlibexp}/$key";
+    my $archPath = "$Config::Config{archlibexp}/$key";
     $privPath =~ s|\\|\/|og;
     $archPath =~ s|\\|\/|og;
     if ($mod->{file} eq $privPath




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