Back-compat investigation: - Get engines tested: - Catalyst-Engine-Zeus - Catalyst-Engine-XMPP2 - Catalyst-Engine-HTTPEngine - Catalyst-Engine-HTTP-Prefork - Catalyst-Engine-SCGI - Catalyst-Engine-Wx Known issues: - CatalystX-Imports, Class::MOP doesn't consider anon subs in the symbol table as methods, tests + fix, or explanation and documentation? (rafl & phaylon) - Catalyst-Log-Log4perl Deep recursion on subroutine "MockApp::setup" (rafl) - Catalyst-Plugin-Cache dies due to mk_accessors('meta') - CatalystX-CRUD and CatalystX-CRUD-ModelAdapter-DBIC fail tests against 5.80 (karpet) - Catalyst-Plugin-Authorization-ACL fails as Catalyst::Dispatcher::_do_forward does not fix arguments if you throw an exception. Needs a test case (Caelum) - Catalyst::Plugin::Authentication new release. - Catalyst::Action::RenderView - Catalyst::Plugin::DebugCookie - Conflict with each other: $c->config->{debug}->{foo} = 'bar' now breaks, unsure why.. - Catalyst::Component::ACCEPT_CONTEXT - Having a COMPONENT method after Catalyst::Component::COMPONENT used to work, and will still delegate (and warn), but then NEXT::COMPONENT will not dtrt if you re-dispatch again (NEXT would seemingly go back to the start?).. See Reaction test suite for example of this happening. FIXME - Also don't think this correctly delegates - $c appears missing. - Fix memory leaks (I already tried Devel::Leak::Object, but no joy). - In 5.70, you can have a component which doesn't inherit from ::Component, and has no new method, and it'll do the right thing for you. We should still support that, but warn for/deprecate it so it can go for 5.9X... This obviously needs better tests :/ Cleanups: - Allow turning deprecated warnings off with use Catalyst qw/-NoDeprecationWarnings/ - Update Test suite to not assume MyApp ISA Controller - After that set up attr handlers that will output helpful error messages when you do it as well as how to fix it. - Eliminate all instances of $instance->{$key}, I think the only thing left is lib/Catalyst/Engine/HTTP.pm: $self->{inputbuf}, which I haven't touched as it is used as an lvalue in a lot of places (t0m) - Find whatever in the test suite craps a file called GLOB(0xfoo) onto my disk and fix it. (Believed to be in the optional TEST_HTTP tests?) (t0m) Documentation: - extends in components with attributes must be inside a BEGIN block. - How to write Moosified Catalyst components. - Manual / Tutorial updates - Fix the Roadmap to be less full of lies. - With 5.7 people did extends qw/Moose::Object Catalyst::Component/, now Catalyst::Component isa Moose::Object so now isa doesn't linearize anymore, docs of what doesn't work and why (rafl) - Document all other known failure cases / upgrade issues. - Tidy up / finish off incompatibility warnings etc. Reported bugs: - Issues with TWMC not being loaded when it used to be in 5.70 (Bill Moseley) Profiling: - vs 5.70 and optimisation as needed. Tests: - Moosified test application? - Test warning from back-compat methods in Catalyst::Dispatcher - Test warnings from plugin method on Catalyst