Use MRO::Compat instead of forcing Class::C3
Peter Rabbitson [Wed, 1 Sep 2010 07:10:12 +0000 (09:10 +0200)]
27 files changed:
Changes
Makefile.PL
lib/DBIx/Class/Schema/Loader.pm
lib/DBIx/Class/Schema/Loader/Base.pm
lib/DBIx/Class/Schema/Loader/DBI.pm
lib/DBIx/Class/Schema/Loader/DBI/Component/QuotedDefault.pm
lib/DBIx/Class/Schema/Loader/DBI/DB2.pm
lib/DBIx/Class/Schema/Loader/DBI/Informix.pm
lib/DBIx/Class/Schema/Loader/DBI/InterBase.pm
lib/DBIx/Class/Schema/Loader/DBI/MSSQL.pm
lib/DBIx/Class/Schema/Loader/DBI/ODBC.pm
lib/DBIx/Class/Schema/Loader/DBI/ODBC/Firebird.pm
lib/DBIx/Class/Schema/Loader/DBI/ODBC/Microsoft_SQL_Server.pm
lib/DBIx/Class/Schema/Loader/DBI/ODBC/SQL_Anywhere.pm
lib/DBIx/Class/Schema/Loader/DBI/Oracle.pm
lib/DBIx/Class/Schema/Loader/DBI/Pg.pm
lib/DBIx/Class/Schema/Loader/DBI/SQLAnywhere.pm
lib/DBIx/Class/Schema/Loader/DBI/SQLite.pm
lib/DBIx/Class/Schema/Loader/DBI/Sybase.pm
lib/DBIx/Class/Schema/Loader/DBI/Sybase/Common.pm
lib/DBIx/Class/Schema/Loader/DBI/Sybase/Microsoft_SQL_Server.pm
lib/DBIx/Class/Schema/Loader/DBI/Writing.pm
lib/DBIx/Class/Schema/Loader/DBI/mysql.pm
lib/DBIx/Class/Schema/Loader/RelBuilder.pm
lib/DBIx/Class/Schema/Loader/RelBuilder/Compat/v0_040.pm
lib/DBIx/Class/Schema/Loader/RelBuilder/Compat/v0_05.pm
lib/DBIx/Class/Schema/Loader/RelBuilder/Compat/v0_06.pm

diff --git a/Changes b/Changes
index 409bee1..1c02978 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,5 +1,7 @@
 Revision history for Perl extension DBIx::Class::Schema::Loader
 
+        - Switch to MRO::Compat
+
 0.07001  2010-07-24 21:28:08
         - put is_deferrable => 1 back into default attributes for belongs_to
         - fix Postgres sequence detection for qualified sequences
index 10c2834..3b80337 100644 (file)
@@ -28,7 +28,7 @@ requires 'Lingua::EN::Inflect::Phrase' => '0.02';
 requires 'Text::Balanced'              => 0;
 requires 'Digest::MD5'                 => '2.36';
 requires 'Class::Accessor::Grouped'    => '0.09002';
-requires 'Class::C3'                   => '0.18';
+requires 'MRO::Compat'                 => '0.09';
 requires 'Class::C3::Componentised'    => '1.0005';
 requires 'Carp::Clan'                  => 0;
 requires 'Class::Inspector'            => 0;
index 54126ac..5ce5e12 100644 (file)
@@ -4,7 +4,7 @@ use strict;
 use warnings;
 use base qw/DBIx::Class::Schema Class::Accessor::Grouped/;
 use Carp::Clan qw/^DBIx::Class/;
-use Class::C3;
+use mro 'c3';
 use Scalar::Util qw/ weaken /;
 
 # Always remember to do all digits for the version even if they're 0
index d469f6c..ecd0ca7 100644 (file)
@@ -3,7 +3,7 @@ package DBIx::Class::Schema::Loader::Base;
 use strict;
 use warnings;
 use base qw/Class::Accessor::Grouped Class::C3::Componentised/;
