On Wed, Feb 08, 2012 at 10:58:37AM +0000, Tim Bunce wrote:
> > PS - I'm currently working on bringing PERINTERP and DBIS into the
> > Brave New World of MY_CXT.
>
> Wonderful!
>
> I presume that'll cause an API change that'll require compiled drivers
> to be recompiled (ie. we'd bump DBISTATE_VERSION so check_version() will
> croak). It's been many years since a DBI upgrade has required that
> (1998 as far as I can tell from the Changes file).
I dunno. The thing that is changing from DBD's code perspective is some of
the macros; in particular, on threaded builds, DBIS_PUBLISHED_LVALUE is
now defined(*) as:
#define DBIS_PUBLISHED_LVALUE (*(dbi_state_lval(aTHX)))
where dbi_state_lval() is a new function.
When I tried doing a 'make test' of DBI against a perl with an existing
DBI and DBD::mysql installed, one of the first DBI tests (01basics.t?
02dbidrv.t?) chucked out some mysql errors, so I just deleted DBD::mysql
from the perl. Perhaps that means the version does indeed need bumping?
Anyway, you'll have a better idea once I submit the patch - I'll leave any
bumping to you.
(*) well, currently, anyway.
--
My Dad used to say 'always fight fire with fire', which is probably why
he got thrown out of the fire brigade.