r76333 - in /trunk/libclass-dbi-lite-perl: ./ debian/ lib/Class/DBI/ lib/Class/DBI/Lite/ t/
mxey-guest at users.alioth.debian.org
mxey-guest at users.alioth.debian.org
Thu Jun 23 11:59:33 UTC 2011
Author: mxey-guest
Date: Thu Jun 23 11:59:30 2011
New Revision: 76333
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=76333
Log:
New upstream release
Modified:
trunk/libclass-dbi-lite-perl/Changes
trunk/libclass-dbi-lite-perl/META.yml
trunk/libclass-dbi-lite-perl/Makefile.PL
trunk/libclass-dbi-lite-perl/debian/changelog
trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite.pm
trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/AdHocEntity.pm
trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/Dataset.pm
trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/EntityMeta.pm
trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/RootMeta.pm
trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/SQLite.pm
trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/mysql.pm
trunk/libclass-dbi-lite-perl/t/testdb
Modified: trunk/libclass-dbi-lite-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libclass-dbi-lite-perl/Changes?rev=76333&op=diff
==============================================================================
--- trunk/libclass-dbi-lite-perl/Changes (original)
+++ trunk/libclass-dbi-lite-perl/Changes Thu Jun 23 11:59:30 2011
@@ -1,4 +1,13 @@
Revision history for Perl extension Class::DBI::Lite.
+
+1.021 2011-06-14
+ - Upgrade Recommended!!
+ - BUG FIX: `before_update` triggers which caused changes to an object did not get those
+ changes saved as part of the final update.
+
+1.020 2011-06-05
+ - Updates to work with changes in the public interface of Ima::DBI::Contextual.
+ - No other changes.
1.019 2011-04-08
- Updated POD to use the new lowercase classname standard - as in .NET's Entity Framework.
Modified: trunk/libclass-dbi-lite-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libclass-dbi-lite-perl/META.yml?rev=76333&op=diff
==============================================================================
--- trunk/libclass-dbi-lite-perl/META.yml (original)
+++ trunk/libclass-dbi-lite-perl/META.yml Thu Jun 23 11:59:30 2011
@@ -1,6 +1,6 @@
--- #YAML:1.0
name: Class-DBI-Lite
-version: 1.019
+version: 1.021
abstract: Lightweight ORM for Perl
license: Perl
author:
@@ -10,7 +10,7 @@
requires:
DBD::SQLite: 0
DBI: 0
- Ima::DBI::Contextual: 0
+ Ima::DBI::Contextual: 1.001
SQL::Abstract: 0
SQL::Abstract::Limit: 0
Test::Memory::Cycle: 0
Modified: trunk/libclass-dbi-lite-perl/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libclass-dbi-lite-perl/Makefile.PL?rev=76333&op=diff
==============================================================================
--- trunk/libclass-dbi-lite-perl/Makefile.PL (original)
+++ trunk/libclass-dbi-lite-perl/Makefile.PL Thu Jun 23 11:59:30 2011
@@ -14,7 +14,7 @@
test_requires 'DBD::SQLite' => 0;
requires 'DBI' => 0;
-requires 'Ima::DBI::Contextual' => 0;
+requires 'Ima::DBI::Contextual' => 1.001;
requires 'DBIx::ContextualFetch' => 0;
requires 'SQL::Abstract' => 0;
requires 'SQL::Abstract::Limit' => 0;
Modified: trunk/libclass-dbi-lite-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libclass-dbi-lite-perl/debian/changelog?rev=76333&op=diff
==============================================================================
--- trunk/libclass-dbi-lite-perl/debian/changelog (original)
+++ trunk/libclass-dbi-lite-perl/debian/changelog Thu Jun 23 11:59:30 2011
@@ -1,3 +1,9 @@
+libclass-dbi-lite-perl (1.021-1) UNRELEASED; urgency=low
+
+ * New upstream release
+
+ -- Maximilian Gass <mxey at cloudconnected.org> Thu, 23 Jun 2011 13:59:23 +0200
+
libclass-dbi-lite-perl (1.019-1) unstable; urgency=low
* Initial Release. (Closes: #624108)
Modified: trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite.pm?rev=76333&op=diff
==============================================================================
--- trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite.pm (original)
+++ trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite.pm Thu Jun 23 11:59:30 2011
@@ -18,7 +18,7 @@
bool => sub { eval { $_[0]->id } },
fallback => 1;
-our $VERSION = '1.019';
+our $VERSION = '1.021';
our $meta;
our %DBI_OPTIONS = (
@@ -388,7 +388,7 @@
else
{
# Success:
- $s->commit;
+ $s->dbi_commit;
return $res;
}# end if()
}# end do_transaction()
@@ -404,13 +404,12 @@
$s->_call_triggers( before_update => $s );
- my $changed = delete( $s->{__Changed} );
- $s->{__Changed} = { };
-
+ my $changed = $s->{__Changed};
foreach my $field ( grep { $changed->{$_} } sort keys(%$s) )
{
$s->_call_triggers( "before_update_$field", $changed->{$field}->{oldval}, $s->{$field} );
}# end foreach()
+
# Make our SQL:
my @fields = map { "$_ = ?" } grep { $changed->{$_} } sort keys(%$s);
@@ -823,12 +822,28 @@
{
my ($s, %args) = @_;
- if( my ($obj) = $s->search( %args ) )
- {
- return $obj;
+ my $result = eval {
+ $s->do_transaction(sub {
+# $s->lock_table( $s->table );
+
+ if( my ($obj) = $s->search( %args ) )
+ {
+# $s->unlock_table( $s->table );
+ return $obj;
+ }# end if()
+
+ my $obj = $s->create( %args );
+# $s->unlock_table( $s->table );
+ return $obj;
+ });
+ };
+ if( $@ )
+ {
+ die $@;
+# $s->unlock_table( $s->table );
}# end if()
- return $s->create( %args );
+ return $result;
}# end find_or_create()
@@ -969,7 +984,7 @@
{
my $s = shift;
return if $s->db_Main->{AutoCommit};
- $s->SUPER::commit( @_ );
+ $s->db_Main->commit( @_ );
}# end dbi_commit()
@@ -1012,7 +1027,7 @@
sub dbi_rollback
{
my $s = shift;
- $s->SUPER::rollback( @_ );
+ $s->db_Main->rollback( @_ );
}# end dbi_rollback()
@@ -1104,6 +1119,10 @@
bool => sub { undef },
fallback => 1;
}
+
+
+sub lock_table;
+sub unlock_table;
1;# return true:
Modified: trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/AdHocEntity.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/AdHocEntity.pm?rev=76333&op=diff
==============================================================================
--- trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/AdHocEntity.pm (original)
+++ trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/AdHocEntity.pm Thu Jun 23 11:59:30 2011
@@ -1,5 +1,6 @@
-package Class::DBI::Lite::AdHocEntity;
+package
+Class::DBI::Lite::AdHocEntity;
use strict;
use warnings 'all';
Modified: trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/Dataset.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/Dataset.pm?rev=76333&op=diff
==============================================================================
--- trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/Dataset.pm (original)
+++ trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/Dataset.pm Thu Jun 23 11:59:30 2011
@@ -1,5 +1,6 @@
-package Class::DBI::Lite::Dataset;
+package
+Class::DBI::Lite::Dataset;
use strict;
use warnings 'all';
Modified: trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/EntityMeta.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/EntityMeta.pm?rev=76333&op=diff
==============================================================================
--- trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/EntityMeta.pm (original)
+++ trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/EntityMeta.pm Thu Jun 23 11:59:30 2011
@@ -1,5 +1,6 @@
-package Class::DBI::Lite::EntityMeta;
+package
+Class::DBI::Lite::EntityMeta;
use strict;
use warnings 'all';
Modified: trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/RootMeta.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/RootMeta.pm?rev=76333&op=diff
==============================================================================
--- trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/RootMeta.pm (original)
+++ trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/RootMeta.pm Thu Jun 23 11:59:30 2011
@@ -1,5 +1,6 @@
-package Class::DBI::Lite::RootMeta;
+package
+Class::DBI::Lite::RootMeta;
use strict;
use warnings 'all';
Modified: trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/SQLite.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/SQLite.pm?rev=76333&op=diff
==============================================================================
--- trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/SQLite.pm (original)
+++ trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/SQLite.pm Thu Jun 23 11:59:30 2011
@@ -128,5 +128,8 @@
$_[0]->db_Main->func('last_insert_rowid');
}# end get_last_insert_id()
+sub lock_table { }
+sub unlock_table { }
+
1;# return true:
Modified: trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/mysql.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/mysql.pm?rev=76333&op=diff
==============================================================================
--- trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/mysql.pm (original)
+++ trunk/libclass-dbi-lite-perl/lib/Class/DBI/Lite/mysql.pm Thu Jun 23 11:59:30 2011
@@ -83,8 +83,7 @@
Essential => \@cols,
All => \@cols,
};
- 1;
-}# end set_up_table()
+}# end get_meta_columns()
#==============================================================================
@@ -155,5 +154,19 @@
$_[0]->db_Main->{mysql_insertid};
}# end get_last_insert_id()
+
+sub lock_table
+{
+ my ($s, $table) = @_;
+
+ $s->db_Main->do("lock tables $table read");
+}# end lock_table()
+
+
+sub unlock_table
+{
+ shift->db_Main->do("unlock tables");
+}# end unlock_table()
+
1;# return true:
Modified: trunk/libclass-dbi-lite-perl/t/testdb
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libclass-dbi-lite-perl/t/testdb?rev=76333&op=diff
==============================================================================
Binary files - no diff available.
More information about the Pkg-perl-cvs-commits
mailing list