Warnings from C::Base
Tomas Doran [Sun, 12 Apr 2009 16:35:38 +0000 (16:35 +0000)]
Changes
lib/Catalyst/Base.pm

diff --git a/Changes b/Changes
index 2c646b6..14030d4 100644 (file)
--- a/Changes
+++ b/Changes
@@ -61,6 +61,7 @@
           This is more correct, and avoids metaclass incompatibility in complex
           cases (t0m)
           - Tests for this (t0m)
+        - Use of deprecated Catalyst::Base now warns. (t0m)
 
 5.8000_06 2009-02-04 21:00
         - Disallow writing to config after setup (rafl)
index 659a97d..6ef8fd3 100644 (file)
@@ -1,9 +1,13 @@
 package Catalyst::Base;
-
-use base qw/Catalyst::Controller/;
 use Moose;
+BEGIN { extends 'Catalyst::Controller' }
 no Moose;
 
+after 'BUILD' => sub {
+    my $self = shift;
+    warn(ref($self) . " is using the deprecated Catalyst::Base, update your application as this will be removed in the next major release");
+};
+
 1;
 
 __END__
@@ -15,7 +19,10 @@ Catalyst::Base - Deprecated base class
 =head1 DESCRIPTION
 
 This used to be the base class for Catalyst Controllers. It
-remains here for compatibility reasons.
+remains here for compatibility reasons, but its use is highly deprecated.
+
+If your application produces a warning, then please update your application to
+inherit from L<Catalyst::Controller> instead.
 
 =head1 SEE ALSO