[Catalyst-commits] r11283 - in Catalyst-Manual/5.80/trunk: . lib/Catalyst lib/Catalyst/Manual

t0m at dev.catalyst.perl.org t0m at dev.catalyst.perl.org
Tue Sep 1 01:12:16 GMT 2009


Author: t0m
Date: 2009-09-01 01:12:16 +0000 (Tue, 01 Sep 2009)
New Revision: 11283

Added:
   Catalyst-Manual/5.80/trunk/TODO
   Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Components.pod
Removed:
   Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Plugins.pod
Modified:
   Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual.pm
   Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/About.pod
   Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Actions.pod
   Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/CatalystAndMoose.pod
   Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Cookbook.pod
   Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/DevelopmentProcess.pod
   Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/ExtendingCatalyst.pod
   Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Internals.pod
   Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Intro.pod
Log:
Loads of cleanup / updating work

Added: Catalyst-Manual/5.80/trunk/TODO
===================================================================
--- Catalyst-Manual/5.80/trunk/TODO	                        (rev 0)
+++ Catalyst-Manual/5.80/trunk/TODO	2009-09-01 01:12:16 UTC (rev 11283)
@@ -0,0 +1,23 @@
+::Internals
+  - Needs work
+
+::ExtendingCatalyst
+  - Should fix / merge action docs
+
+::Plugins
+  - Needs all those plugins evaluating and stuff replacing
+  - Update obsolete list
+
+::DevelopmentProcess
+  - Needs more repos stuff adding
+
+::Intro
+  - Has way too much stuff in
+
+::Cookbook
+  - Re-add section on checking roles
+
+EVERYTHING
+  - Paul Makepeace - stuff he threatened to document from mailing list
+  - Kill all use base
+  - Kill all use parent
\ No newline at end of file

Modified: Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/About.pod
===================================================================
--- Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/About.pod	2009-09-01 01:11:45 UTC (rev 11282)
+++ Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/About.pod	2009-09-01 01:12:16 UTC (rev 11283)
@@ -303,15 +303,17 @@
 rather than your Controller, is the better place to decide what to
 display if you get an empty result). Catalyst just gives you the tools.
 
-=head1 AUTHOR
-
-Jesse Sheidlower, C<jester at panix.com>
-
 =head1 SEE ALSO
 
 L<Catalyst>, L<Catalyst::Manual::Intro>
 
+=head1 AUTHORS
+
+Catalyst Contributors, see Catalyst.pm
+
 =head1 COPYRIGHT
 
-This program is free software, you can redistribute it and/or modify it
-under the same terms as Perl itself.
+This library is free software. You can redistribute it and/or modify it under
+the same terms as Perl itself.
+
+=cut

Modified: Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Actions.pod
===================================================================
--- Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Actions.pod	2009-09-01 01:11:45 UTC (rev 11282)
+++ Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Actions.pod	2009-09-01 01:12:16 UTC (rev 11283)
@@ -33,35 +33,87 @@
 L<Catalyst::Action> as a base class and decorate the C<execute> call in
 the Action class:
 
-  package Catalyst::Action::SayBefore;
+  package Catalyst::Action::MyAction;
+  use Moose;
+  use namespace::autoclean;
+  
+  extends 'Catalyst::Action';
 
-  use base 'Catalyst::Action';
+  before 'execute' => sub {
+    my ( $self, $controller, $c, $test ) = @_;
+    $c->stash->{what} = 'world';
+  };
 
