Skip Menu |

This queue is for tickets about the Module-Signature CPAN distribution.

Report information
The Basics
Id: 61124
Status: resolved
Priority: 0/
Queue: Module-Signature

People
Owner: Nobody in particular
Requestors: paul [...] city-fan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.65
Fixed in: (no value)



Subject: Incompatibility with ExtUtils::Manifest versions 1.54 to 1.57
When used in conjunction with ExtUtils::Manifest < 1.58, Module::Signature calls the supposedly private subroutine ExtUtils::Manifest::_maniskip. However, in ExtUtils::Manifest 1.54 this subroutine was made public and its name changed to ExtUtils::Manifest::maniskip, resulting in the t/0-signature.t test failing: $ make test TEST_SIGNATURE=1 PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'inc', 'blib/lib', 'blib/arch')" t/*.t WARNING: This key is not certified with a trusted signature! Primary key fingerprint: E8DC 91A1 B7BE E5AB C172 47EE 742F 2A42 8E63 5A5E Undefined subroutine &ExtUtils::Manifest::_maniskip called at /builddir/build/BUILD/Module-Signature/Module-Signature-0.65/blib/lib/Module/Signature.pm line 147. # Looks like your test exited with 255 before it could output anything. t/0-signature.t .. Dubious, test returned 255 (wstat 65280, 0xff00) Failed 1/1 subtests Attached patch resolves the problem for me.
Subject: Module-Signature-0.65-maniskip.patch
--- Module-Signature/Module-Signature-0.65/lib/Module/Signature.pm.orig 2010-09-03 20:36:17.000000000 +0100 +++ Module-Signature/Module-Signature-0.65/lib/Module/Signature.pm 2010-09-06 16:19:15.668285295 +0100 @@ -144,7 +144,12 @@ my($mani, $file); if( _legacy_extutils() ) { - my $_maniskip = &ExtUtils::Manifest::_maniskip; + my $_maniskip; + if ( _public_maniskip() ) { + $_maniskip = &ExtUtils::Manifest::maniskip; + } else { + $_maniskip = &ExtUtils::Manifest::_maniskip; + } local *ExtUtils::Manifest::_maniskip = sub { sub { return unless $skip; @@ -181,6 +186,11 @@ return (ExtUtils::Manifest->VERSION < 1.58); } +sub _public_maniskip { + # ExtUtils::Manifest 1.54 onwards have public maniskip + return (ExtUtils::Manifest->VERSION > 1.53); +} + sub _default_skip { local $_ = shift; return 1 if /\bRCS\b/ or /\bCVS\b/ or /\B\.svn\b/ or /,v$/
Fixed in 0.66. Many thanks for both the report and the patch!