CatalystX::REPL(3) User Contributed Perl Documentation CatalystX::REPL(3)NAMECatalystX::REPL - read-eval-print-loop for debugging your Catalyst
application
VERSION
version 0.04
SYNOPSIS
package MyApp;
use Moose;
# Requires Catalyst 5.8 series
extends 'Catalyst';
with 'CatalystX::REPL';
__PACKAGE__->setup(qw/-Debug/);
1;
DESCRIPTION
Using Carp::REPL with a Catalyst application is hard. That's because of
all the internal exceptions that are being thrown and caught by
Catalyst during application startup. You'd have to manually skip over
all of those.
This role works around that by automatically setting up Carp::REPL
after starting your application, if the "CATALYST_REPL" or "MYAPP_REPL"
environment variables are set:
MYAPP_REPL=1 ./script/myapp_server.pl
# Hit an action
...
42 at lib/MyApp/Controller/Foo.pm line 8.
# instead of exiting, you get a REPL!
Trace begun at lib/MyApp/Controller/Foo.pm line 8
MyApp::Controller::Foo::bar('MyApp::Controller::Foo=HASH(0xc9fe20)', 'MyApp=HASH(0xcea6a4)') called at ...
... # Many more lines of stack trace
$ $c
MyApp=HASH(0xcea6ec)
$ $c->req->uri
http://localhost/foo/bar
$
Options like "warn" or "nodie" can be passed to Carp::REPL by putting
them, seperated by commas, into the environment variable:
MYAPP_REPL=warn,nodie ./script/myapp_server.pl
Carp::REPL uses Devel::REPL for the shell, so direct any questions how
how to use or customize the repl at that module.
SEE ALSO
Carp::REPL
Devel::REPL
AUTHORS
Tomas Doran <bobtfish@bobtfish.net>
Florian Ragwitz <rafl@debian.org>
Ash Berlin <ash@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2009 by Florian Ragwitz.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
perl v5.14.1 2009-08-11 CatalystX::REPL(3)