r66691 - in /branches/upstream/librose-db-perl/current: Changes META.yml lib/Rose/DB.pm lib/Rose/DB/Pg.pm t/oracle.t t/subclass-oracle.t t/subclass-trx.t t/trx.t

periapt-guest at users.alioth.debian.org periapt-guest at users.alioth.debian.org
Fri Dec 31 09:05:30 UTC 2010


Author: periapt-guest
Date: Fri Dec 31 09:05:14 2010
New Revision: 66691

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=66691
Log:
[svn-upgrade] new version librose-db-perl (0.763)

Modified:
    branches/upstream/librose-db-perl/current/Changes
    branches/upstream/librose-db-perl/current/META.yml
    branches/upstream/librose-db-perl/current/lib/Rose/DB.pm
    branches/upstream/librose-db-perl/current/lib/Rose/DB/Pg.pm
    branches/upstream/librose-db-perl/current/t/oracle.t
    branches/upstream/librose-db-perl/current/t/subclass-oracle.t
    branches/upstream/librose-db-perl/current/t/subclass-trx.t
    branches/upstream/librose-db-perl/current/t/trx.t

Modified: branches/upstream/librose-db-perl/current/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/librose-db-perl/current/Changes?rev=66691&op=diff
==============================================================================
--- branches/upstream/librose-db-perl/current/Changes (original)
+++ branches/upstream/librose-db-perl/current/Changes Fri Dec 31 09:05:14 2010
@@ -1,3 +1,8 @@
+0.763 (12.30.2010) - John Siracusa <siracusa at gmail.com>
+
+    * Support for Rose::DB::Object 0.794
+	* Return from rollback() early if AutoCommit is set.
+
 0.762 (06.23.2010) - John Siracusa <siracusa at gmail.com>
 
     * Support for Rose::DB::Object 0.789.

Modified: branches/upstream/librose-db-perl/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/librose-db-perl/current/META.yml?rev=66691&op=diff
==============================================================================
--- branches/upstream/librose-db-perl/current/META.yml (original)
+++ branches/upstream/librose-db-perl/current/META.yml Fri Dec 31 09:05:14 2010
@@ -1,6 +1,6 @@
 --- #YAML:1.0
 name:               Rose-DB
-version:            0.762
+version:            0.763
 abstract:           ~
 author:  []
 license:            perl

Modified: branches/upstream/librose-db-perl/current/lib/Rose/DB.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/librose-db-perl/current/lib/Rose/DB.pm?rev=66691&op=diff
==============================================================================
--- branches/upstream/librose-db-perl/current/lib/Rose/DB.pm (original)
+++ branches/upstream/librose-db-perl/current/lib/Rose/DB.pm Fri Dec 31 09:05:14 2010
@@ -20,7 +20,7 @@
 
 our $Error;
 
-our $VERSION = '0.762';
+our $VERSION = '0.763';
 
 our $Debug = 0;
 
@@ -1240,6 +1240,8 @@
   my $dbh = $self->dbh or return undef;
 
   my $ac = $dbh->{'AutoCommit'};
+
+  return 1  if($ac);
 
   my $ret;
 
