[Catalyst] Weird interaction between Module::Install::Catalyst and Test::Prereq

Sebastian Willert willert at gmail.com
Tue Mar 3 02:33:13 GMT 2009


Hi all,

I've stumbled upon a really strange phenomenon today. I wanted to
automate my build process with Module::Release and the prereq checking
failed mysteriously deep within File::Find [1].

The most curious part is that this project doesn't even use Catalyst but
I can't seem to get rid of the Module::Install::Catalyst module in the
Module::Release build (normal Makefile.PL builds work just fine and
leave M::I::C out as expected).

I wasn't able to pinpoint the parts where the problem is located but I
found a even stranger workaround: just removing the 
  use File::Find;
line from M::I::C (File::Find doesn't seem to be used anyways) makes all
the problems magically go away.

Here is my setup:
  perl, v5.10.0 built for i486-linux-gnu-thread-multi
  Module::Release: $VERSION = '2.02';
  File::Find:      $VERSION = '1.12';
  Catalyst::Devel: $VERSION = '1.10';
  Test::Prereq:    $VERSION = '1.036';

Does anybody have the slightest idea what might be going on here?
And is it possible to just drop the above line from Catalyst::Devel as a
workaround? Is anybody here even using Module::Release and encountered
similar problems?

Cheers,
  Sebastian Willert

---
[1]
 /usr/bin/perl -MTest::Prereq -eprereq_ok
1..1
include inc/Module/Install.pm
Prototype mismatch: sub Test::Prereq::prompt ($;$) vs none at
inc/Module/Install.pm line 187.
include inc/Module/Install/Metadata.pm
include inc/Module/Install/Base.pm
Cannot determine perl version info
from ./lib/DBIx/Class/Storage/Statistics/SimpleTable.pm
include inc/Module/Install/WriteAll.pm
Writing META.yml
include inc/Module/Install/Makefile.pm
include inc/Module/Install/Win32.pm
include inc/Module/Install/Can.pm
include inc/Module/Install/Fetch.pm
include inc/Module/Install/Catalyst.pm
Not a code ref: Module::Install::Catalyst=HASH(0x9396040)
at /usr/share/perl/5.10/File/Find.pm line 850
	File::Find::_find_dir('HASH(0x93d8d08)', 't', 2) called
at /usr/share/perl/5.10/File/Find.pm line 717
	File::Find::_find_opt('HASH(0x93d8d08)', 'CODE(0x95f1470)', 't') called
at /usr/share/perl/5.10/File/Find.pm line 1289
	File::Find::find(undef, 'CODE(0x95f1470)', 't') called
at /usr/local/share/perl/5.10.0/Test/Prereq.pm line 386
	Test::Prereq::_get_test_libraries('Test::Prereq') called
at /usr/local/share/perl/5.10.0/Test/Prereq.pm line 248
	Test::Prereq::_prereq_check('Test::Prereq') called
at /usr/local/share/perl/5.10.0/Test/Prereq.pm line 185
	Test::Prereq::prereq_ok() called at -e line 1





More information about the Catalyst mailing list