-use Class::C3;
+use mro 'c3';
 use Carp::Clan qw/^DBIx::Class/;
 use DBIx::Class::Schema::Loader::RelBuilder;
 use Data::Dump qw/ dump /;
@@ -1081,7 +1081,7 @@ sub _reload_classes {
         
         {
             no warnings 'redefine';
-            local *Class::C3::reinitialize = sub {};
+            local *Class::C3::reinitialize = sub {};  # to speed things up, reinitialized below
             use warnings;
 
             if ($class->can('meta') && try { $class->meta->isa('Moose::Meta::Class') }) {
index a1451eb..19d20fa 100644 (file)
@@ -3,7 +3,7 @@ package DBIx::Class::Schema::Loader::DBI;
 use strict;
 use warnings;
 use base qw/DBIx::Class::Schema::Loader::Base/;
-use Class::C3;
+use mro 'c3';
 use Carp::Clan qw/^DBIx::Class/;
 
 our $VERSION = '0.07001';
index 5dd5884..3fec4f7 100644 (file)
@@ -2,7 +2,7 @@ package DBIx::Class::Schema::Loader::DBI::Component::QuotedDefault;
 
 use strict;
 use warnings;
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index d0cc796..5d9ae4a 100644 (file)
@@ -7,7 +7,7 @@ use base qw/
     DBIx::Class::Schema::Loader::DBI
 /;
 use Carp::Clan qw/^DBIx::Class/;
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index 85fa056..5459c2f 100644 (file)
@@ -2,7 +2,7 @@ package DBIx::Class::Schema::Loader::DBI::Informix;
 
 use strict;
 use warnings;
-use Class::C3;
+use mro 'c3';
 use base qw/DBIx::Class::Schema::Loader::DBI/;
 use Carp::Clan qw/^DBIx::Class/;
 use Scalar::Util 'looks_like_number';
index 6f73395..48e1e7b 100644 (file)
@@ -2,7 +2,7 @@ package DBIx::Class::Schema::Loader::DBI::InterBase;
 
 use strict;
 use warnings;
-use Class::C3;
+use mro 'c3';
 use base qw/DBIx::Class::Schema::Loader::DBI/;
 use Carp::Clan qw/^DBIx::Class/;
 use List::Util 'first';
index a2cc916..e9d628c 100644 (file)
@@ -4,7 +4,7 @@ use strict;
 use warnings;
 use base 'DBIx::Class::Schema::Loader::DBI::Sybase::Common';
 use Carp::Clan qw/^DBIx::Class/;
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index d9dd296..21f7189 100644 (file)
@@ -4,7 +4,7 @@ use strict;
 use warnings;
 use base 'DBIx::Class::Schema::Loader::DBI';
 use Carp::Clan qw/^DBIx::Class/;
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index aeed566..99f54bc 100644 (file)
@@ -7,7 +7,7 @@ use base qw/
     DBIx::Class::Schema::Loader::DBI::InterBase
 /;
 use Carp::Clan qw/^DBIx::Class/;
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index f5431d3..9c9ada0 100644 (file)
@@ -6,7 +6,7 @@ use base qw/
     DBIx::Class::Schema::Loader::DBI::MSSQL
 /;
 use Carp::Clan qw/^DBIx::Class/;
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index 74b7b69..5257718 100644 (file)
@@ -6,7 +6,7 @@ use base qw/
     DBIx::Class::Schema::Loader::DBI::SQLAnywhere
 /;
 use Carp::Clan qw/^DBIx::Class/;
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index c561894..354963a 100644 (file)
@@ -7,7 +7,7 @@ use base qw/
     DBIx::Class::Schema::Loader::DBI
 /;
 use Carp::Clan qw/^DBIx::Class/;
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index b218532..93cf18f 100644 (file)
@@ -7,7 +7,7 @@ use base qw/
     DBIx::Class::Schema::Loader::DBI
 /;
 use Carp::Clan qw/^DBIx::Class/;
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index 46472db..5db589c 100644 (file)
@@ -2,7 +2,7 @@ package DBIx::Class::Schema::Loader::DBI::SQLAnywhere;
 
 use strict;
 use warnings;
-use Class::C3;
+use mro 'c3';
 use base qw/
     DBIx::Class::Schema::Loader::DBI::Component::QuotedDefault
     DBIx::Class::Schema::Loader::DBI
index c5af130..70b267e 100644 (file)
@@ -8,7 +8,7 @@ use base qw/
 /;
 use Carp::Clan qw/^DBIx::Class/;
 use Text::Balanced qw( extract_bracketed );
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index 2b9fc33..7a066be 100644 (file)
@@ -4,7 +4,7 @@ use strict;
 use warnings;
 use base 'DBIx::Class::Schema::Loader::DBI::Sybase::Common';
 use Carp::Clan qw/^DBIx::Class/;
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index 316d46a..609d9cb 100644 (file)
@@ -4,7 +4,7 @@ use strict;
 use warnings;
 use base 'DBIx::Class::Schema::Loader::DBI';
 use Carp::Clan qw/^DBIx::Class/;
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index 5c476de..ee51f6b 100644 (file)
@@ -4,7 +4,7 @@ use strict;
 use warnings;
 use base 'DBIx::Class::Schema::Loader::DBI::MSSQL';
 use Carp::Clan qw/^DBIx::Class/;
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index 9bb7a47..50a716c 100644 (file)
@@ -19,7 +19,7 @@ DBIx::Class::Schema::Loader::DBI::Writing - Loader subclass writing guide for DB
   use warnings;
   use base 'DBIx::Class::Schema::Loader::DBI';
   use Carp::Clan qw/^DBIx::Class/;
-  use Class::C3;
+  use mro 'c3';
 
   sub _table_uniq_info {
       my ($self, $table) = @_;
index d7a331a..3524cea 100644 (file)
@@ -4,7 +4,7 @@ use strict;
 use warnings;
 use base 'DBIx::Class::Schema::Loader::DBI';
 use Carp::Clan qw/^DBIx::Class/;
-use Class::C3;
+use mro 'c3';
 
 our $VERSION = '0.07001';
 
index be0f136..650e043 100644 (file)
@@ -2,7 +2,7 @@ package DBIx::Class::Schema::Loader::RelBuilder;
 
 use strict;
 use warnings;
-use Class::C3;
+use mro 'c3';
 use Carp::Clan qw/^DBIx::Class/;
 use Scalar::Util ();
 
index b78a89b..1f683a3 100644 (file)
@@ -2,7 +2,7 @@ package DBIx::Class::Schema::Loader::RelBuilder::Compat::v0_040;
 
 use strict;
 use warnings;
-use Class::C3;
+use mro 'c3';
 use base 'DBIx::Class::Schema::Loader::RelBuilder::Compat::v0_05';
 use Carp::Clan qw/^DBIx::Class/;
 use Lingua::EN::Inflect::Number ();
index f7985b4..0d3ed0f 100644 (file)
@@ -2,7 +2,7 @@ package DBIx::Class::Schema::Loader::RelBuilder::Compat::v0_05;
 
 use strict;
 use warnings;
-use Class::C3;
+use mro 'c3';
 use base 'DBIx::Class::Schema::Loader::RelBuilder::Compat::v0_06';
 use Carp::Clan qw/^DBIx::Class/;
 use Lingua::EN::Inflect::Number ();
index d0bfb78..e89e8c6 100644 (file)
@@ -2,7 +2,7 @@ package DBIx::Class::Schema::Loader::RelBuilder::Compat::v0_06;
 
 use strict;
 use warnings;
-use Class::C3;
+use mro 'c3';
 use base 'DBIx::Class::Schema::Loader::RelBuilder';
 use Carp::Clan qw/^DBIx::Class/;
 use Lingua::EN::Inflect::Phrase ();