On Mon, Sep 29, 2008 at 03:29:48PM +0100, Martin J. Evans wrote:
> I've only been smoking with CPAN::Reporter::Smoker for around a week now 
> and I am repeatedly coming across the same problems. What do other 
> testers do with these issues:
> 
> 2. Modules which prompt for things
>    e.g. DBD::Pg 2.10.7 prompts for:
>    Path to pg_config?
> 
> How do I answer this - firstly, I think that is supposed to use prompt 
> to avoid prompting and secondly I don't have a pg_config file.

I believe that the CPAN/CPAN::Reporter way of handling prompts that 
don't honour the PERL_MM_USE_DEFAULT environment variable is to use
distprefs (?). Dave or Andreas may be better able to advise on this.

> 3.  PHRED/Apache-Test-1.30.tar.gz continually outputs:
> Please provide a full path to 'httpd' executable:
> 
>  []
> The path '' is not an absolute path. Please specify an absolute path
> 
> Please provide a full path to 'httpd' executable:
> 
> There are other modules that seem to loop if run non-interactively.

Myself and a lot of other CPAN testers have set up specific exclusions 
for modperl, which plays this kind of game. For other pesky distributions
because my smokers are run inside a POE framework, long running tasks 
get automagically killed after an hour of running. This catches cases 
like these.


> 4. Some modules fail to test, hanging:
> e.g.,
> 
> Running Build test
> t/00-load...........# Testing DBIx::DataModel 1.04, Perl 5.010000, 
> /home/martin/perl10/bin/perl
> ok
> t/DBIx-DataModel....ok
> t/MsAccess..........ok
> t/ParentClasses.....package 
> HR::AutoView::HR::Employee_JOIN_activities_JOIN_department is already 
> defined at t/ParentClasses.t line 41
> # Looks like you planned 6 tests but only ran 3.
> # Looks like your test died just after 3.
>  Dubious, test returned 255 (wstat 65280, 0xff00)
>  Failed 3/6 subtests
> t/Storable..........package 
> HR::AutoView::HR::Employee_JOIN_activities_JOIN_department is already 
> defined at t/Storable.t line 39
> # Looks like your test died before it could output anything.
> 
> completely hangs here until ctrl/c(intr) pressed. This is not the only 
> module that does this.

Again, I have full control of the smoking process from the POE 
framework. Idle processes, ie. those that haven't produced any output 
on either STDOUT or STDERR in 15 minutes get killed.

> 5. Loads of modules seem to use LWP but not support $ua->env_proxy so 
> never spot I'm behind a firewall and hence have http_proxy env var set. 
> Obviously these all fail in some way.
> 

This kind of thing is problematic. There is just no way to second guess this.
I was testing in these circumstances up until recently myself. CPAN authors
do make the assumption that they have full Internet access, unfortunately.
Transparent proxying may be the answer. This is how I am addressing this issue
now. You can email me privately if you want more details.

You might want to have a look at POE::Component::CPAN::Reporter. This is the
POE framework I originally wrote to wrap around CPAN::YACSmoke, but ported to
support CPAN/CPAN::Reporter based smokers.

It comes with the script minireporter.

I usually install the POE framework into the system perl and then use that to
control the smoker perl. That way there isn't a big set of extra modules 
installed
into the smoker perl.

When I get a bit more time without toolchain distractions I'll get around to 
finishing
off SmokeBox which is the next generation POE-based CPAN Tester framework I 
have been
working on. There is a development release of the POE tools available on CPAN 
as 
POE::Component::SmokeBox, but it needs an App::SmokeBox and smokebox script to 
be 
really useful. 

</shameless plug>

Cheers,

-- 
Chris Williams
aka BinGOs
PGP ID 0x4658671F
http://www.gumbynet.org.uk
==========================

Attachment: pgppuFtSKIeXN.pgp
Description: PGP signature

Reply via email to