requires 'Tree::Simple::Visitor::FindByPath';
requires 'URI' => '1.35';
requires 'Text::Balanced'; # core in 5.8.x but mentioned for completeness
-
+requires 'MRO::Compat';
if (-e 'inc/.author') {
build_requires 'Test::Perl::Critic';
package Catalyst;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
extends 'Catalyst::Component';
use bytes;
sub setup {
my ( $class, @arguments ) = @_;
-
+ Class::C3::initialize;
$class->log->warn("Running setup twice is not a good idea.")
if ( $class->setup_finished );
$class->log->_flush() if $class->log->can('_flush');
$class->setup_finished(1);
+ Class::C3::initialize;
}
=head2 $c->uri_for( $path, @args?, \%query_values? )
=cut
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
has class => (is => 'rw');
package Catalyst::ActionChain;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
extends qw(Catalyst::Action);
=cut
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
has part => (is => 'rw', required => 1, lazy => 1, default => sub { {} });
package Catalyst::Base;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
BEGIN{ extends qw/Catalyst::Controller/ };
no Moose;
package Catalyst::Component;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
use MooseX::Adopt::Class::Accessor::Fast;
use Catalyst::Utils;
package Catalyst::Controller;
#switch to BEGIN { extends qw/ ... /; } ?
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use base qw/Catalyst::Component Catalyst::AttrContainer/;
use Moose;
package Catalyst::DispatchType;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose; # using it to add Moose::Object to @ISA ...
no Moose;
package Catalyst::DispatchType::Chained;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
extends 'Catalyst::DispatchType';
package Catalyst::DispatchType::Default;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
extends 'Catalyst::DispatchType';
package Catalyst::DispatchType::Index;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
extends 'Catalyst::DispatchType';
no Moose;
package Catalyst::DispatchType::Path;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
extends 'Catalyst::DispatchType';
package Catalyst::DispatchType::Regex;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
extends 'Catalyst::DispatchType::Path';
package Catalyst::Dispatcher;
+use MRO::Compat;
+use mro 'c3';
use Moose;
use Class::MOP;
package Catalyst::Engine;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
with 'MooseX::Emulate::Class::Accessor::Fast';
package Catalyst::Engine::CGI;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
extends 'Catalyst::Engine';
package Catalyst::Engine::FastCGI;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
extends 'Catalyst::Engine::CGI';
package Catalyst::Engine::HTTP;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
extends 'Catalyst::Engine::CGI';
no Moose;
package Catalyst::Engine::HTTP::Restarter;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
extends 'Catalyst::Engine::HTTP';
no Moose;
package Catalyst::Log;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
use Data::Dump;
package Catalyst::Model;
+use MRO::Compat;
+use mro 'c3';
use Moose;
extends qw/Catalyst::Component/;
package Catalyst::Request;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use IO::Socket qw[AF_INET inet_aton];
use Carp;
use utf8;
package Catalyst::Request::Upload;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
use Catalyst::Exception;
package Catalyst::Response;
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
use Moose;
use HTTP::Headers;
package Catalyst::View;
+use MRO::Compat;
+use mro 'c3';
use Moose;
extends qw/Catalyst::Component/;
sub config { {} };
}
-is(MyApp::Controller::Foo->COMPONENT->action_namespace('Stub'), 'foo');
+is(MyApp::Controller::Foo->COMPONENT('MyApp')->action_namespace('Stub'), 'foo');
-is(MyApp::Controller::Root->COMPONENT->action_namespace('Stub'), '');
+is(MyApp::Controller::Root->COMPONENT('MyApp')->action_namespace('Stub'), '');