-  sub execute {
-    my $self = shift;
-    my ( $controller, $c, $test ) = @_;
+  after 'extecute' => sub {
+      my ( $self, $controller, $c, $test ) = @_;
+      $c->stash->{foo} = 'bar';
+  };
+
+  __PACKAGE__->meta->make_immutable;
+
+Pretty simple, huh?
+
+=head1 ACTION ROLES
+
+You can only have one action class per action, which can be somewhat inflexible.
+
+The solution to this is to use L<Catalyst::Controller::ActionRole>, which
+would make the example above look like this:
+
+  package Catalyst::ActionRole::MyActionRole;
+  use Moose::Role;
+
+  before 'execute' => sub {
+    my ( $self, $controller, $c, $test ) = @_;
     $c->stash->{what} = 'world';
-    $self->next::method( @_ );
   };
 
+  after 'extecute' => sub {
+      my ( $self, $controller, $c, $test ) = @_;
+      $c->stash->{foo} = 'bar';
+  };
+  
   1;
 
-If you want to do something after the action, just put it after the
-C<execute> call. Pretty simple, huh?
+and this would be used in a controller like this:
 
-=head1 ACTIONS
+  package MyApp::Controller::Foo;
+  use Moose;
+  use namespace::autoclean;
+  BEGIN { extends 'Catalyst::Controller::ActionRole'; }
 
+  sub foo : Does('MyActionRole') {
+      my ($self, $c) = @_;
+  }
+
+  1;
+
+=head1 EXAMPLE ACTIONS
+
 =head2 Catalyst::Action::RenderView
 
 This is meant to decorate end actions. It's similar in operation to 
 L<Catalyst::Plugin::DefaultEnd>, but allows you to decide on an action
 level rather than on an application level where it should be run.
 
-=head1 AUTHOR
+=head2 Catalyst::Action::REST
 
-The Catalyst Core Team - see http://catalyst.perl.org/
+Provides additional syntax for dispatching based upon the HTTP method
+of the request.
 
+=head1 EXAMPLE ACTIONROLES
+
+=head2 Catalyst::ActionRole::ACL
+
+Provides ACLs for role membership by decorating your actions.
+
+=head1 AUTHORS
+
+Catalyst Contributors, see Catalyst.pm
+
 =head1 COPYRIGHT
 
-This program is free software. You can redistribute it and/or modify it
-under the same terms as Perl itself.
+This library is free software. You can redistribute it and/or modify it under
+the same terms as Perl itself.
+
+=cut

Modified: Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/CatalystAndMoose.pod
===================================================================
--- Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/CatalystAndMoose.pod	2009-09-01 01:11:45 UTC (rev 11282)
+++ Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/CatalystAndMoose.pod	2009-09-01 01:12:16 UTC (rev 11283)
@@ -155,11 +155,14 @@
 
 	with 'MyApp::ControllerRole';
 	
-=head1 AUTHOR
+=head1 AUTHORS
 
-The Catalyst Core Team - see http://catalyst.perl.org/
+Catalyst Contributors, see Catalyst.pm
 
 =head1 COPYRIGHT
 
-This program is free software. You can redistribute it and/or modify it
-under the same terms as Perl itself.
+This library is free software. You can redistribute it and/or modify it under
+the same terms as Perl itself.
+
+=cut
+

Copied: Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Components.pod (from rev 11261, Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Plugins.pod)
===================================================================
--- Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Components.pod	                        (rev 0)
+++ Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Components.pod	2009-09-01 01:12:16 UTC (rev 11283)
@@ -0,0 +1,603 @@
+=head1 NAME
+
+Catalyst::Manual::Component - Reuseable components for Catalyst applications.
+
+=head1 DESCRIPTION
+
+This section lists the some of the components (and plugins) that are
+available to extend the runtime functionality of Catalyst. Most components
+are not distributed with Catalyst but should be available from CPAN.
+They typically require additional modules from CPAN.
+
+This list may well be outdated by the time you read this and some
+plugins may be deprecated or now part of core L<Catalyst>. Be sure to
+check the Catalyst:: and CatalystX:: namespaces for additional components and consult
+the mailing list ( L<http://dev.catalyst.perl.org/wiki/Support> ) for
+advice on the current status or preferred use of your chosen
+plugin/framework.
+
+=head1 PLUGINS
+
+=head2 L<Catalyst::Plugin::Account::AutoDiscovery>
+
+Provides Account Auto-Discovery for Catalyst.
+
+=head2 L<Catalyst::Plugin::Acme::Scramble>
+
+Implements a potent meme about how easily we can read scrambled text if
+the first and last letters remain constant. Operates on text/plain and
+text/html served by your Catalyst application.
+
+=head2 L<Catalyst::Plugin::Alarm>
+
+=head2 L<Catalyst::Plugin::AtomPP>
+
+Allows you to dispatch AtomPP methods.
+
+=head2 L<Catalyst::Plugin::AtomServer>
+
+A plugin that implements the necessary bits to make it easy to build an
+Atom API server for any Catalyst-based application.
+
+=head2 L<Catalyst::Plugin::Authentication>
+
+An infrastructure plugin for the Catalyst authentication framework. Now the
+recommended way to do any form of Authentication.
+
+Note that newer versions of the authentication plugin allow multiple
+C<realms>, so that you can authenticate users in different ways in different
+parts of your application.
+
+This, however, has involved deprecated all classes in the
+C<Catalyst::Plugin::Authentication::Credential::XXX> and
+C<Catalyst::Plugin::Authentication::Store::XXX> namespaces.
+
+These plugins are still useable, however they have mostly been
+replaced with new modules in the new namespace which will work together.
+
+=head3 Available Credential modules:
+
+=head4 L<Catalyst::Authentication::Credential::AuthTkt>
+
+Allows you to use the L<Apache::AuthTkt> module with Catalyst.
+
+=head4 L<Catalyst::Authentication::Credential::FBConnect>
+
+Allows you to authenticate facebook users using the FBConnect API.
+
+=head4 L<Catalyst::Authentication::Credential::Flickr>
+
+Provides authentication via Flickr, using its API.
+
+=head4 L<Catalyst::Authentication::Credential::HTTP>
+
+Allows you to authenticate users using HTTP Basic or Digest authentication.
+
+=head4 L<Catalyst::Authentication::Credential::HTTP::Proxy>
+
+Allows you to authenticate users against a remote web server
+offering HTTP authentication.
+
+=head4 L<Catalyst::Authentication::Credential::Kerberos>
+
+Allows you to authenticate your users against a Kerberos server.
+
+=head4 L<Catalyst::Authentication::Credential::OAuth>
+
+Allows you to authenticate users using their login on other websites supporting
+the OAuth protocol.
+
+=head4 L<Catalyst::Authentication::Credential::OpenID>
+
+Allows you to authenticate users using their login on other websites supporting
+the OpenID protocol.
+
+=head4 L<Catalyst::Authentication::Credential::Password>
+
+Takes a username (or userid) and a password, and tries various methods of
+comparing a password based on what the chosen store's user objects support.
+Part of the Authentication Framework L<Catalyst::Plugin::Authentication>.
+
+=head4 L<Catalyst::Authentication::Credential::RPX>
+
+Allows you to autheticate users using the RPX protocol.
+
+=head4 L<Catalyst::Authentication::Credential::Remote>
+
+Allows you to authenticate users in Catalyst which have already been
+authenticated by your web server - this is useful for authenticating
+users with SSL Client certificates, and using NTLM or any other
+authentication protocol natively supported by your web server.
+
+=head4 L<Catalyst::Authentication::Credential::Testing>
+
+Allows you to set the same password for all users, which is useful
+when you want to test logging in as multiple users / types of user,
+without having to mock things, or set all users passwords in your
+test suite.
+
+=head4 L<Catalyst::Authentication::Credential::Authen::Simple>
+
+Allows any of the L<Authen::Simple> family of modules to be used
+to authenticate users in Catalyst.
+
+=head3 LAvailable Store modules:
+
+=head4 L<Catalyst::Authentication::Store::DBIx::Class>
+
+Does authentication and authorization against a L<DBIx::Class> model.
+
+=head4 L<Catalyst::Authentication::Store::Htpasswd>
+
+Uses L<Authen::Htpasswd> to let your application use C<.htpasswd> files for its
+authentication storage.
+
+=head4 L<Catalyst::Authentication::Store::AuthTkt>
+
+This module implements the Catalyst::Authentication API for L<Apache::AuthTkt>.
+
+=head4 L<Catalyst::Authentication::Store::DBI>
+
+Allows you to use a plain L<DBI> database connection to identify users. 
+
+=head4 L<Catalyst::Authentication::Store::Htpasswd>
+
+Allows you to use an apache htpassed type file to authenticate users from.
+
+=head4 L<Catalyst::Authentication::Store::KiokuDB>
+
+Authenticate users stored as objects in the L<KiokuDB> object graph storage
+engine system.
+
+=head4 L<Catalyst::Authentication::Store::LDAP>
+
+Authenticates users using an LDAP server.
+
+=head4 L<Catalyst::Authentication::Store::Minimal>
+
+Lets you create a very quick and dirty user database in your application's
+config hash. Great for getting up and running quickly.
+
+=head4 L<Catalyst::Authentication::Store::Null>
+
+The Null store is a transparent store where any supplied user data is accepted.
+This is mainly useful for remotely authenticating credentials (e.g. OpenID) which
+may not be tied to any local storage.
+
+=head4 L<Catalyst::Authentication::Store::RDBO>
+
+Allows access to authentication information stored in a database via a L<Rose::DB::Object> class.
+
+=head4 L<Catalyst::Authentication::Store::Tangram>
+
+Allows access to authentication information stored in a database via a L<Tangram> class.
+
+=head4 L<Catalyst::Authentication::Store::DBIx::Class>
+
+Allows access to authentication information stored in a database via a L<DBIx::Class> class.
+
+=head4 L<Catalyst::Authentication::Store::Jifty::DBI>
+
+Allows access to authentication information stored in a database via a L<Jifty::DBI> class.
+
+=head4 L<Catalyst::Authentication::User::Hash>
+
+An easy authentication user object based on hashes.
+See L<Catalyst::Authentication::Store::Minimal> for more info.
+
+=head2 L<Catalyst::Plugin::Authorization::ACL>
+
+This module provides Access Control List style path protection, with arbitrary
+rules for L<Catalyst> applications. It operates only on the Catalyst private
+namespace, at least at the moment.
+
+=head2 L<Catalyst::Plugin::Authorization::Roles>
+
+L<Catalyst::Plugin::Authorization::Roles> provides role based authorization
+for Catalyst based on L<Catalyst::Plugin::Authentication>.
+
+=head2 L<Catalyst::Plugin::AutoSession>
+
+=head2 L<Catalyst::Plugin::Browser>
+
+Extends L<Catalyst::Request> by adding the capability of browser
+detection.  It returns an instance of L<HTTP::BrowserDetect>, which lets
+you get information from the client's user agent.
+
+=head2 L<Catalyst::Plugin::Cache>
+
+Provides a cache method enabling easy access to a shared cache implementing
+the C<< Cache:: >> APO, such as:
+
+=over
+
+=item FastMmap
+
+=item FileCache
+
+=item BerkeleyDB
+
+=item Memcached
+
+=item CHI
+
+=back
+
+=head2 L<Catalyst::Plugin::CGI::Untaint>
+
+=head2 L<Catalyst::Plugin::Charsets::Japanese>
+
+=head2 L<Catalyst::Plugin::Compress::Bzip2>
+
+=head2 L<Catalyst::Plugin::Compress::Deflate>
+
+=head2 L<Catalyst::Plugin::Compress::Gzip>
+
+=head2 L<Catalyst::Plugin::Compress::Zlib>
+
+=head2 L<Catalyst::Plugin::ConfigLoader>
+
+Provides a standard method for loading config files. Support
+exists for various formats. See
+L<Catalyst::Plugin::ConfigLoader::General>
+L<Catalyst::Plugin::ConfigLoader::INI>,
+L<Catalyst::Plugin::ConfigLoader::JSON>,
+L<Catalyst::Plugin::ConfigLoader::Perl>,
+L<Catalyst::Plugin::ConfigLoader::XML>, and
+L<Catalyst::Plugin::ConfigLoader::YAML>
+
+=head2 L<Catalyst::Plugin::ConfigurablePathTo>
+
+=head2 L<Catalyst::Plugin::Devel::InPageLogs>
+
+=head2 L<Catalyst::Plugin::Devel::InPageLogs::Log>
+
+=head2 L<Catalyst::Plugin::Dojo>
+
+=head2 L<Catalyst::Plugin::Dumper>
+
+=head2 L<Catalyst::Plugin::Email>
+
+Sends email with L<Email::Send> and L<Email::MIME::Creator>.
+
+=head2 L<Catalyst::Plugin::Email::Japanese>
+
+=head2 L<Catalyst::Plugin::Email::Page>
+
+=head2 L<Catalyst::Plugin::EmailValid>
+
+=head2 L<Catalyst::Plugin::FillInForm>
+
+A plugin based on C<HTML::FillInForm>, which describes itself as a module
+to automatically insert data from a previous HTML form into the HTML input,
+textarea, radio buttons, checkboxes, and select tags.  C<HTML::FillInForm>
+is a subclass of C<HTML::Parser> and uses it to parse the HTML and insert
+the values into the form tags.
+
+=head2 L<Catalyst::Plugin::Flavour>
+
+=head2 L<Catalyst::Plugin::Geography>
+
+Allows you to retrieve various kinds of geographical information. You can
+retrieve the country or code from the current user, from a given IP
+address, or from a given hostname.
+
+=head2 L<Catalyst::Plugin::Geography::Implementation>
+
+=head2 L<Catalyst::Plugin::HashedCookies>
+
+=head2 L<Catalyst::Plugin::HTML::Scrubber>
+
+=head2 L<Catalyst::Plugin::I18N>
+
+An internationalization plugin for Catalyst. Supports C<mo>/C<po> files
+and Maketext classes under your application's I18N namespace.
+
+=head2 L<Catalyst::Plugin::JSONRPC>
+
+=head2 L<Catalyst::Plugin::Message>
+
+=head2 L<Catalyst::Plugin::MobileAgent>
+
+=head2 L<Catalyst::Plugin::Observe>
+
+Provides the ability to register AOP-like callbacks to specific Engine
+events. Subclasses L<Class::Publisher>.
+
+=head2 L<Catalyst::Plugin::OrderedParams>
+
+Adjusts the way that parameters operate, causing them to appear in the same
+order they were submitted by the browser. This can be useful for creating
+things such as email forms.
+
+=head2 L<Catalyst::Plugin::PageCache>
+
+Helps improve the performance of slow or frequently accessed pages by
+caching the entire output of your page. Subsequent requests to the page
+will receive the page very quickly from cache.
+
+=head2 L<Catalyst::Plugin::Params::Nested>
+
+=head2 L<Catalyst::Plugin::Params::Nested::Expander>
+
+=head2 L<Catalyst::Plugin::Pluggable>
+
+A plugin for pluggable Catalyst applications.
+
+=head2 L<Catalyst::Plugin::Prototype>
+
+A plugin for the Prototype JavaScript library. This Plugin allows you to
+easily implement AJAX functionality without actually knowing Javascript.
+
+=head2 L<Catalyst::Plugin::Redirect>
+
+=head2 L<Catalyst::Plugin::RequestToken>
+
+=head2 L<Catalyst::Plugin::RequireSSL>
+
+Use this if you would like to force visitors to access certain pages using
+only SSL mode. An attempt to access the page in non-SSL mode will receive a
+redirect into SSL mode. Useful for login pages, shopping carts, user
+registration forms, and other sensitive data.
+
+=head2 L<Catalyst::Plugin::Scheduler>
+
+=head2 L<Catalyst::Plugin::Session>
+
+The L<Catalyst::Plugin::Session> series of modules provide an easy way to
+include session handling in an application. You can choose from several
+different backend storage methods and combine that with your choice of
+client-side storage methods.
+
+=head2 L<Catalyst::Plugin::Session::PerUser>
+
+=head2 L<Catalyst::Plugin::Session::State>
+
+=head2 L<Catalyst::Plugin::Session::State::Cookie>
+
+=head2 L<Catalyst::Plugin::Session::State::URI>
+
+=head2 L<Catalyst::Plugin::Session::Store>
+
+=head2 L<Catalyst::Plugin::Session::Store::CDBI>
+
+=head2 L<Catalyst::Plugin::Session::Store::DBI>
+
+=head2 L<Catalyst::Plugin::Session::Store::DBIC>
+
+=head2 L<Catalyst::Plugin::Session::Store::Dummy>
+
+=head2 L<Catalyst::Plugin::Session::Store::FastMmap>
+
+=head2 L<Catalyst::Plugin::Session::Store::File>
+
+=head2 L<Catalyst::Plugin::Session::Store::Memcached>
+
+=head2 L<Catalyst::Plugin::Session::Test::Store>
+
+=head2 L<Catalyst::Plugin::Singleton>
+
+=head2 L<Catalyst::Plugin::Snippets>
+
+=head2 L<Catalyst::Plugin::SRU>
+
+Allows your controller class to dispatch SRU actions (C<explain>, C<scan>,
+and C<searchRetrieve>) from its own class.
+
+=head2 L<Catalyst::Plugin::StackTrace>
+
+=head2 L<Catalyst::Plugin::Static>
+
+L<Catalyst::Plugin::Static> is a plugin to serve static files from
+C<< $c->config(root => 'foo') >>. Intended chiefly for development
+purposes.
+
+=head2 L<Catalyst::Plugin::Static::Simple>
+
+Serves static files in your application without requiring a single line of
+code.
+
+=head2 L<Catalyst::Plugin::SubRequest>
+
+A plugin to allow subrequests to actions to be made within Catalyst. Nice
+for portal software and such.
+
+=head2 L<Catalyst::Plugin::SuperForm>
+
+An interface to the L<HTML::SuperForm> module, enabling easy HTML form
+creation.
+
+=head2 L<Catalyst::Plugin::Unicode>
+
+Provides a Unicode-aware Catalyst. On request, it decodes all params from
+UTF-8 octets into a sequence of logical characters. On response, it encodes
+the body into UTF-8 octets.
+
+=head2 L<Catalyst::Plugin::Unicode::Encoding>
+
+=head2 L<Catalyst::Plugin::Upload::Basename>
+
+=head2 L<Catalyst::Plugin::Upload::MD5>
+
+=head2 L<Catalyst::Plugin::Upload::MIME>
+
+=head2 L<Catalyst::Plugin::UploadProgress>
+
+=head2 L<Catalyst::Plugin::XMLRPC>
+
+Allows your Controller class to dispatch XMLRPC methods from its own class.
+
+=head1 CONTROLLERS
+
+=head2 L<Catalyst::Controller::HTML::FormFu>
+
+Catalyst integration for <HTML::FormFu>.
+
+=head1 MODELS
+
+=head2 L<Catalyst::Model::CDBI>
+
+The C<Class::DBI> (CDBI) model class.  It is built on top of
+C<Class::DBI::Loader>, which automates the definition of C<Class::DBI>
+sub-classes by scanning the underlying table schemas, setting up columns
+and primary keys.
+
+=head2 L<Catalyst::Model::CDBI::Plain>
+
+A neutral interface to the C<Class::DBI> module which does not attempt
+to automate table setup. It allows the user to manually set up
+C<Class::DBI> classes, either by doing so within the Catalyst model
+classes themselves, or by inheriting from existing C<Class::DBI>
+classes.
+
+=head2 L<Catalyst::Model::DBIC::Schema>
+
+A L<DBIx::Class> model class that can use either an explicit
+L<DBIx::Class::Schema> or one automatically loaded from your database
+via L<DBIx::Class::Schema::Loader>.
+
+=head2 L<Catalyst::Model::EVDB>
+
+=head2 L<Catalyst::Model::File>
+
+=head2 L<Catalyst::Model::Gedcom>
+
+=head2 L<Catalyst::Model::LDAP>
+
+=head2 L<Catalyst::Model::NetBlogger>
+
+=head2 L<Catalyst::Model::Plucene>
+
+A model class for the Plucene search engine.
+
+=head2 L<Catalyst::Model::Proxy>
+
+=head2 L<Catalyst::Model::SVN>
+
+=head2 L<Catalyst::Model::Xapian>
+
+A model class for the Xapian search engine.
+
+=head1 VIEWS
+
+=head2 L<Catalyst::View::Atom::XML>
+
+=head2 L<Catalyst::View::Chart::Strip>
+
+=head2 L<Catalyst::View::CSS::Squish>
+
+=head2 L<Catalyst::View::Embperl>
+
+=head2 L<Catalyst::View::GD::Barcode>
+
+=head2 L<Catalyst::View::GraphViz>
+
+=head2 L<Catalyst::View::HTML::Template>
+
+A view component for rendering pages with L<HTML::Template>.
+
+=head2 L<Catalyst::View::Jemplate>
+
+=head2 L<Catalyst::View::JSON>
+
+=head2 L<Catalyst::View::Mason>
+
+A view component for rendering pages with L<HTML::Mason>.
+
+=head2 L<Catalyst::View::MicroMason>
+
+=head2 L<Catalyst::View::PHP>
+
+=head2 L<Catalyst::View::PSP>
+
+A view component for rendering pages using PSP, a Perl extension
+implementing a JSP-like templating system. See L<Text::PSP>.
+
+=head2 L<Catalyst::View::Petal>
+
+A view component for rendering pages using Petal, the Perl Template
+Attribute Language, an XML-based templating system. See L<Petal>.
+
+=head2 L<Catalyst::View::TT>
+
+A view component for rendering pages with Template Toolkit. See
+L<Template::Manual>.
+
+=head2 L<Catalyst::View::XSLT>
+
+=head2 L<Catalyst::View::vCard>
+
+=head1 Actions
+
+=head2 L<Catalyst::Action::RenderView>
+
+Creates a sane, standard end method for your application.
+
+=head1 OBSOLETE MODULES
+
+=head2 L<Catalyst::Controller::BindLex>
+
+Lets you mark lexical variables with a C<Stashed> attribute, automatically
+passing them to the stash. Discouraged by the author.
+
+=head2 L<Catalyst::Model::DBIC>
+
+Replaced by L<Catalyst::Model::DBIC::Schema>.
+
+=head2 L<Catalyst::Plugin::Authentication::Basic::Remote>
+
+Replaced by L<Catalyst::Plugin::Authentication::Credential::HTTP>.
+
+=head2 L<Catalyst::Plugin::Authentication::CDBI>
+
+Replaced by L<Catalyst::Plugin::Authentication::Store::DBIC>.
+
+=head2 L<Catalyst::Plugin::Authentication::CDBI::Basic>
+
+Replaced by L<Catalyst::Plugin::Authentication::Credential::HTTP>.
+
+=head2 L<Catalyst::Plugin::Authentication::LDAP>
+
+Replaced by L<Catalyst::Plugin::Authentication::Store::LDAP>.
+
+=head2 L<Catalyst::Plugin::Authentication::Simple>
+
+Replaced by L<Catalyst::Plugin::Authentication>.
+
+=head2 L<Catalyst::Plugin::Authorization::CDBI::GroupToken>
+
+=head2 L<Catalyst::Plugin::CDBI::Transaction>
+
+=head2 Catalyst::Plugin::Config::*
+
+The L<Catalyst::Plugin::Config::JSON> and
+L<Catalyst::Plugin::Config::YAML> modules have been replaced by their
+corresponding L<Catalyst::Plugin::ConfigLoader> modules.
+
+=head2 L<Catalyst::Plugin::DefaultEnd>
+
+Replaced by L<Catalyst::Action::RenderView>
+
+=head2 L<Catalyst::Plugin::SanitizeUrl>
+
+=head2 L<Catalyst::Plugin::SanitizeUrl::PrepAction>
+
+=head2 Catalyst::Plugin::Session::*
+
+The L<Catalyst::Plugin::Session::CGISession>,
+L<Catalyst::Plugin::Session::FastMmap>,
+L<Catalyst::Plugin::Session::Flex>, and
+L<Catalyst::Plugin::Session::Manager>
+modules have been replaced by the <Catalyst::Plugin::Session> framework.
+
+=head1 AUTHORS
+
+Catalyst Contributors, see Catalyst.pm
+
+=head1 COPYRIGHT
+
+This library is free software. You can redistribute it and/or modify it under
+the same terms as Perl itself.
+
+=cut
+

Modified: Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Cookbook.pod
===================================================================
--- Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Cookbook.pod	2009-09-01 01:11:45 UTC (rev 11282)
+++ Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Cookbook.pod	2009-09-01 01:12:16 UTC (rev 11283)
@@ -262,27 +262,6 @@
       }
     }
 
