Cleanups / formatting
[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
796a8358 7=over
b31499bc 8
796a8358 9=item ::[MVC]:: style naming scheme has been deprecated and will warn
b31499bc 10
796a8358 11=item Use Class::C3::Adopt::NEXT (rafl)
b31499bc 12
13Catalyst 5.80 uses L<Algorithm::C3> method dispatch order. This is built into
14perl 5.10 (new pragma mro), and comes via L<Class::C3> for perl 5.8. This
15replaces L<NEXT> with L<Class::C3::Adopt::NEXT>, forcing all components to
16resolve methods using C3, rather than the unpredictable dispatch order of
17L<NEXT>. Please "use MRO::Compat" in both perl 5.8 and perl 5.10 to activate
18this feature.
19- Disallow writing to config after setup and disallow calling setup more
20than once (rafl)
21
796a8358 22=item Dispatcher methods
23
24=back
25
b31499bc 26=head2 Dispatcher
27
6171ddd5 28Fix forwarding to Catalyst::Action objects (Rafael Kitover).
b31499bc 29
6171ddd5 30=head2 Restarter
b31499bc 31
6171ddd5 32The development server restarter has been improved to be compatible with
33immutable Moose classes, and also to optionally use
34L<B::Hooks::OP::Check::StashChange> to handle more complex application layouts
35correctly.
b31499bc 36
6171ddd5 37=head2 $c->uri_for_action method. (hdp)
b31499bc 38
6c18e892 39A private path to the Catalyst action you want to create a URI for.
40This is a shortcut for calling C<< $c->dispatcher->get_action_by_path($path) >>
41and passing the resulting C<$action> and the remaining arguments to
42C<< $c->uri_for >>.
43
b31499bc 44=head2 Logging
45
6171ddd5 46Log levels have been madeadditive, and add documentation to the setup_log
47method.
b31499bc 48
49=head2 Consequences of the Moose backend
50
796a8358 51=over
52
53=item *
54
55Use MooseX::MethodAttributes::Inheritable to contain action
56attributes. This means that attributes are now represented in the MOP,
57allowing method modifiers on actions to work as expected. (rafl)
58
59=item *
60
61Provide a reasonable API in Catalyst::Controller for working with
62and registering actions, allowing a controller sub-class to replace
63subroutine attributes for action declerations with an alternate
64syntax. (rafl/hdp)
65
66=item *
67
68Refactor capturing of $app from Catalyst::Controller into
69Catalyst::Component::ApplicationAttribute for easier reuse in other
70components (Florian Ragwitz)
71
72=item *
73
74Make MyApp immutable at the end of the scope after the setup
75method is called, fixing issues with plugins which have their
76own new methods by inlining a constructor on MyApp (t0m)
77
78=back
79
b31499bc 80=head2 Test Suite
6c18e892 81
6c18e892 82 - Change Catalyst::Test to use Sub::Exporter (Florian Ragwitz).
83 - Port to Moose
b31499bc 84 - Support mocking virtualhosts in test suite ()
85 - Add methods like action_ok and action_redirect to write
86 more compact tests
87
88=head2 Catalyst::Response->print()
89
6c18e892 90Prints @data to the output stream, separated by $,. This lets you pass
91the response object to functions that want to write to an L<IO::Handle>.
92