Bug 6244

Summary: M::S::Util::DependencyInfo gives misleading diagnostics and hides a failure reason
Product: Spamassassin Reporter: Mark Martinec <Mark.Martinec>
Component: Building & PackagingAssignee: SpamAssassin Developer Mailing List <dev>
Status: NEW ---    
Severity: minor    
Priority: P5    
Version: 3.3.0   
Target Milestone: Future   
Hardware: All   
OS: All   

Description Mark Martinec 2009-12-03 09:57:39 UTC
When some external perl modules fail on a 'require', the SpamAssassin
installation procedure reports 'optional module out of date',
instead of showing a failure reason. For example:

$ perl Makefile.PL
optional module out of date: IO::Socket::INET6
optional module out of date: IO::Socket::SSL
optional module out of date: Compress::Zlib

Trying to load these modules from a command line shows that they are the
latest version, but fail to compile for whatever reason, like an incompatible
(old) version of perl, or whatever. For example (with perl 5.6.2):

$ perl -e 'use IO::Socket::INET6; print IO::Socket::INET6->VERSION,"\n"'
Bareword "AF_INET6" not allowed while "strict subs" in use at /usr/local/lib/perl5/site_perl/5.6.2/IO/Socket/INET6.pm line 58.

$ perl -e 'use IO::Socket::SSL; print IO::Socket::SSL->VERSION,"\n"'
Constant name 'HASH(0x815f844)' has invalid characters at /usr/local/lib/perl5/site_perl/5.6.2/IO/Socket/SSL.pm line 25

$ perl -e 'use Compress::Zlib; print Compress::Zlib->VERSION,"\n"'
Can't locate Scalar/Util.pm in @INC (@INC contains: ...)
at /usr/local/lib/perl5/site_perl/5.6.2/Compress/Zlib.pm line 9.
Comment 1 Justin Mason 2010-03-23 16:34:07 UTC
moving all open 3.3.1 bugs to 3.3.2
Comment 2 Karsten Br├Ąckelmann 2010-03-23 17:43:08 UTC
Moving back off of Security, which got changed by accident during the mass Target Milestone move.