-=head2 FIXME
-
-To restrict access to any action, you can use the C<check_user_roles> method:
-
-  sub restricted : Local {
-     my ( $self, $c ) = @_;
-
-     $c->detach("unauthorized")
-       unless $c->check_user_roles( "admin" );
-
-     # do something restricted here
-  }
-
-You can also use the C<assert_user_roles> method. This just gives an
-error if the current user does not have one of the required roles:
-
-  sub also_restricted : Global {
-    my ( $self, $c ) = @_;
-    $c->assert_user_roles( qw/ user admin / );
-  }
-
 =head2 Authentication/Authorization
 
 This is done in several steps:
@@ -369,28 +348,43 @@
 
 =head3 EXAMPLE
 
- package MyApp;
- use Moose;
- use namespace::autoclean;
- extends qw/Catalyst/;
- use Catalyst qw/Authentication
-                 Authorization::Roles/;
+  package MyApp;
+  use Moose;
+  use namespace::autoclean;
+  extends qw/Catalyst/;
+  use Catalyst qw/
+    Authentication
+    Authorization::Roles
+  /;
 
- __PACKAGE__->config(
-    'Plugin::Authentication' => {
-        default => {
-            credential => {
-                class => 'Htpasswd',
-                # FIXME
-            },
-            store => {
-                class => 'Null',
-            },
-        },
-    },
- );
+  __PACKAGE__->config(
+     authentication => {
+         default_realm => 'test',
+         realms => {
+             test => {
+                 credential => {
+                     class          => 'Password',
+                     password_field => 'password',
+                     password_type  => 'self_check',
+                 },
+                 store => {
+                     class => 'Htpasswd',
+                     file => 'htpasswd',
+                 },
+             },
+         },
+     },   
+  );
 
