increased sqlt rev dep
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Schema / Versioned.pm
index 9416583..197f4ac 100644 (file)
@@ -179,7 +179,7 @@ sub backup
     $self->storage->backup($self->backup_directory());
 }
 
-# is this just a waste of time?
+# is this just a waste of time? if not then merge with DBI.pm
 sub _create_db_to_schema_diff {
   my $self = shift;
 
@@ -193,8 +193,10 @@ sub _create_db_to_schema_diff {
     return;
   }
 
-  require SQL::Translator;
-  require SQL::Translator::Diff;
+  eval 'require SQL::Translator "0.09"';
+  if ($@) {
+    $self->throw_exception("SQL::Translator 0.09 required");
+  }
 
   my $db_tr = SQL::Translator->new({ 
                                     add_drop_table => 1, 
@@ -309,7 +311,9 @@ sub _read_sql_file {
 
   my $fh;
   open $fh, "<$file" or warn("Can't open upgrade file, $file ($!)");
-  my @data = split(/[;\n]/, join('', <$fh>));
+  my @data = split(/\n/, join('', <$fh>));
+  @data = grep(!/^--/, @data);
+  @data = split(/;/, join('', @data));
   close($fh);
   @data = grep { $_ && $_ !~ /^-- / } @data;
   @data = grep { $_ !~ /^(BEGIN TRANACTION|COMMIT)/m } @data;