@@ -2355,7 +2357,7 @@
   if($tables)
   {
     my $tn = 1;
-  
+
     foreach my $table (@$tables)
     {
       (my $table_key = $table) =~ s/^(["']?)[^.]+\1\.//;
@@ -2418,7 +2420,7 @@
   if($tables)
   {
     my $tn = 1;
-  
+
     foreach my $table (@$tables)
     {
       (my $table_key = $table) =~ s/^(["']?)[^.]+\1\.//;
@@ -2443,7 +2445,7 @@
       {
         $chase_meta = $key->can('foreign_class') ? 
           $key->foreign_class->meta : $key->class->meta;
-  
+
         $table = $chase_meta->table;
       }
       else

Modified: branches/upstream/librose-db-perl/current/lib/Rose/DB/Pg.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/librose-db-perl/current/lib/Rose/DB/Pg.pm?rev=66691&op=diff
==============================================================================
--- branches/upstream/librose-db-perl/current/lib/Rose/DB/Pg.pm (original)
+++ branches/upstream/librose-db-perl/current/lib/Rose/DB/Pg.pm Fri Dec 31 09:05:14 2010
@@ -477,51 +477,60 @@
   no strict 'refs';
   $self->$method($col_info);
 
-  # Set sequence name key, if present
-  if(defined $default && $default =~ /^nextval\(\(?'((?:''|[^']+))'::\w+/)
-  {
-    $col_info->{'rdbo_default_value_sequence_name'} = 
-      $self->likes_lowercase_sequence_names ? lc $1 : $1;
-
-    if($meta)
-    {
-      my $seq = $col_info->{'rdbo_default_value_sequence_name'};
-
-      my $implicit_schema = $self->default_implicit_schema;
-
-      # Strip off default implicit schema unless a schema is explicitly 
-      # specified in the RDBO metadata object.
-      if(defined $seq && defined $implicit_schema && !defined $meta->schema)
+
+  if(defined $default)
+  {
+    # Set sequence name key, if present
+    if($default =~ /^nextval\(\(?'((?:''|[^']+))'::\w+/)
+    {
+      $col_info->{'rdbo_default_value_sequence_name'} = 
+        $self->likes_lowercase_sequence_names ? lc $1 : $1;
+
+      if($meta)
       {
-        $seq =~ s/^$implicit_schema\.//;
-      }
-
-      $col_info->{'rdbo_default_value_sequence_name'} = $self->unquote_column_name($seq);
-
-      # Pg returns serial columns as integer or bigint
-      if($col_info->{'TYPE_NAME'} eq 'integer' ||
-         $col_info->{'TYPE_NAME'} eq 'bigint')
-      {
-        my $db = $meta->db;
-
-        my $auto_seq =
-          $db->auto_sequence_name(table  => $meta->table,
-                                  column => $col_info->{'COLUMN_NAME'});
-
-        # Use schema prefix on auto-generated name if necessary
-        if($seq =~ /^[^.]+\./)
+        my $seq = $col_info->{'rdbo_default_value_sequence_name'};
+
+        my $implicit_schema = $self->default_implicit_schema;
+
+        # Strip off default implicit schema unless a schema is explicitly 
+        # specified in the RDBO metadata object.
+        if(defined $seq && defined $implicit_schema && !defined $meta->schema)
         {
-          my $schema = $meta->select_schema($db);
-          $auto_seq = "$schema.$auto_seq"  if($schema);
+          $seq =~ s/^$implicit_schema\.//;
         }
 
-        no warnings 'uninitialized';
-        if(lc $seq eq lc $auto_seq)
+        $col_info->{'rdbo_default_value_sequence_name'} = $self->unquote_column_name($seq);
+
+        # Pg returns serial columns as integer or bigint
+        if($col_info->{'TYPE_NAME'} eq 'integer' ||
+           $col_info->{'TYPE_NAME'} eq 'bigint')
         {
-          $col_info->{'TYPE_NAME'} =
-            $col_info->{'TYPE_NAME'} eq 'integer' ? 'serial' : 'bigserial';
+          my $db = $meta->db;
+
+          my $auto_seq =
+            $db->auto_sequence_name(table  => $meta->table,
+                                    column => $col_info->{'COLUMN_NAME'});
+
+          # Use schema prefix on auto-generated name if necessary
+          if($seq =~ /^[^.]+\./)
+          {
+            my $schema = $meta->select_schema($db);
+            $auto_seq = "$schema.$auto_seq"  if($schema);
+          }
+
+          no warnings 'uninitialized';
+          if(lc $seq eq lc $auto_seq)
+          {
+            $col_info->{'TYPE_NAME'} =
+              $col_info->{'TYPE_NAME'} eq 'integer' ? 'serial' : 'bigserial';
+          }
         }
       }
+    }
+    elsif($default =~ /^NULL::[\w ]+$/)
+    {
+      # RT 64331: https://rt.cpan.org/Ticket/Display.html?id=64331
+      $col_info->{'COLUMN_DEF'} = undef;
     }
   }
 

Modified: branches/upstream/librose-db-perl/current/t/oracle.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/librose-db-perl/current/t/oracle.t?rev=66691&op=diff
==============================================================================
--- branches/upstream/librose-db-perl/current/t/oracle.t (original)
+++ branches/upstream/librose-db-perl/current/t/oracle.t Fri Dec 31 09:05:14 2010
@@ -15,7 +15,7 @@
   }
   else
   {
-    Test::More->import(tests => 82);
+    Test::More->import(tests => 80);
   }
 }
 
@@ -71,8 +71,6 @@
 
 is($db->parse_datetime('2002-12-31 12:34:56'), parse_date('12/31/2002 12:34:56'),  "parse_datetime() 1");
 is($db->parse_datetime('2002-12-31 12:34:56.0'), parse_date('12/31/2002 12:34:56'),  "parse_datetime() 2");
-is($db->parse_datetime('2002-12-31 12:34:56.123'), parse_date('12/31/2002 12:34:56.123'),  "parse_datetime() 3");
-is($db->parse_datetime('2002-12-31 12:34:56.123456789'), parse_date('12/31/2002 12:34:56.123456'),  "parse_datetime() 4");
 
 is($db->parse_timestamp('2002-12-31 12:34:56'), parse_date('12/31/2002 12:34:56'),  "parse_timestamp() 1");
 is($db->parse_timestamp('2002-12-31 12:34:56.0'), parse_date('12/31/2002 12:34:56'),  "parse_timestamp() 2");

Modified: branches/upstream/librose-db-perl/current/t/subclass-oracle.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/librose-db-perl/current/t/subclass-oracle.t?rev=66691&op=diff
==============================================================================
--- branches/upstream/librose-db-perl/current/t/subclass-oracle.t (original)
+++ branches/upstream/librose-db-perl/current/t/subclass-oracle.t Fri Dec 31 09:05:14 2010
@@ -15,7 +15,7 @@
   }
   else
   {
-    Test::More->import(tests => 82);
+    Test::More->import(tests => 80);
   }
 }
 
@@ -71,8 +71,6 @@
 
 is($db->parse_datetime('2002-12-31 12:34:56'), parse_date('12/31/2002 12:34:56'),  "parse_datetime() 1");
 is($db->parse_datetime('2002-12-31 12:34:56.0'), parse_date('12/31/2002 12:34:56'),  "parse_datetime() 2");
-is($db->parse_datetime('2002-12-31 12:34:56.123'), parse_date('12/31/2002 12:34:56.123'),  "parse_datetime() 3");
-is($db->parse_datetime('2002-12-31 12:34:56.123456789'), parse_date('12/31/2002 12:34:56.123456'),  "parse_datetime() 4");
 
 is($db->parse_timestamp('2002-12-31 12:34:56'), parse_date('12/31/2002 12:34:56'),  "parse_timestamp() 1");
 is($db->parse_timestamp('2002-12-31 12:34:56.0'), parse_date('12/31/2002 12:34:56'),  "parse_timestamp() 2");

Modified: branches/upstream/librose-db-perl/current/t/subclass-trx.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/librose-db-perl/current/t/subclass-trx.t?rev=66691&op=diff
==============================================================================
--- branches/upstream/librose-db-perl/current/t/subclass-trx.t (original)
+++ branches/upstream/librose-db-perl/current/t/subclass-trx.t Fri Dec 31 09:05:14 2010
@@ -2,7 +2,7 @@
 
 use strict;
 
-use Test::More tests => 74;
+use Test::More tests => 78;
 
 BEGIN 
 {
@@ -20,7 +20,7 @@
 
 SKIP: foreach my $db_type ('pg')
 {
-  skip("PostgreSQL tests", 23)  unless($HAVE_PG);
+  skip("PostgreSQL tests", 24)  unless($HAVE_PG);
 
   My::DB2->default_type($db_type);
 
@@ -107,6 +107,9 @@
 
     is(ref $db->error, 'My::Exception', "do_transaction() exception 1 - $db_type");
   }
+  
+  $db->dbh->{'AutoCommit'} = 1;  
+  is($db->rollback, 1, "rollback with AutoCommit set - $db_type");
 }
 
 #
@@ -115,7 +118,7 @@
 
 SKIP: foreach my $db_type ('oracle')
 {
-  skip("Oracle tests", 21)  unless($HAVE_ORACLE);
+  skip("Oracle tests", 22)  unless($HAVE_ORACLE);
 
   My::DB2->default_type($db_type);
 
@@ -189,6 +192,9 @@
 
     is($count, 4, "do_transaction() 3 - $db_type");
   }
+
+  $db->dbh->{'AutoCommit'} = 1;  
+  is($db->rollback, 1, "rollback with AutoCommit set - $db_type");
 }
 
 #
@@ -197,7 +203,7 @@
 
 SKIP: foreach my $db_type ('mysql')
 {
-  skip("MySQL tests", 13)  unless($HAVE_MYSQL);
+  skip("MySQL tests", 14)  unless($HAVE_MYSQL);
 
   My::DB2->default_type($db_type);
 
@@ -239,6 +245,9 @@
   my $count = $sth->fetchrow_array;
 
   is($count, 4, "do_transaction() 3 - $db_type");
+
+  $db->dbh->{'AutoCommit'} = 1;  
+  is($db->rollback, 1, "rollback with AutoCommit set - $db_type");
 }
 
 #
@@ -247,7 +256,7 @@
 
 SKIP: foreach my $db_type ('informix')
 {
-  skip("Informix tests", 16)  unless($HAVE_INFORMIX);
+  skip("Informix tests", 17)  unless($HAVE_INFORMIX);
 
   My::DB2->default_type($db_type);
 
@@ -295,6 +304,9 @@
   my $count = $sth->fetchrow_array;
 
   is($count, 4, "do_transaction() 3 - $db_type");
+
+  $db->dbh->{'AutoCommit'} = 1;  
+  is($db->rollback, 1, "rollback with AutoCommit set - $db_type");
 }
 
 BEGIN

Modified: branches/upstream/librose-db-perl/current/t/trx.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/librose-db-perl/current/t/trx.t?rev=66691&op=diff
==============================================================================
--- branches/upstream/librose-db-perl/current/t/trx.t (original)
+++ branches/upstream/librose-db-perl/current/t/trx.t Fri Dec 31 09:05:14 2010
@@ -2,7 +2,7 @@
 
 use strict;
 
-use Test::More tests => 74;
+use Test::More tests => 78;
 
 BEGIN 
 {
@@ -20,7 +20,7 @@
 
 SKIP: foreach my $db_type ('pg')
 {
-  skip("PostgreSQL tests", 23)  unless($HAVE_PG);
+  skip("PostgreSQL tests", 24)  unless($HAVE_PG);
 
   Rose::DB->default_type($db_type);
 
@@ -107,6 +107,9 @@
 
     is(ref $db->error, 'My::Exception', "do_transaction() exception 1 - $db_type");
   }
+
+  $db->dbh->{'AutoCommit'} = 1;  
+  is($db->rollback, 1, "rollback with AutoCommit set - $db_type");
 }
 
 #
@@ -115,7 +118,7 @@
 
 SKIP: foreach my $db_type ('oracle')
 {
-  skip("Oracle tests", 21)  unless($HAVE_ORACLE);
+  skip("Oracle tests", 22)  unless($HAVE_ORACLE);
 
   Rose::DB->default_type($db_type);
 
@@ -189,6 +192,9 @@
 
     is($count, 4, "do_transaction() 3 - $db_type");
   }
+
+  $db->dbh->{'AutoCommit'} = 1;  
+  is($db->rollback, 1, "rollback with AutoCommit set - $db_type");
 }
 
 #
@@ -197,7 +203,7 @@
 
 SKIP: foreach my $db_type ('mysql')
 {
-  skip("MySQL tests", 13)  unless($HAVE_MYSQL);
+  skip("MySQL tests", 14)  unless($HAVE_MYSQL);
 
   Rose::DB->default_type($db_type);
 
@@ -239,6 +245,9 @@
   my $count = $sth->fetchrow_array;
 
   is($count, 4, "do_transaction() 3 - $db_type");
+
+  $db->dbh->{'AutoCommit'} = 1;  
+  is($db->rollback, 1, "rollback with AutoCommit set - $db_type");
 }
 
 #
@@ -247,7 +256,7 @@
 
 SKIP: foreach my $db_type ('informix')
 {
-  skip("Informix tests", 16)  unless($HAVE_INFORMIX);
+  skip("Informix tests", 17)  unless($HAVE_INFORMIX);
 
   Rose::DB->default_type($db_type);
 
@@ -295,6 +304,9 @@
   my $count = $sth->fetchrow_array;
 
   is($count, 4, "do_transaction() 3 - $db_type");
+
+  $db->dbh->{'AutoCommit'} = 1;  
+  is($db->rollback, 1, "rollback with AutoCommit set - $db_type");
 }
 
 BEGIN




More information about the Pkg-perl-cvs-commits mailing list