Skip Menu |

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

Report information
The Basics
Id: 91159
Status: rejected
Priority: 0/
Queue: Module-CPANTS-Analyse

People
Owner: Nobody in particular
Requestors: cpan [...] zoffix.com
Cc:
AdminCc:

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



Subject: Prereqs Not Discovered
In this distro: http://backpan.perl.org/authors/id/Z/ZO/ZOFFIX/Net-OBEX-Packet-Headers-0.004.tar.gz The Unicode.pm module has use Encode qw(encode_utf8);, which isn't specified in Build.PL, but the Kwalitee cpants game doesn't tell me that I'm missing any prereqs.
On Wed Dec 04 07:25:52 2013, ZOFFIX wrote: Show quoted text
> > In this distro: http://backpan.perl.org/authors/id/Z/ZO/ZOFFIX/Net- > OBEX-Packet-Headers-0.004.tar.gz > The Unicode.pm module has use Encode qw(encode_utf8);, which isn't > specified in Build.PL, but the Kwalitee cpants game doesn't tell me > that I'm missing any prereqs.
This is because Encode module has been a core module since Perl 5.7.3, and should always be available, unless your OS distributor decided to split the perl distribution into, say, a perl executable distribution and a perl-core modules distribution. If you need to require a specific, better-than-bundled version of Encode, you need to specify the version in Build.PL. Otherwise, this is not a problem of your distribution, as well as CPANTS. FYI, CPANTS doesn't care about Perl 5.6.x and below.
FWIW, it's not always safe to assume that because something is core now that it will always be in core. Modules have been removed from core in the past and this practice will continue. The only safe thing to do is to specify all prereqs, whether or not they are in core.
On Thu Dec 05 02:13:52 2013, ETHER wrote: Show quoted text
> FWIW, it's not always safe to assume that because something is core > now that it will always be in core. Modules have been removed from > core in the past and this practice will continue.
It's also true that something core in a certain version of perl isn't always core in older versions of perl. Show quoted text
> The only safe thing to do is to specify all prereqs, whether or not > they are in core.
True, and it may be useful to add a stricter extra metric such as all the used modules including core are listed, or more practically, all the dual-lived modules (ie. installable from CPAN) are listed.