X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=TODO;h=141b67b4628d1b676f7c4364b9da5e37c6d209db;hp=01c387336b066c235beaa33e4959bac7628b2a47;hb=139b894c380e870c0b25ea20749cc6f689d93fa0;hpb=54bee50ff7b3e30e2c370eb6249e021229cb9c6b diff --git a/TODO b/TODO index 01c3873..141b67b 100644 --- a/TODO +++ b/TODO @@ -1,93 +1,49 @@ -Pending patches: - - meta test for MX::Emulate::CAF needed by Catalyst::Plugin::Cache::Curried - -Back-compat investigation / known issues: - - - Get engines tested: - - Catalyst-Engine-Zeus - - Catalyst-Engine-XMPP2 - - Catalyst-Engine-HTTPEngine - - Catalyst-Engine-HTTP-Prefork - - Catalyst-Engine-SCGI - - Catalyst-Engine-Wx - - - CatalystX-Imports, Class::MOP doesn't consider anon subs in the symbol - table as methods, tests + fix, or explanation and documentation? - (rafl & phaylon) - - - Run another round of repository smokes against latest 5.80 trunk, manually - go through all the things which are broken (t0m). - - - Catalyst-Plugin-Session-State-Cookie - Catalyst-Plugin-Session-Store-FastMmap - Catalyst-Plugin-Session-PerUser - Catalyst-Plugin-Session-Store-File - Catalyst-Authentication-Credential-HTTP - Catalyst-Plugin-SmartURI - - All fixed by Scope::Upper - - - 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. - - - Deprecation/Upgrade notice in Catalyst Makefile.PL for known broken - versions of plugins. - - - Issues with TWMC not being loaded when it used to be in 5.70 - (Bill Moseley) - - - 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: - - - 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) - - - Deprecate runtime plugins with warning. - -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) - -Profiling: - - - vs 5.70 and optimisation as needed. - -Tests: - - - Moosified test application? - - - Test warning from back-compat methods in Catalyst::Dispatcher +Known Bugs: + + - Bug ->go or ->visit causes actions which have Args or CaptureArgs called + twice when called via ->go or ->visit. + + Test app: http://github.com/bobtfish/catalyst-app-bug-go_chain/tree/master + +Compatibility warnings to add: + + - $self->config should warn as config should only ever be called as a + class method. + +Proposed functionality / feature additions: + + - Log setup needs to be less lame, so Catalyst::Plugin::Log::* can die + in a fire. Having $c->log_class would be a good start. kane volunteered + to do some of this. + + Simple example: Catalyst::Plugin::Log::Colorful should just be a + subclass of Catalyst::Log, no ::Plugin:: needed. + + See also: Catalyst::Plugin::Log::Dispatch and + http://github.com/willert/catalyst-plugin-log4perl-simple/tree + + Fixes to component interfaces to deal with anon classes: + +22:16 <@mst> t0m: explain what breaks +22:16 <@mst> I'm not 100% sure we have the same problem in mind +22:17 <@t0m> well, various shit in Catalyst utils to resolve app from MyApp::Controller::Foo breaks +22:17 <@mst> Caelum: http://scsys.co.uk:8001/31240 +22:17 <@mst> t0m: the trick would be to not need to do that +22:17 <@mst> t0m: $self->_application should be fine +22:18 <@t0m> $action->class can't be fed back into $c->component() +22:18 <@t0m> which breaks ::REST +22:18 <@mst> right +22:18 <@mst> we need to +22:19 <@mst> (a) add an ->_component_name or similar method to controllers +22:19 <@mst> (b) pass action objects either that or the controller +22:20 <@t0m> do you have a controller calling $action->dispatch? Course you must, the action lives in a controller.. +22:21 <@mst> and that doesn't matter anyway +22:21 <@mst> dispatch has $c +22:21 <@mst> it needs to do +22:21 <@mst> $c->component($self->_component_name) +22:21 <@mst> and that _component_name needs to come from the controller at register_actions time +22:22 <@t0m> confound: Oi, please to be releasing my Action::REST fixes, I'm about to do more.. +22:22 <@t0m> mst: right, gotcha +22:22 <@mst> note that needs to happen in core +22:22 <@mst> then actions can use that instead of $self->class +22:22 <@mst> and shit will work