DBIx-Abstract
view release on metacpan or search on metacpan
- Made the Makefile.PL default to not providing a database driver.
Tests will be skipped if you do this. (This way automated module
testing won't break when it shouldn't.)
- Added a dependency on Scalar::Util.
1.004 2003-02-17
- ensure_connection did not work correctly if DBI was set to die on
errors.
- Back ported test suite and makefile from 1.1. Back ported patch to
fix mysqlPP compatibility issues.
- Made clone weaken references it takes so that it won't leak memory.
Added memory leak test.
- A bug fix relating to select_one_* and select_all_* where if the
query failed and returned undef, the routine would crash. This is
now fixed and it just propagates the undef.
1.003 2002-09-23
- Fixed Win32 bug found by Kanji T Bates.
- Connect for oracle can look a bit more like those for other DBD
drivers now. You may now specify your SID in the dbname field.
lib/DBIx/Abstract.pm view on Meta::CPAN
# ABSTRACT: DBI SQL abstraction
package DBIx::Abstract;
$DBIx::Abstract::VERSION = '1.04';
use DBI;
use Scalar::Util 'weaken';
use Check::ISA qw( obj_does );
use strict;
use warnings;
our $AUTOLOAD;
sub ___drivers {
my ( $driver, $config ) = @_;
my %drivers = (
lib/DBIx/Abstract.pm view on Meta::CPAN
my $newself = {%$self};
delete( $newself->{'CLONES'} );
delete( $newself->{'ORIG'} );
bless $newself, $class;
if ( !$self->{'ORIG'} ) {
$newself->{'ORIG'} = $self;
}
else {
$newself->{'ORIG'} = $self->{'ORIG'};
}
weaken( $newself->{'ORIG'} );
push( @{ $newself->{'ORIG'}->{'CLONES'} }, $newself );
weaken(
$newself->{'ORIG'}->{'CLONES'}[ $#{ $newself->{'ORIG'}->{'CLONES'} } ]
);
$self->__logwrite( 5, 'Cloned' );
return $newself;
}
my %valid_opts = map( { $_ => 1 } qw(
loglevel logfile saveSQL useCached delaymods
) );
( run in 0.629 second using v1.01-cache-2.11-cpan-65fba6d93b7 )