Using Catalyst::Plugin::FormValidator is not recommended as the module
takes over the global $c->form method, rather than being applicable in
only part of your Catalyst application. Furthermore,
Data::FormValidator itself is not recommended for use.
from Andreas Voegele
Catalyst::Plugin::Cache::Store::FastMmap is deprecated because
Cache::FastMmap no longer needs to be wrapped to store plain values.
from Andreas Voegele
Fixes Catalyst with Moose 1.24+, this has been broken in the tree for a
while.
This and the many related updates to follow are all from Andreas Voegele's
repo at https://github.com/voegelas/openbsd-mystuff, thanks Andreas, this must
have been a huge bunch of work. I have forked this at github/sthen/p5-ports-wip
and am removing things from there once committed, there are various additional
new perl ports there and it would be nice if people could help work through
what's left.
Plack::Test::ExternalServer allows your to run your Plack::Test tests
against an external server instead of just against a local application
through either mocked HTTP or a locally spawned server.
Plack::Middleware::ReverseProxy resets some HTTP headers, which were
changed by reverse-proxy. You can specify the reverse proxy address and
stop fake requests using the 'enable_if' directive in your app.psgi.
Adds a "COMPONENT" method to your Catalyst component base class that
reads the optional traits parameter from app and component config and
instantiates the component subclass with those traits using
"new_with_traits" in MooseX::Traits from MooseX::Traits::Pluggable.
Params::Classify provides various type-testing functions. These are
intended for functions that, unlike most Perl code, care what type of
data they are operating on. For example, some functions wish to behave
differently depending on the type of their arguments (like overloaded
functions in C++).
MooseX::NonMoose allows for easily subclassing non-Moose classes with
Moose, taking care of the annoying details connected with doing this,
such as setting up proper inheritance from Moose::Object and installing
(and inlining, at make_immutable time) a constructor that makes sure
things like BUILD methods are called.
MooseX::MarkAsMethods allows one to easily mark certain functions as
Moose methods. This will allow other packages such as
namespace::autoclean to operate without blowing away your overloads.
After using MooseX::MarkAsMethods your overloads will be recognized by
Class::MOP as being methods, and class extension as well as composition
from roles with overloads will "just work".
Often you want to write a persistant daemon that has a pid file, and
responds appropriately to Signals. MooseX::Daemonize provides a set of
basic roles as an infrastructure to do that.
"require EXPR" only accepts "Class/Name.pm" style module names, not
"Class::Name". How frustrating! For that, we provide "load_class
'Class::Name'".
It's often useful to test whether a module can be loaded, instead of
throwing an error when it's not available. For that, we provide
"try_load_class 'Class::Name'".
Finally, sometimes we need to know whether a particular class has been
loaded. Asking %INC is an option, but that will miss inner packages and
any class for which the filename does not correspond to the package
name. For that, we provide "is_class_loaded 'Class::Name'".