Test with threaded perl (re dTHR etc).
Make thread safe.

Since I'm going to add a perl-level @flags = DBI::looks_like_a_number(@ary)
a perl-level DBI::chop_blanks(@lvalue_ary) might be a good idea
(you'd only pass fields you wanted chopped as args).
Plus an XS macro DBI_CHOP_BLANKS(sv)
                                                            
Upload PPT presentation to CPAN.

fetch_scroll handling via get_fbav.

Add $sth->{Statement}.

Add $sth->{RowCacheSize} and $dbh->prepare($stmt, { RowCacheSize => $n });

Add per-handle debug file pointer (or at least a macro that _looks_ like that).
Or, better yet, a function pointer so we can do more clever things.

Rework handle creation for
$h->clone ?, and maybe
$dbh->connect([$user, $passwd])	# to reconnect, possibly as a different user

generic dbd_preparse

SQL Parser
  CPAN/authors/id/JAKE/perl5-byacc-patches-0.5.tar.gz

Fix shared error codes between handles!

Add problem reporting info to DBI.pm

Metadata!

Add 'break handling' when field values change? Use two fbav's so 'previous
record' is available. Defind break fields and handlers. Call them via
an alternate fetch_with_break method.


-----------
> > > I would prefer to set this attributes on statement level [as 
> > > an attribute to prepare()] instead of setting it via $dbh,
> > > but this is only a detail. 
> > 
> > You can set it any any level. Isn't that clear from the docs?
> 
> As I understand the doc, it is possible to do
> 
>     $sth = $dbh->prepare("....");
>     $sth->execute();
>     $sth->{LongReadLen} = 80;
>     @foo = $sth->fetchrow();
>     $sth->{LongReadLen} = 4096;
>     @bar = $sth->fetchrow(); 
> 
> so that the fetch of the second row is done with a different 
> {LongReadLen} value ? 
> 
> This sounds complicated with the current structure of DBD::Solid,
> as I have only one buffer for the entire row allocated during
> prepare(), but I must admit that I had no time [yet] to look 
> into the last DBD::ODBC how you handle this case.

Umm. I see what you mean. It's reasonable to assume that a driver
will 'freeze' the value of applicable attributes at prepare or execute
time. The driver should probably document that kind of thing.

I think the DBI's template .xst file will probably grow some code
to handle attributes to prepare semi-automatically, sometime.

Tim.
----------- 
