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