Re-arrange, reformatting, add a coupla bits, remove a couple of non-relevant bits
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Delta.pod
CommitLineData
6c18e892 1=head1 Deltachanges from 5.7 to 5.8
2
b31499bc 3This is an overview of the user visible changes in 5.8
4
5=head2 Deprecations
6
e88235ff 7Please see L<Catalyst::Upgrading> for a full description of how changes in the
8framework may affect your application.
9
10Below is a brief list of features which have been deprecated in this release:
11
796a8358 12=over
b31499bc 13
796a8358 14=item ::[MVC]:: style naming scheme has been deprecated and will warn
b31499bc 15
e88235ff 16=item NEXT is deprecated for all applications and components, use MRO::Compat
b31499bc 17
e88235ff 18=item Dispatcher methods which are an implementation detail made private, public versions now warn.
b31499bc 19
e88235ff 20=item MyApp->plugin method is deprecated, use L<Catalyst::Model::Adaptor> instead.
796a8358 21
0a3b8de0 22=item __PACKAGE__->mk_accessors() is supported for backward compatibility only, use Moose attributes instead in new code.
23
796a8358 24=back
25
0a3b8de0 26=head2 New features
27
28=head3 Dispatcher
b31499bc 29
6171ddd5 30Fix forwarding to Catalyst::Action objects (Rafael Kitover).
b31499bc 31
0a3b8de0 32=head3 Restarter
b31499bc 33
6171ddd5 34The development server restarter has been improved to be compatible with
35immutable Moose classes, and also to optionally use
36L<B::Hooks::OP::Check::StashChange> to handle more complex application layouts
37correctly.
b31499bc 38
0a3b8de0 39=head3 $c->uri_for_action method. (hdp)
b31499bc 40
6c18e892 41A private path to the Catalyst action you want to create a URI for.
42This is a shortcut for calling C<< $c->dispatcher->get_action_by_path($path) >>
43and passing the resulting C<$action> and the remaining arguments to
44C<< $c->uri_for >>.
45
0a3b8de0 46=head3 Logging
b31499bc 47
6171ddd5 48Log levels have been madeadditive, and add documentation to the setup_log
49method.
b31499bc 50
0a3b8de0 51=head3 L<Catalyst::Test>
52
53=over
54
55=item Change to use L<Sub::Exporter>.
56
57=item Port to L<Moose>.
58
59=item Support mocking multiple virtual hosts
60
61=item New methods like action_ok and action_redirect to write more compact tests
62
63=back
64
65=head3 $c->response->print()
66
67Prints @data to the output stream, separated by $,. This lets you pass
68the response object to functions that want to write to an L<IO::Handle>.
69
b31499bc 70=head2 Consequences of the Moose backend
71
796a8358 72=over
73
74=item *
75
0a3b8de0 76L<MooseX::MethodAttributes::Inheritable> used to contain action
796a8358 77attributes. This means that attributes are now represented in the MOP,
0a3b8de0 78allowing method modifiers on actions to work as expected.
796a8358 79
80=item *
81
0a3b8de0 82There is a reasonable API in Catalyst::Controller for working with
796a8358 83and registering actions, allowing a controller sub-class to replace
84subroutine attributes for action declerations with an alternate
0a3b8de0 85syntax.
796a8358 86
87=item *
88
0a3b8de0 89Refactored capturing of $app from L<Catalyst::Controller> into
90L<Catalyst::Component::ApplicationAttribute> for easier reuse in other
91components
796a8358 92
93=item *
94
0a3b8de0 95Your application is forced to become immutable after the setup
96method is called.
796a8358 97
98=back
99