Commit | Line | Data |
6c18e892 |
1 | =head1 Deltachanges from 5.7 to 5.8 |
2 | |
b31499bc |
3 | |
4 | This is an overview of the user visible changes in 5.8 |
5 | |
6 | =head2 Deprecations |
7 | |
8 | ::[MVC]:: style naming scheme has been deprecated and will warn |
9 | |
10 | |
11 | - Use Class::C3::Adopt::NEXT (rafl) |
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 | |
22 | =head2 Dispatcher |
23 | |
24 | - visit and go now takes CaptureArgs |
25 | |
6c18e892 |
26 | - Change the $c->visit and $c->go methods to optionally take |
27 | CaptureArgs, making them useful to call ActionChains with (t0m) |
b31499bc |
28 | |
29 | - Fix forwarding to Catalyst::Action objects (Rafael Kitover). |
30 | |
31 | =head2 restarter |
32 | |
33 | - Non-naive implementation of making mutable on restart using |
34 | B::Hooks::OP::Check::StashChange if installed (t0m) |
35 | For a restart the immutable Moose-objects need to turn back to mutable. |
36 | With L<B::Hooks::OP::Check::StashChange> installed this will be done. |
37 | |
38 | = head2 $c->uri_for_action method. (hdp) |
39 | |
6c18e892 |
40 | A private path to the Catalyst action you want to create a URI for. |
41 | This is a shortcut for calling C<< $c->dispatcher->get_action_by_path($path) >> |
42 | and passing the resulting C<$action> and the remaining arguments to |
43 | C<< $c->uri_for >>. |
44 | |
b31499bc |
45 | |
46 | =head2 Logging |
47 | |
48 | - Make log levels additive, and add documentation and tests |
49 | for the setup_log method, which previously had none. |
50 | Sewn together by t0m from two patches provided by David E. Wheeler |
51 | |
52 | =head2 Consequences of the Moose backend |
53 | |
6c18e892 |
54 | - Use MooseX::MethodAttributes::Inheritable to contain action |
55 | attributes. This means that attributes are now represented in the MOP, |
56 | allowing method modifiers on actions to work as expected. (rafl) |
57 | - Provide a reasonable API in Catalyst::Controller for working with |
58 | and registering actions, allowing a controller sub-class to replace |
59 | subroutine attributes for action declerations with an alternate |
60 | syntax. (rafl/hdp) |
6c18e892 |
61 | - Refactor capturing of $app from Catalyst::Controller into |
62 | Catalyst::Component::ApplicationAttribute for easier reuse in other |
63 | components (Florian Ragwitz) |
64 | - Make MyApp immutable at the end of the scope after the setup |
65 | method is called, fixing issues with plugins which have their |
b31499bc |
66 | own new methods by inlining a constructor on MyApp (t0m) |
67 | - Instantiate correct sub-class of Moose::Meta::Class for non-Moose |
68 | components where Catalyst forces the creation of a metaclass instance. |
69 | |
70 | =head2 Test Suite |
6c18e892 |
71 | |
6c18e892 |
72 | - Change Catalyst::Test to use Sub::Exporter (Florian Ragwitz). |
73 | - Port to Moose |
b31499bc |
74 | - Support mocking virtualhosts in test suite () |
75 | - Add methods like action_ok and action_redirect to write |
76 | more compact tests |
77 | |
78 | =head2 Catalyst::Response->print() |
79 | |
6c18e892 |
80 | Prints @data to the output stream, separated by $,. This lets you pass |
81 | the response object to functions that want to write to an L<IO::Handle>. |
82 | |