Skip Menu |

This queue is for tickets about the Locale-Codes CPAN distribution.

Report information
The Basics
Id: 62247
Status: resolved
Priority: 0/
Queue: Locale-Codes

People
Owner: Nobody in particular
Requestors: jnareb [...] gmail.com
Cc:
AdminCc:

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



Subject: Test::Pod::Coverage should be not required to be abl to install
When installing Locale::Country from CPAN using 'cpan' client, the installation failed because I didn't have Test::Pod::Coverage installed (in high enough version). Locale::Country has Test::Pod::Coverage as build_requires, which means that I had to force install, while it is optional dependency, used in one of tests.
I'm trying to make the module install without warnings or test failures in as many cases as possible. Although the Test::Pod::Coverage module isn't required to build/install, it is required to pass all tests without warnings. Unfortunately, neither the Build.PL/Makefile.PL install methods supports the concept of a module being a prereq to test... only a prereq to run or to build, so I added this (and other test modules) as prereqs to build. Even the Module::Install method doesn't (currently) support the concept of a test prereq. Yes, it has a test_requires function, but it's currently just an alias for build_requires, so it's default behavior is exactly the same as the one I've chosen. What I WILL do is add a version to the require (I assume that you have an old version of Test::Pod::Coverage).
Subject: Re: [rt.cpan.org #62247] Test::Pod::Coverage should be not required to be abl to install
Date: Wed, 20 Oct 2010 21:01:15 +0200
To: bug-Locale-Codes [...] rt.cpan.org
From: Jakub Narebski <jnareb [...] gmail.com>
Sullivan Beck via RT wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=62247 > > > I'm trying to make the module install without warnings or test failures > in as many cases as possible. > > Although the Test::Pod::Coverage module isn't required to build/install, > it is required to pass all tests without warnings. Unfortunately, > neither the Build.PL/Makefile.PL install methods supports the concept of > a module being a prereq to test... only a prereq to run or to build, so > I added this (and other test modules) as prereqs to build.
Other packages on CPAN solved this differently. I am prompted with suggestion to install/upgrade Test::Pod::Coverage module, but not having it doesn't block the install; it only causes one of less important tests to be skipped. Show quoted text
> Even the Module::Install method doesn't (currently) support the concept > of a test prereq. Yes, it has a test_requires function, but it's > currently just an alias for build_requires, so it's default behavior is > exactly the same as the one I've chosen.
I think test_requires is meant for those modules that are needed to be able to test module at all (like e.g. Test::Class / Test::Routine for testing OOP module). Pod coverage is IMHO one of least important tests (should probably be in xt/, not in t/, as author test), and skipping it is perfectly valid. Show quoted text
> > What I WILL do is add a version to the require (I assume that you have > an old version of Test::Pod::Coverage).
That's good, but I still think that this do not resolve this issue fully. perl, v5.8.6 built for i386-linux-thread-multi Test::Pod::Coverage not installed (at all) -- Jakub Narebski Poland
Subject: Re: [rt.cpan.org #62247] Test::Pod::Coverage should be not required to be abl to install
Date: Wed, 20 Oct 2010 16:03:53 -0400
To: bug-Locale-Codes [...] rt.cpan.org
From: Sullivan Beck <sullybeck [...] gmail.com>
On 10/20/2010 03:01 PM, Jakub Narebski via RT wrote: Show quoted text
> Queue: Locale-Codes > Ticket<URL: https://rt.cpan.org/Ticket/Display.html?id=62247> > > Sullivan Beck via RT wrote: >
>> <URL: https://rt.cpan.org/Ticket/Display.html?id=62247> >> >> I'm trying to make the module install without warnings or test failures >> in as many cases as possible. >> >> Although the Test::Pod::Coverage module isn't required to build/install, >> it is required to pass all tests without warnings. Unfortunately, >> neither the Build.PL/Makefile.PL install methods supports the concept of >> a module being a prereq to test... only a prereq to run or to build, so >> I added this (and other test modules) as prereqs to build.
> Other packages on CPAN solved this differently. I am prompted with > suggestion to install/upgrade Test::Pod::Coverage module, but not having > it doesn't block the install; it only causes one of less important tests > to be skipped. >
>> Even the Module::Install method doesn't (currently) support the concept >> of a test prereq. Yes, it has a test_requires function, but it's >> currently just an alias for build_requires, so it's default behavior is >> exactly the same as the one I've chosen.
> I think test_requires is meant for those modules that are needed to be > able to test module at all (like e.g. Test::Class / Test::Routine for > testing OOP module). Pod coverage is IMHO one of least important tests > (should probably be in xt/, not in t/, as author test), and skipping > it is perfectly valid. >
>> What I WILL do is add a version to the require (I assume that you have >> an old version of Test::Pod::Coverage).
> That's good, but I still think that this do not resolve this issue fully. > > perl, v5.8.6 built for i386-linux-thread-multi > Test::Pod::Coverage not installed (at all) >
I'll agree that I haven't resolved the issue fully. I'll look into it a bit more.
The next release will not list Test::Pod/Test::Pod::Coverage as a build prereq. It wasn't really necessary anyway (those tests were skipped if they weren't there). It's not perfect... but it's an improvement.