[Catalyst] Inconsistent hierarchy during C3 merge of class

Tomas Doran bobtfish at bobtfish.net
Thu Feb 25 14:11:54 GMT 2010


Al Alder wrote:
> Using Catalyst 5.80020
> When running CATALYST_DEBUG=0 prove -l t/01app.t
> per 'The Definitive Guide To Catalyst' page 76 I get:
> LolCatalyst-Lite > CATALYST_DEBUG=0 prove -l 
> t/01app.t                            
> t/01app.t .. 
> 1/1                                                                             
> 
> #   Failed test 'use 
> Catalyst::Test;'                                                       
> #   at t/01app.t line 
> 7.                                                                    
> #     Tried to use 
> 'Catalyst::Test'.                                                        
> #     Error:  Couldn't load class (LolCatalyst::Lite) because: 
> Inconsistent hierarchy during C3 merge of class 
> 'Class::MOP::Class::__ANON__::SERIAL::9': merging failed on parent 
> 'Catalyst::Plugin::Authentication' at /usr/share/perl/5.10/mro.pm 
> <http://mro.pm> line 26.                             
> # Compilation failed in require at 
> /usr/local/lib/perl/5.10.0/Class/MOP.pm line 
> 101.                                                        
> #  at /usr/local/lib/perl/5.10.0/Class/MOP.pm line 105
> 
> Google search turns up the fact that older versions of Catalyst had this 
> problem, but this has been fixed in
> the latest versions.  I have checked and all modules versions appear to 
> be the latest.

This is due to an old versions of one of the plugins you have in your 
application.

At a guess, one of the FastMMap ones.

If you run the Catalyst::Runtime Makefile.PL manually, it will tell you 
which module(s) are out of date.

If this still doesn't solve the issue, can you show us your use Catalyst 
qw// line (the one with all the plugins), and give the version of each 
plugin you have installed?

Cheers
t0m



More information about the Catalyst mailing list