The latest version passes these tests with perl 5.6.1 on win98:

  DBI-1.21/t/*          278/278 ok  (proxy.t,preparse.t skipped)
  DBD-AnyData-0.06/t*     40/40 ok
  DBD-CSV-0.2004/t*     244/244 ok
  DBD-Sprite-0.30/t/*     28/28 ok
  DBD-XBase-0.161/t*    238/239 ok  (same with real DBI)

It includes patches for neat() from Randal and several bug fixes and a
patch for hash() from John Tobey, thanks!  I also cleaned up some things
and discovered a few changes needed to make it pass all of the DBD tests
(Tim, these are marked in the code and show where DBI/t* possibly need
to be changed).

To test it (and please do):

  1. put attatched PurePerl.pm in your DBI directory
  2. patch DBI.pm with the small attatched patch (or add it by hand)
  3. set the environment variable DBI_PUREPERL to 2

To return to real DBI, just unset DBI_PUREPERL.

-- 
Jeff

Attachment: PurePerl.pm
Description: application/unknown-content-type-pm_auto_file

217c217,228
< bootstrap DBI;
---
> if ( $ENV{DBI_PUREPERL} ) {
>     if ( $ENV{DBI_PUREPERL} == 1 ) {
>         eval { bootstrap DBI };
>     }
>     if ($@ or $ENV{DBI_PUREPERL} == 2 ) {
>         require DBI::PurePerl;
>     }
> }
> else {
>     bootstrap DBI;
> }
> 
263c274,277
< sub DBI::var::STORE    { Carp::croak("Can't modify \$DBI::${$_[0]} special 
variable") }
---
> sub DBI::var::STORE    {
>      Carp::croak("Can't modify \$DBI::${$_[0]} special variable") 
>            unless $DBI::PurePerl and ${$_[0]} =~ /(\*err|&errstr|"state)/
> }

Reply via email to