Greetings, Monks. I am working on my first Catalyst web app and I had it up and running pretty well using the Catalyst::Manual::Tutorial instructions.

Then I got The Definitive Guide to Catalyst which recommends doing an 'install Moose' from cpan. I did this and now all my Catalyst tests fail due to errors I don't understand. Pasting output from first test below:

~/BlankSite$ CATALYST_DEBUG=0 TEST_POD=1 TEST_AUTHOR=1 CATALYST_SERVER +=http://localhost:3000 prove -vwl t t/01browsing.t ......... not ok 1 - use Catalyst::Test; # Failed test 'use Catalyst::Test;' # at t/01browsing.t line 8. # Tried to use 'Catalyst::Test'. # Error: Couldn't load class (Catalyst::Exception::Basic) because +: Can't use an undefined value as a HASH reference at /usr/local/lib/ +perl/5.10.1/MooseX/Role/WithOverloading/Meta/Role/Application.pm line + 45. # Compilation failed in require at /usr/local/lib/perl/5.10.1/Class/MO +P.pm line 114. # at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 120 # Class::MOP::__ANON__('Can\'t use an undefined value as a HASH re +ference at /usr/loc...') called at /usr/local/share/perl/5.10.1/Try/T +iny.pm line 100 # Try::Tiny::try('CODE(0x1caaa50)', 'Try::Tiny::Catch=REF(0x1d9bfa +0)') called at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 125 # Class::MOP::load_first_existing_class('Catalyst::Exception::Basi +c') called at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 137 # Class::MOP::load_class('Catalyst::Exception::Basic', undef) call +ed at /usr/local/lib/perl/5.10.1/Moose/Util.pm line 113 # Moose::Util::_apply_all_roles('Moose::Meta::Class=HASH(0x1c91798 +)', undef, 'Catalyst::Exception::Basic') called at /usr/local/lib/per +l/5.10.1/Moose/Util.pm line 91 # Moose::Util::apply_all_roles('Moose::Meta::Class=HASH(0x1c91798) +', 'Catalyst::Exception::Basic') called at /usr/local/lib/perl/5.10.1 +/Moose.pm line 58 # Moose::with('Moose::Meta::Class=HASH(0x1c91798)', 'Catalyst::Exc +eption::Basic') called at /usr/local/lib/perl/5.10.1/Moose/Exporter.p +m line 359 # Moose::with('Catalyst::Exception::Basic') called at /usr/local/s +hare/perl/5.10.1/Catalyst/Exception.pm line 50 # require Catalyst/Exception.pm called at /usr/local/share/perl/5. +10.1/Catalyst/Test.pm line 7 # Catalyst::Test::BEGIN() called at /usr/local/share/perl/5.10.1/C +atalyst/Exception.pm line 0 # eval {...} called at /usr/local/share/perl/5.10.1/Catalyst/Excep +tion.pm line 0 # require Catalyst/Test.pm called at (eval 4) line 2 # main::BEGIN() called at /usr/local/share/perl/5.10.1/Catalyst/Ex +ception.pm line 0 # eval {...} called at /usr/local/share/perl/5.10.1/Catalyst/Excep +tion.pm line 0 # eval 'package main; # use Catalyst::Test @{$args[0]}; # 1; # # ;' called at /usr/local/share/perl/5.10.1/Test/More.pm line 875 # Test::More::_eval('package main;\x{a}use Catalyst::Test @{$args[ +0]};\x{a}1;\x{a}', 'ARRAY(0x13f4f78)') called at /usr/local/share/per +l/5.10.1/Test/More.pm line 850 # Test::More::use_ok('Catalyst::Test', 'BlankSite') called at t/01 +browsing.t line 8 # main::BEGIN() called at /usr/local/share/perl/5.10.1/Catalyst/Ex +ception.pm line 0 # eval {...} called at /usr/local/share/perl/5.10.1/Catalyst/Excep +tion.pm line 0 # Compilation failed in require at /usr/local/share/perl/5.10.1/Cataly +st/Test.pm line 7. # BEGIN failed--compilation aborted at /usr/local/share/perl/5.10.1/Ca +talyst/Test.pm line 7. # Compilation failed in require at (eval 4) line 2. # BEGIN failed--compilation aborted at (eval 4) line 2. Undefined subroutine &main::request called at t/01browsing.t line 10. # Tests were run but no plan was declared and done_testing() was not s +een. Dubious, test returned 255 (wstat 65280, 0xff00) Failed 1/1 subtests

I'm running on Ubuntu 10.04.

I originally installed Catalyst via Task::Catalyst::Tutorial, and I thought Moose was already installed as a dependency (it says I'm running Catalyst 5.80029 when I start my dev server, which still works btw) but I guess maybe Task::Catalyst::Tutorial installed old versions of things that are now conflicting with each other or something?

I tried install Catalyst::Devel and just plain install Catalyst from cpan to try to see if that would bring everything up to date and get everything compatible again, but both commands just produce page after page of test failures now and won't finish.

What do you recommend to get my system working again? Also, is there a Catalyst forum or somewhere that would be more appropriate for asking Catalyst questions like this? I haven't found one yet. Thanks!


In reply to New Moose install broke Catalyst::Test by falseazure

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.