- sub login : Local {
+  package MyApp::Controller::Root;
+  use Moose;
+  use namespace::autoclean;
+  
+  BEGIN { extends 'Catalyst::Controller' }
+  
+  __PACKAGE__->config(namespace => '');
+  
+  sub login : Local {
      my ($self, $c) = @_;
 
      if (    my $user = $c->req->param("user")
@@ -430,24 +424,13 @@
 modifying one's database, which can be problematic if one forgets to
 use the testing instead of production database.
 
-e.g.,
+Alternatively, if you want to authenticate real users, but not have to worry about
+their passwords, you can use L<Catalyst::Authentication::Credential::Testing>
+to force all users to authenticate with a global password.
 
-  # FIXME - Out of date
-  use Catalyst::Plugin::Authentication::Store::Minimal::Backend;
-
-  # Sets up the user `test_user' with password `test_pass'
-  MyApp->default_auth_store(
-    Catalyst::Plugin::Authentication::Store::Minimal::Backend->new({
-      test_user => { password => 'test_pass' },
-    })
-  );
-
-Now, your test code can call C<$c->login('test_user', 'test_pass')> and
-successfully login, without messing with the database at all.
-
 =head3 More information
 
-L<http://search.cpan.org/perldoc?Catalyst::Plugin::Authentication> has a longer explanation.
+L<Catalyst::Plugin::Authentication> has a longer explanation.
 
 =head2 Authorization
 
@@ -2504,28 +2487,11 @@
 
 =head1 AUTHORS
 
-Sebastian Riedel C<sri at oook.de>
+Catalyst Contributors, see Catalyst.pm
 
-Danijel Milicevic C<me at danijel.de>
-
-Viljo Marrandi C<vilts at yahoo.com>
-
-Marcus Ramberg C<mramberg at cpan.org>
-
-Jesse Sheidlower C<jester at panix.com>
-
-Andy Grundman C<andy at hybridized.org>
-
-Chisel Wright C<pause at herlpacker.co.uk>
-
-Will Hawes C<info at whawes.co.uk>
-
-Gavin Henry C<ghenry at perl.me.uk>
-
-Kieren Diment C<kd at totaldatasolution.com>
-
 =head1 COPYRIGHT
 
-This document is free, you can redistribute it and/or modify it
-under the same terms as Perl itself.
+This library is free software. You can redistribute it and/or modify it under
+the same terms as Perl itself.
 
+=cut

Modified: Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/DevelopmentProcess.pod
===================================================================
--- Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/DevelopmentProcess.pod	2009-09-01 01:11:45 UTC (rev 11282)
+++ Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/DevelopmentProcess.pod	2009-09-01 01:12:16 UTC (rev 11283)
@@ -124,11 +124,41 @@
 
     http://dev.catalyst.perl.org/repos/Catalyst
 
-and the git repository can be found at FIXME
+and the git repository can be found at:
 
+    http://git.shadowcat.co.uk/cgi-bin/gitweb.cgi
+    
+FIXME
+
+The Catalyst project is happy to provide subversion/git hosting or mailing lists
+etc for your component project on request.
+
 =head2 New Catalyst extensions
 
 As Catalyst is deliberately designed for extension, there is an ecosystem of
 several hundred Catalyst extensions which can be found on CPAN.
 
-FIXME
+See L<Catalyst::Manual::ExtendingCatalyst> for more information on how to extend
+Catalyst in various ways and how to write CPANable components for Catalyst which
+can be reused in many applications.
+
+It is recommended to post a request for comments to the Catalyst mailing list,
+or ask around in the #catalyst irc channel before starting to implement something,
+as another member of the community is likely to have example or prototype code that
+you can reuse, and members of the community and core team are happy to advise on
+the best way to implement a generic solution to a particular problem.
+
+This could save you duplicate work, and will help you produce a betetr thought out
+and designed extension.
+
+=head1 AUTHORS
+
+Catalyst Contributors, see Catalyst.pm
+
+=head1 COPYRIGHT
+
+This library is free software. You can redistribute it and/or modify it under
+the same terms as Perl itself.
+
+=cut
+

Modified: Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/ExtendingCatalyst.pod
===================================================================
--- Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/ExtendingCatalyst.pod	2009-09-01 01:11:45 UTC (rev 11282)
+++ Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/ExtendingCatalyst.pod	2009-09-01 01:12:16 UTC (rev 11283)
@@ -229,8 +229,7 @@
 
   sub foo : Local Bar('Baz') {
       my ($self, $c) = @_;
-      my $attributes =
-      $self->action_for('foo')->attributes;
+      my $attributes = $self->action_for('foo')->attributes;
       $c->res->body($attributes->{Bar}[0] );
   }
 
@@ -263,12 +262,17 @@
 
 You are advised to create accessors on your component class for your
 configuration values. This is good practice and makes it easier to
-capture configuration key typos. You can do this with the
-C<mk_ro_accessors> method provided to L<Catalyst::Component> via
-L<Class::Accessor::Fast>:
+capture configuration key typos, or missing keys.
 
-  use base 'Catalyst::Controller';
-  __PACKAGE__->mk_ro_accessors('model_name');
+You can do this with L<Moose>:
+
+  package MyApp::Controller::Foo;
+  use Moose;
+  use namespace::autoclean;
+  BEGIN { extends 'Catalyst::Controller' };
+
+  has model_name ( is => 'ro', required => 1 );
+
   ...
   my $model_name = $controller->model_name;
 
@@ -294,10 +298,10 @@
 subclass:
 
   package Catalyst::Action::MyFoo; 
-  use strict;
-
+  use Moose;
+  use namespace::autoclean;
   use MRO::Compat; 
-  use base 'Catalyst::Action';
+  extends 'Catalyst::Action';
 
   sub execute {
       my $self = shift;
@@ -325,10 +329,10 @@
 Mondays:
 
   package Catalyst::Action::OnlyMondays; 
-  use strict;
-
+  use Moose;
+  use namespace::autoclean;
   use MRO::Compat;
-  use base 'Catalyst::Action';
+  extends 'Catalyst::Action';
 
   sub match {
       my $self = shift;
@@ -348,7 +352,11 @@
 classes that you want to specify more conveniently, you can implement
 a component base class providing an attribute handler.
 
-For further information on action classes, please refer to
+It is not possible to use multiple action classes at once, however
+L<Catalyst::Controller::ActionRole> allows you to apply L<Moose Roles|Moose::Role>
+to actions.
+
+For further information on action classes and roles, please refer to
 L<Catalyst::Action> and L<Catalyst::Manual::Actions>.
 
 =head2 Component base classes
@@ -372,8 +380,10 @@
 
 will use C<MyApp::Action::Bar> as action class.
 
-  package MyApp::Base::Controller::FullClass; use strict; use base
-  'Catalyst::Controller';
+  package MyApp::Base::Controller::FullClass;
+  use Moose;
+  use namespace::autoclean;
+  BEGIN { extends 'Catalyst::Controller'; }
 
   sub _parse_FullClass_attr {
       my ($self, $app_class, $action_name, $value, $attrs) = @_;
@@ -386,8 +396,9 @@
 Catalyst attribute:
 
   package MyApp::Controller::Foo;
-  use strict;
-  use base 'MyApp::Base::Controller::FullClass';
+  use Moose;
+  use namespace::autoclean;
+  BEGIN { extends 'MyApp::Base::Controller::FullClass'; }
 
   sub foo : Local FullClass('MyApp::Action::Bar') { ... }
 
@@ -404,22 +415,24 @@
 be inherited by the subclasses. Consider this controller base class:
 
   package MyApp::Base::Controller::ModelBase;
-  use strict;
-  use base 'Catalyst::Controller';
+  use Moose;
+  use namespace::autoclean;
 
+  BEGIN { extends 'Catalyst::Controller'; }
+
   sub list : Chained('base') PathPart('') Args(0) {
       my ($self, $c) = @_;
       my $model = $c->model( $self->{model_name} );
       my $condition = $self->{model_search_condition} || {};
       my $attrs = $self->{model_search_attrs} || {};
       $c->stash(rs => $model->search($condition, $attrs);
-      }
+  }
 
   sub load : Chained('base') PathPart('') CaptureArgs(1) {
       my ($self, $c, $id) = @_;
       my $model = $c->model( $self->{model_name} );
       $c->stash(row => $model->find($id));
-      }
+  }
   1;
 
 This example implements two simple actions. The C<list> action chains
@@ -436,8 +449,10 @@
 with some custom actions by sub-classing it:
 
   package MyApp::Controller::Foo;
-  use strict;
-  use base 'MyApp::Base::Controller::ModelBase';
+  use Moose;
+  use namespace::autoclean;
+  
+  BEGIN { extends 'MyApp::Base::Controller::ModelBase'; }
 
   __PACKAGE__->config( model_name => 'DB::Foo',
                        model_search_condition=> { is_active => 1 },
@@ -504,9 +519,11 @@
 
 Here is some example code for a fictional view:
 
-  package CatalystX::View::MyView;
-  use strict;
-  use base 'Catalyst::View';
+  package Catalyst::View::MyView;
+  use Moose;
+  use namespace::autoclean;
+  
+  extends 'Catalyst::View';
 
   sub process {
       my ($self, $c) = @_;
@@ -557,7 +574,7 @@
 
 B<Please do not> release Catalyst extensions as plugins only to
 provide some functionality application wide. Design it as a controller
-base class or another suiting technique with a smaller scope, so that
+base class or another better suited technique with a smaller scope, so that
 your code only influences those parts of the application where it is
 needed, and namespace clashes and conflicts are ruled out.
 
@@ -605,6 +622,9 @@
       if (!blessed($_[0]) || !$_[0]->isa('Catalyst::Action'));
     return $uri;
   };
+  
+Note that Catalyst will load any Moose Roles in the plugin list,
+and apply them to your application class.
 
 =head2 Factory components with COMPONENT()
 
@@ -623,11 +643,11 @@
 Here is a stub C<COMPONENT> method:
 
   package CatalystX::Component::Foo;
-  use strict;
-  use base 'Catalyst::Component';
+  use Moose;
+  use namespace::autoclean;
+  
+  extends 'Catalyst::Component';
 
-  use MRO::Compat;
-
   sub COMPONENT {
       my $class = shift;
       # Note: $app is like $c, but since the application isn't fully
@@ -652,20 +672,45 @@
 For more information, please see
 L<Catalyst::Component/"COMPONENT($c,$arguments)">.
 
+=head2 Applying roles to parts of the framework
+
+L<CatalystX::RoleApplicator> will allow you to apply Roles to
+the following classes:
+
+=over
+
+=item Request
+
+=item Response
+
+=item Engine
+
+=item Dispatcher
+
+=item Stats
+
+=back
+
+These roles can add new methods to these classes, or wrap preexisting methods.
+
+The namespace for roles like this is C<Catalyst::TraitFor::XXX::YYYY>.
+
+For an example of a CPAN component implemented in this manor, see
+L<Catalyst::TraitFor::Request::BrowserDetect>.
+
 =head1 SEE ALSO
 
 L<Catalyst>, L<Catalyst::Manual::Actions>, L<Catalyst::Component>
 
-=head1 AUTHOR
+=head1 AUTHORS
 
-Robert Sedlacek C<< <rs at 474.at> >>
+Catalyst Contributors, see Catalyst.pm
 
-Jonathan Rockway C<< <jrockway at cpan.org> >>
+=head1 COPYRIGHT
 
-=head1 LICENSE AND COPYRIGHT
-
-This document is free, you can redistribute it and/or modify it under
+This library is free software. You can redistribute it and/or modify it under
 the same terms as Perl itself.
 
 =cut
 
+

Modified: Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Internals.pod
===================================================================
--- Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Internals.pod	2009-09-01 01:11:45 UTC (rev 11282)
+++ Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Internals.pod	2009-09-01 01:12:16 UTC (rev 11283)
@@ -95,12 +95,13 @@
 during the prepare phase, then push the generated response information down to
 the underlying layer during the finalize phase.
 
-=head1 AUTHOR
+=head1 AUTHORS
 
-Sebastian Riedel, C<sri at oook.de>
+Catalyst Contributors, see Catalyst.pm
 
 =head1 COPYRIGHT
 
-This program is free software, you can redistribute it and/or modify it under
+This library is free software. You can redistribute it and/or modify it under
 the same terms as Perl itself.
 
+=cut

Modified: Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Intro.pod
===================================================================
--- Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Intro.pod	2009-09-01 01:11:45 UTC (rev 11282)
+++ Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Intro.pod	2009-09-01 01:12:16 UTC (rev 11283)
@@ -1366,20 +1366,13 @@
 
     http://dev.catalystframework.org/wiki/faq
 
-=head1 AUTHOR
+=head1 AUTHORS
 
-Sebastian Riedel, C<sri at oook.de>
-David Naughton, C<naughton at umn.edu>
-Marcus Ramberg, C<mramberg at cpan.org>
-Jesse Sheidlower, C<jester at panix.com>
-Danijel Milicevic, C<me at danijel.de>
-Kieren Diment, C<kd at totaldatasolution.com>
-Yuval Kogman, C<nothingmuch at woobling.org>
+Catalyst Contributors, see Catalyst.pm
 
 =head1 COPYRIGHT
 
-This program is free software. You can redistribute it and/or modify it
-under the same terms as Perl itself.
+This library is free software. You can redistribute it and/or modify it under
+the same terms as Perl itself.
 
 =cut
-

Deleted: Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Plugins.pod
===================================================================
--- Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Plugins.pod	2009-09-01 01:11:45 UTC (rev 11282)
+++ Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual/Plugins.pod	2009-09-01 01:12:16 UTC (rev 11283)
@@ -1,546 +0,0 @@
-=head1 NAME
-
-Catalyst::Manual::Plugins - Catalyst Plugins (and Components)
-
-=head1 DESCRIPTION
-
-This section lists the some of the plugins and components that are
-available to extend the runtime functionality of Catalyst. Most plugins
-are not distributed with Catalyst but should be available from CPAN.
-They typically require additional modules from CPAN.
-
-This list may well be outdated by the time you read this and some
-plugins may be deprecated or now part of core L<Catalyst>. Be sure to
-check the Catalyst::Plugin namespace for additional plugins and consult
-the mailing list ( L<http://dev.catalyst.perl.org/wiki/Support> ) for
-advice on the current status or preferred use of your chosen
-plugin/framework.
-
-=head1 PLUGINS
-
-=head2 L<Catalyst::Plugin::Account::AutoDiscovery>
-
-Provides Account Auto-Discovery for Catalyst.
-
-=head2 L<Catalyst::Plugin::Acme::Scramble>
-
-Implements a potent meme about how easily we can read scrambled text if
-the first and last letters remain constant. Operates on text/plain and
-text/html served by your Catalyst application.
-
-=head2 L<Catalyst::Plugin::Alarm>
-
-=head2 L<Catalyst::Plugin::AtomPP>
-
-Allows you to dispatch AtomPP methods.
-
-=head2 L<Catalyst::Plugin::AtomServer>
-
-A plugin that implements the necessary bits to make it easy to build an
-Atom API server for any Catalyst-based application.
-
-=head2 L<Catalyst::Plugin::Authentication>
-
-An infrastructure plugin for the Catalyst authentication framework. Now the
-recommended way to do any form of Authentication.
-
-=head2 L<Catalyst::Plugin::Authentication::Credential::Atom>
-
-L<Catalyst::Plugin::Authentication::Credential::Atom> is a plugin which
-implements WSSE and Basic authentication for Catalyst applications using
-L<Catalyst::Plugin::AtomServer>
-
-=head2 L<Catalyst::Plugin::Authentication::Credential::CHAP>
-
-=head2 L<Catalyst::Plugin::Authentication::Credential::Flickr>
-
-Provides authentication via Flickr, using its API.
-
-=head2 L<Catalyst::Plugin::Authentication::Credential::Hatena>
-
-=head2 L<Catalyst::Plugin::Authentication::Credential::HTTP>
-
-Implements HTTP Basic authentication for Catalyst.
-
-=head2 L<Catalyst::Plugin::Authentication::Credential::JugemKey>
-
-=head2 L<Catalyst::Plugin::Authentication::Credential::PAM>
-
-=head2 L<Catalyst::Plugin::Authentication::Credential::Password>
-
-Takes a username (or userid) and a password, and tries various methods of
-comparing a password based on what the chosen store's user objects support.
-Part of the Authentication Framework L<Catalyst::Plugin::Authentication>.
-
-=head2 L<Catalyst::Plugin::Authentication::Credential::TypeKey>
-
-Integrates L<Authen::TypeKey> with L<Catalyst::Plugin::Authentication>.
-
-=head2 L<Catalyst::Plugin::Authentication::OpenID>
-
-L<Catalyst::Plugin::Authentication::OpenID> is a plugin that implements
-support for OpenID authentication. For more information on OpenID, take
-a look at L<http://www.openid.net/>.
-
-=head2 L<Catalyst::Plugin::Authentication::Store>
-
-The core authentication store documentation.
-
-=head2 L<Catalyst::Plugin::Authentication::Store::DBIC>
-
-Does authentication and authorization against a L<DBIx::Class> or
-L<Class::DBI> model.
-
-=head2 L<Catalyst::Plugin::Authentication::Store::Htpasswd>
-
-Uses L<Authen::Htpasswd> to let your application use C<.htpasswd> files for its
-authentication storage.
-
-=head2 L<Catalyst::Plugin::Authentication::Store::HTTP>
-
-=head2 L<Catalyst::Plugin::Authentication::Store::LDAP>
-
-Authenticates users using an LDAP server.
-
-=head2 L<Catalyst::Plugin::Authentication::Store::Minimal>
-
-Lets you create a very quick and dirty user database in your application's
-config hash. Great for getting up and running quickly.
-
-=head2 L<Catalyst::Plugin::Authentication::User::Hash>
-
-An easy authentication user object based on hashes.
-See L<Catalyst::Plugin::Authentication::Store::Minimal> for more info.
-
-=head2 L<Catalyst::Plugin::Authorization::ACL>
-
-This module provides Access Control List style path protection, with arbitrary
-rules for L<Catalyst> applications. It operates only on the Catalyst private
-namespace, at least at the moment.
-
-=head2 L<Catalyst::Plugin::Authorization::Roles>
-
-L<Catalyst::Plugin::Authorization::Roles> provides role based authorization
-for Catalyst based on L<Catalyst::Plugin::Authentication>.
-
-=head2 L<Catalyst::Plugin::AutoSession>
-
-=head2 L<Catalyst::Plugin::Browser>
-
-Extends L<Catalyst::Request> by adding the capability of browser
-detection.  It returns an instance of L<HTTP::BrowserDetect>, which lets
-you get information from the client's user agent.
-
-=head2 Catalyst::Plugin::Cache::FastMmap, FileCache, BerkeleyDB, and Memcached
-
-L<Catalyst::Plugin::Cache::FastMmap>,
-L<Catalyst::Plugin::Cache::FileCache>,
-L<Catalyst::Plugin::Cache::BerkeleyDB>, and
-L<Catalyst::Plugin::Cache::Memcached> all provide a cache method
-enabling easy access to a shared cache.
-
-=head2 L<Catalyst::Plugin::Captcha>
-
-=head2 L<Catalyst::Plugin::CGI::Untaint>
-
-=head2 L<Catalyst::Plugin::Charsets::Japanese>
-
-=head2 L<Catalyst::Plugin::Compress::Bzip2>
-
-=head2 L<Catalyst::Plugin::Compress::Deflate>
-
-=head2 L<Catalyst::Plugin::Compress::Gzip>
-
-=head2 L<Catalyst::Plugin::Compress::Zlib>
-
-=head2 L<Catalyst::Plugin::ConfigLoader>
-
-Provides a standard method for loading config files. Support
-exists for various formats. See
-L<Catalyst::Plugin::ConfigLoader::General>
-L<Catalyst::Plugin::ConfigLoader::INI>,
-L<Catalyst::Plugin::ConfigLoader::JSON>,
-L<Catalyst::Plugin::ConfigLoader::Perl>,
-L<Catalyst::Plugin::ConfigLoader::XML>, and
-L<Catalyst::Plugin::ConfigLoader::YAML>
-
-=head2 L<Catalyst::Plugin::ConfigurablePathTo>
-
-=head2 L<Catalyst::Plugin::Continuation>
-
-=head2 L<Catalyst::Plugin::DateTime>
-
-=head2 L<Catalyst::Action::RenderView>
-
-Creates a sane, standard end method for your application.
-
-=head2 L<Catalyst::Plugin::Devel::InPageLogs>
-
-=head2 L<Catalyst::Plugin::Devel::InPageLogs::Log>
-
-=head2 L<Catalyst::Plugin::Dojo>
-
-=head2 L<Catalyst::Plugin::Dumper>
-
-=head2 L<Catalyst::Plugin::Email>
-
-Sends email with L<Email::Send> and L<Email::MIME::Creator>.
-
-=head2 L<Catalyst::Plugin::Email::Japanese>
-
-=head2 L<Catalyst::Plugin::Email::Page>
-
-=head2 L<Catalyst::Plugin::EmailValid>
-
-=head2 L<Catalyst::Plugin::FillInForm>
-
-A plugin based on C<HTML::FillInForm>, which describes itself as a module
-to automatically insert data from a previous HTML form into the HTML input,
-textarea, radio buttons, checkboxes, and select tags.  C<HTML::FillInForm>
-is a subclass of C<HTML::Parser> and uses it to parse the HTML and insert
-the values into the form tags.
-
-=head2 L<Catalyst::Plugin::Flavour>
-
-=head2 L<Catalyst::Plugin::FormValidator>
-
-A form validator plugin that uses L<Data::FormValidator> to validate and
-set up form data from your request parameters. It's a quite thin wrapper
-around that module, so most of the relevant information can be found there.
-
-=head2 L<Catalyst::Plugin::FormValidator::Simple>
-
-=head2 L<Catalyst::Plugin::Geography>
-
-Allows you to retrieve various kinds of geographical information. You can
-retrieve the country or code from the current user, from a given IP
-address, or from a given hostname.
-
-=head2 L<Catalyst::Plugin::Geography::Implementation>
-
-=head2 L<Catalyst::Plugin::HashedCookies>
-
-=head2 L<Catalyst::Plugin::HTML::Scrubber>
-
-=head2 L<Catalyst::Plugin::HTML::Widget>
-
-=head2 L<Catalyst::Plugin::I18N>
-
-An internationalization plugin for Catalyst. Supports C<mo>/C<po> files
-and Maketext classes under your application's I18N namespace.
-
-=head2 L<Catalyst::Plugin::JSONRPC>
-
-=head2 L<Catalyst::Plugin::Markdown>
-
-=head2 L<Catalyst::Plugin::Message>
-
-=head2 L<Catalyst::Plugin::MobileAgent>
-
-=head2 L<Catalyst::Plugin::Observe>
-
-Provides the ability to register AOP-like callbacks to specific Engine
-events. Subclasses L<Class::Publisher>.
-
-=head2 L<Catalyst::Plugin::OrderedParams>
-
-Adjusts the way that parameters operate, causing them to appear in the same
-order they were submitted by the browser. This can be useful for creating
-things such as email forms.
-
-=head2 L<Catalyst::Plugin::PageCache>
-
-Helps improve the performance of slow or frequently accessed pages by
-caching the entire output of your page. Subsequent requests to the page
-will receive the page very quickly from cache.
-
-=head2 L<Catalyst::Plugin::Params::Nested>
-
-=head2 L<Catalyst::Plugin::Params::Nested::Expander>
-
-=head2 L<Catalyst::Plugin::Pluggable>
-
-A plugin for pluggable Catalyst applications.
-
-=head2 L<Catalyst::Plugin::Prototype>
-
-A plugin for the Prototype JavaScript library. This Plugin allows you to
-easily implement AJAX functionality without actually knowing Javascript.
-
-=head2 L<Catalyst::Plugin::Redirect>
-
-=head2 L<Catalyst::Plugin::RequestToken>
-
-=head2 L<Catalyst::Plugin::RequireSSL>
-
-Use this if you would like to force visitors to access certain pages using
-only SSL mode. An attempt to access the page in non-SSL mode will receive a
-redirect into SSL mode. Useful for login pages, shopping carts, user
-registration forms, and other sensitive data.
-
-=head2 L<Catalyst::Plugin::Scheduler>
-
-=head2 L<Catalyst::Plugin::Session>
-
-The L<Catalyst::Plugin::Session> series of modules provide an easy way to
-include session handling in an application. You can choose from several
-different backend storage methods and combine that with your choice of
-client-side storage methods.
-
-=head2 L<Catalyst::Plugin::Session::PerUser>
-
-=head2 L<Catalyst::Plugin::Session::State>
-
-=head2 L<Catalyst::Plugin::Session::State::Cookie>
-
-=head2 L<Catalyst::Plugin::Session::State::URI>
-
-=head2 L<Catalyst::Plugin::Session::Store>
-
-=head2 L<Catalyst::Plugin::Session::Store::CDBI>
-
-=head2 L<Catalyst::Plugin::Session::Store::DBI>
-
-=head2 L<Catalyst::Plugin::Session::Store::DBIC>
-
-=head2 L<Catalyst::Plugin::Session::Store::Dummy>
-
-=head2 L<Catalyst::Plugin::Session::Store::FastMmap>
-
-=head2 L<Catalyst::Plugin::Session::Store::File>
-
-=head2 L<Catalyst::Plugin::Session::Store::Memcached>
-
-=head2 L<Catalyst::Plugin::Session::Test::Store>
-
-=head2 L<Catalyst::Plugin::Singleton>
-
-=head2 L<Catalyst::Plugin::Snippets>
-
-=head2 L<Catalyst::Plugin::SRU>
-
-Allows your controller class to dispatch SRU actions (C<explain>, C<scan>,
-and C<searchRetrieve>) from its own class.
-
-=head2 L<Catalyst::Plugin::StackTrace>
-
-=head2 L<Catalyst::Plugin::Static>
-
-L<Catalyst::Plugin::Static> is a plugin to serve static files from
-C<< $c->config->{root} >>. Intended chiefly for development
-purposes.
-
-=head2 L<Catalyst::Plugin::Static::Simple>
-
-Serves static files in your application without requiring a single line of
-code. This plugin is now included in the core Catalyst distribution.
-
-=head2 L<Catalyst::Plugin::SubRequest>
-
-A plugin to allow subrequests to actions to be made within Catalyst. Nice
-for portal software and such.
-
-=head2 L<Catalyst::Plugin::SuperForm>
-
-An interface to the L<HTML::SuperForm> module, enabling easy HTML form
-creation.
-
-=head2 L<Catalyst::Plugin::Textile>
-
-A persistent Textile processor for Catalyst that uses C<Text::Textile>, a
-Perl-based implementation of Dean Allen's Textile syntax. Textile is
-shorthand for doing common formatting tasks (see L<http://textism.com>).
-
-=head2 L<Catalyst::Plugin::Unicode>
-
-Provides a Unicode-aware Catalyst. On request, it decodes all params from
-UTF-8 octets into a sequence of logical characters. On response, it encodes
-the body into UTF-8 octets.
-
-=head2 L<Catalyst::Plugin::Unicode::Encoding>
-
-=head2 L<Catalyst::Plugin::Upload::Basename>
-
-=head2 L<Catalyst::Plugin::Upload::MD5>
-
-=head2 L<Catalyst::Plugin::Upload::MIME>
-
-=head2 L<Catalyst::Plugin::UploadProgress>
-
-=head2 L<Catalyst::Plugin::XMLRPC>
-
-Allows your Controller class to dispatch XMLRPC methods from its own class.
-
-=head1 CONTROLLERS
-
-=head2 L<Catalyst::Controller::HTML::FormFu>
-
-Catalyst integration for <HTML::FormFu>.
-
-=head1 MODELS
-
-=head2 L<Catalyst::Model::CDBI>
-
-The C<Class::DBI> (CDBI) model class.  It is built on top of
-C<Class::DBI::Loader>, which automates the definition of C<Class::DBI>
-sub-classes by scanning the underlying table schemas, setting up columns
-and primary keys.
-
-=head2 L<Catalyst::Model::CDBI::Plain>
-
-A neutral interface to the C<Class::DBI> module which does not attempt
-to automate table setup. It allows the user to manually set up
-C<Class::DBI> classes, either by doing so within the Catalyst model
-classes themselves, or by inheriting from existing C<Class::DBI>
-classes.
-
-=head2 L<Catalyst::Model::DBIC::Schema>
-
-A L<DBIx::Class> model class that can use either an explicit
-L<DBIx::Class::Schema> or one automatically loaded from your database
-via L<DBIx::Class::Schema::Loader>.
-
-=head2 L<Catalyst::Model::EVDB>
-
-=head2 L<Catalyst::Model::File>
-
-=head2 L<Catalyst::Model::Gedcom>
-
-=head2 L<Catalyst::Model::LDAP>
-
-=head2 L<Catalyst::Model::NetBlogger>
-
-=head2 L<Catalyst::Model::Plucene>
-
-A model class for the Plucene search engine.
-
-=head2 L<Catalyst::Model::Proxy>
-
-=head2 L<Catalyst::Model::SVN>
-
-=head2 L<Catalyst::Model::Xapian>
-
-A model class for the Xapian search engine.
-
-=head1 VIEWS
-
-=head2 L<Catalyst::View::Atom::XML>
-
-=head2 L<Catalyst::View::Chart::Strip>
-
-=head2 L<Catalyst::View::CSS::Squish>
-
-=head2 L<Catalyst::View::Embperl>
-
-=head2 L<Catalyst::View::GD::Barcode>
-
-=head2 L<Catalyst::View::GraphViz>
-
-=head2 L<Catalyst::View::HTML::Template>
-
-A view component for rendering pages with L<HTML::Template>.
-
-=head2 L<Catalyst::View::Jemplate>
-
-=head2 L<Catalyst::View::JSON>
-
-=head2 L<Catalyst::View::Mason>
-
-A view component for rendering pages with L<HTML::Mason>.
-
-=head2 L<Catalyst::View::MicroMason>
-
-=head2 L<Catalyst::View::PHP>
-
-=head2 L<Catalyst::View::PSP>
-
-A view component for rendering pages using PSP, a Perl extension
-implementing a JSP-like templating system. See L<Text::PSP>.
-
-=head2 L<Catalyst::View::Petal>
-
-A view component for rendering pages using Petal, the Perl Template
-Attribute Language, an XML-based templating system. See L<Petal>.
-
-=head2 L<Catalyst::View::TT>
-
-A view component for rendering pages with Template Toolkit. See
-L<Template::Manual>.
-
-=head2 L<Catalyst::View::XSLT>
-
-=head2 L<Catalyst::View::vCard>
-
-=head1 OBSOLETE MODULES
-
-=head2 L<Catalyst::Controller::BindLex>
-
-Lets you mark lexical variables with a C<Stashed> attribute, automatically
-passing them to the stash. Discouraged by the author.
-
-=head2 L<Catalyst::Model::DBIC>
-
-Replaced by L<Catalyst::Model::DBIC::Schema>.
-
-=head2 L<Catalyst::Plugin::Authentication::Basic::Remote>
-
-Replaced by L<Catalyst::Plugin::Authentication::Credential::HTTP>.
-
-=head2 L<Catalyst::Plugin::Authentication::CDBI>
-
-Replaced by L<Catalyst::Plugin::Authentication::Store::DBIC>.
-
-=head2 L<Catalyst::Plugin::Authentication::CDBI::Basic>
-
-Replaced by L<Catalyst::Plugin::Authentication::Credential::HTTP>.
-
-=head2 L<Catalyst::Plugin::Authentication::LDAP>
-
-Replaced by L<Catalyst::Plugin::Authentication::Store::LDAP>.
-
-=head2 L<Catalyst::Plugin::Authentication::Simple>
-
-Replaced by L<Catalyst::Plugin::Authentication>.
-
-=head2 L<Catalyst::Plugin::Authorization::CDBI::GroupToken>
-
-=head2 L<Catalyst::Plugin::CDBI::Transaction>
-
-=head2 Catalyst::Plugin::Config::*
-
-The L<Catalyst::Plugin::Config::JSON> and
-L<Catalyst::Plugin::Config::YAML> modules have been replaced by their
-corresponding L<Catalyst::Plugin::ConfigLoader> modules.
-
-=head2 L<Catalyst::Plugin::DefaultEnd>
-
-Replaced by L<Catalyst::Action::RenderView>
-
-=head2 L<Catalyst::Plugin::SanitizeUrl>
-
-=head2 L<Catalyst::Plugin::SanitizeUrl::PrepAction>
-
-=head2 Catalyst::Plugin::Session::*
-
-The L<Catalyst::Plugin::Session::CGISession>,
-L<Catalyst::Plugin::Session::FastMmap>,
-L<Catalyst::Plugin::Session::Flex>, and
-L<Catalyst::Plugin::Session::Manager>
-modules have been replaced by the <Catalyst::Plugin::Session> framework.
-
-=head1 AUTHORS
-
-Andrew Ford E<lt>A.Ford at ford-mason.co.ukE<gt>
-
-Gavin Henry E<lt>ghenry at suretecsystems.comE<gt>
-
-Jesse Sheidlower E<lt>jester at panix.comE<gt>
-
-Marcus Ramberg E<lt>mramberg at cpan.orgE<gt>
-
-David Kamholz E<lt>dkamholz at cpan.orgE<gt>
-
-=head1 COPYRIGHT
-
-This program is free software, you can redistribute it and/or modify it under
-the same terms as Perl itself.

Modified: Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual.pm
===================================================================
--- Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual.pm	2009-09-01 01:11:45 UTC (rev 11282)
+++ Catalyst-Manual/5.80/trunk/lib/Catalyst/Manual.pm	2009-09-01 01:12:16 UTC (rev 11283)
@@ -98,6 +98,17 @@
 
 =back
 
+=head1 AUTHORS
+
+Catalyst Contributors, see Catalyst.pm
+
+=head1 COPYRIGHT
+
+This library is free software. You can redistribute it and/or modify it under
+the same terms as Perl itself.
+
 =cut
 
+=cut
+
 1;




More information about the Catalyst-commits mailing list