Bug#585755: dh-make-perl fails to notice "Config" as a core module

Chris Butler chrisb at debian.org
Sun Jun 13 15:33:34 UTC 2010


Package: dh-make-perl
Version: 0.68-1
Severity: normal

When refreshing the packaging for libnet-ident-perl, dh-make-perl failed to
find the "Config" module anywhere:

chrisb at crispylappy:~/src/Packages/pkg-perl/libnet-ident-perl$ dh-make-perl-dev refresh --pkg-perl --source-format '3.0 (quilt)'
Engaging refresh mode in .
Found: Net-Ident 1.22 (libnet-ident-perl arch=all)
Found docs: README debian/TODO.Debian
debian/rules already uses DH7 tiny rules
W: overwriting debian/copyright.bak
Using cached Contents from Mon May 31 15:40:36 2010
= Fcntl  is in core
= vars  is in core
= Socket  is in core
= FileHandle  is in core
= Exporter  is in core
- Config  not found in any package
Going to read '/home/chrisb/.cpan/Metadata'
  Database was generated on Sun, 13 Jun 2010 14:27:40 GMT
   - it seems it is not available even via CPAN
= Carp  is in core

Needs the following debian packages: perl
= IO::Socket  is in core
= ExtUtils::MakeMaker  is in core

Needs the following debian packages during building: perl
Needs the following modules for which there are no debian packages available:
 - Config
W: overwriting debian/control.bak
--- Done

However, the Config module is included in perl core (in the perl-base
package).

I think the problem is that Module::CoreList does include 'Config', but not
its version number (it's in the version hash as "undef"), which indicates
that module is present in that perl version, but the version number is not
known/specified.

Interestingly, DhMakePerl::Utils::is_core_module correctly returns the perl
version that includes the module, but "core_module_perls" returns an empty
result.

The attached patch (against current SVN) fixes the problem, by only
performing a version check if the version passed into core_module_perls is
defined and non-zero (previously it was checking the version iff it was
defined).

In addition, I had to make core_module_perls skip over a version key in
Module::CoreList::version if it was simply a "family" entry (i.e. "5")
rather than a full version entry, otherwise find_core_perl_dependency died
complaining about a strange version.

-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-4-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_GB.UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages dh-make-perl depends on:
ii  debhelper                     7.4.20     helper programs for debian/rules
ii  dpkg-dev                      1.15.7.2   Debian package development tools
ii  fakeroot                      1.14.4-1   Gives a fake root environment
ii  libapt-pkg-perl               0.1.24     Perl interface to libapt-pkg
ii  libarray-unique-perl          0.08-1     Tie-able array that allows only un
ii  libclass-accessor-perl        0.34-1     Perl module that automatically gen
ii  libdpkg-perl                  1.15.7.2   Dpkg perl modules
ii  libemail-date-format-perl     1.002-1    Module to generate RFC-2822-valid 
ii  liblist-moreutils-perl        0.25~02-1  Perl module with additional list f
ii  libmodule-depends-perl        0.14-3     identify the dependencies of a dis
ii  libparse-debcontrol-perl      2.005-2    Easy OO parsing of Debian control-
ii  libparse-debianchangelog-perl 1.1.1-2    parse Debian changelogs and output
ii  libtie-ixhash-perl            1.21-2     ordered associative arrays for Per
ii  libwww-mechanize-perl         1.62-1     module to automate interaction wit
ii  libyaml-perl                  0.71-1     YAML Ain't Markup Language
ii  make                          3.81-8     An utility for Directing compilati
ii  perl                          5.10.1-13  Larry Wall's Practical Extraction 
ii  perl-modules [libmodule-corel 5.10.1-13  Core Perl modules

Versions of packages dh-make-perl recommends:
ii  apt-file                      2.3.4      search for files within Debian pac

dh-make-perl suggests no packages.

-- no debconf information

-- 
Chris Butler <chrisb at debian.org>
  GnuPG Key ID: 4096R/49E3ACD3
-------------- next part --------------
A non-text attachment was scrubbed...
Name: core-mod-fix.patch
Type: text/x-diff
Size: 749 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-perl-maintainers/attachments/20100613/ed17b05f/attachment-0001.patch>


More information about the pkg-perl-maintainers mailing list