Re-write Roadmap to not be lies, change warns on component resolution to mention...
Tomas Doran [Mon, 12 Jan 2009 03:52:28 +0000 (03:52 +0000)]
TODO
lib/Catalyst.pm
lib/Catalyst/Engine/HTTP.pm
lib/Catalyst/ROADMAP.pod
lib/Catalyst/Utils.pm

diff --git a/TODO b/TODO
index 03dd432..73b33b6 100644 (file)
--- a/TODO
+++ b/TODO
@@ -30,21 +30,6 @@ Known issues:
 
 Cleanups:
 
-18:01 <@mst> hmm. I think that warning should show what it found
-18:01 <@mst> and say "you probably called ->model("Sessions") when you meant ->model("DB::Sessions")" or whatever
-18:05 <@mst> unsafe_component_use_ok
-18:05 <@mst> like we did for BindLex
-
-
-
-  - 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)
 
@@ -56,8 +41,6 @@ Documentation:
 
        - How to write Moosified Catalyst components.
 
-   - Fix the Roadmap to be less full of lies.
-
    - Catalyst/Upgrading.pod
 
 Reported bugs:
@@ -72,6 +55,4 @@ Profiling:
 Tests:
 
   - Moosified test application?
-  
-  - Test & document warnings from plugin method on Catalyst
 
index aafee0b..80ba3f8 100644 (file)
@@ -617,7 +617,7 @@ sub model {
         $c->log->warn( '* $c->config->{default_model} # the name of the default model to use' );
         $c->log->warn( '* $c->stash->{current_model} # the name of the model to use for this request' );
         $c->log->warn( '* $c->stash->{current_model_instance} # the instance of the model to use for this request' );
-        $c->log->warn( 'NB: in version 5.80, the "random" behavior will not work at all.' );
+        $c->log->warn( 'NB: in version 5.81, the "random" behavior will not work at all.' );
     }
 
     return $c->_filter_component( $comp );
@@ -670,7 +670,7 @@ sub view {
         $c->log->warn( '* $c->config->{default_view} # the name of the default view to use' );
         $c->log->warn( '* $c->stash->{current_view} # the name of the view to use for this request' );
         $c->log->warn( '* $c->stash->{current_view_instance} # the instance of the view to use for this request' );
-        $c->log->warn( 'NB: in version 5.80, the "random" behavior will not work at all.' );
+        $c->log->warn( 'NB: in version 5.81, the "random" behavior will not work at all.' );
     }
 
     return $c->_filter_component( $comp );
index d35e604..f7a13ea 100644 (file)
@@ -25,6 +25,10 @@ has _write_error => ( is => 'rw', predicate => '_has_write_error' );
 
 use namespace::clean -except => [qw/meta/];
 
+# Refactoring note - could/should Eliminate all instances of $self->{inputbuf},
+# which I haven't touched as it is used as an lvalue in a lot of places, and I guess
+# doing it differently could be expensive.. Feel free to refactor and NYTProf :)
+
 =head1 NAME
 
 Catalyst::Engine::HTTP - Catalyst HTTP Engine
index d3bbd79..a0fde8d 100644 (file)
@@ -10,20 +10,36 @@ Make sure you get it from there to ensure you have the latest version.
 
 =head2 5.80000 1st Quarter 2009
 
-Next major planned release.
+Next major planned release, ports Catalyst to Moose, and does some refactoring to help app/ctx.
 
-=over 4
+=head2 5.81000 
 
-=item move all inline pod to bottom of file.
+=over
 
-=item update pod coverage tests to detect stubbed pod, ensure real coverage
+=item Reduce core class data usage.
 
-=item Add support for configuration profiles to be selected at startup time
-through switches / ENV
+Refactor everything that doesn't have to be class data into object data
 
-=item  Application / Context Split 
+=item Work towards a declarative syntax mode
 
-Catalyst needs to be split so that $c refers to the current context, and is a separate thing from the Application class.
+Dispatcher refactoring to provide alternatives to deprecated methods, and 
+support for pluggable dispatcher builders (so that attributes can be replaced).
+
+=item MyApp should not ISA Catalyst::Controller
+
+=over
+
+=item Update Test suite to not assume MyApp ISA Controller
+
+=item After that set up attr handlers that will output helpful error messages when you do it as well as how to fix it.
+
+=back
+
+=back
+
+=head2 5.82000
+
+=over
 
 =item Extend pluggability of the Catalyst core.
 
@@ -31,19 +47,27 @@ good support for reusable components good support for reusable plugins good
 separation of plugins (some reusable components want different plugins) 
 near total engine independence
 
-=item Reduce core class data usage.
+=back
 
-Refactor everything that doesn't have to be class data into object data
+=head2 5.90000
 
-=item Add support for Isotope Engines
+=over
 
-This depends on the progress of Isotope
+=item  Application / Context Split 
 
-=item Work towards a declarative syntax mode
+Catalyst needs to be split so that $c refers to the current context, and is a separate thing from the Application class.
 
 =back
-=head2 5.90000 2009
 
-Blue Sky. Will start planning this once we land 5.8 :)
+=head2 Wishlist
+
+=over
 
+=item move all inline pod to bottom of file.
+
+=item update pod coverage tests to detect stubbed pod, ensure real coverage
+
+=item Add support for configuration profiles to be selected at startup time
+through switches / ENV
+
+=back
index 5d5cfc3..13c2a02 100644 (file)
@@ -265,8 +265,6 @@ sub ensure_class_loaded {
     return if !$opts->{ ignore_loaded }
         && Class::MOP::is_class_loaded($class); # if a symbol entry exists we don't load again
 
-    # FIXME - as soon as Class::MOP 0.67 + 1 is released Class::MOP::load_class($class) can be used instead
-
     # this hack is so we don't overwrite $@ if the load did not generate an error
     my $error;
     {