On Mon Jan 19 22:27:07 2015, ppisar wrote:
Show quoted text> On Sat, Jan 17, 2015 at 01:58:37AM -0500, Kenichi Ishigaki via RT
> wrote:
> > If you are interested in supporting older SQLite libraries, could you
> > send
> > me a patch/pull-request to add apporpriate sets of #ifdef
> > SQLITE_VERSION_NUMBER >= ... #endif, and skip_all section in some of
> > the
> > tests?
> >
> While skipping the URI filename API is easy, this is not the only
> unconditionaly used API. There are vtables, status interface, and
> probably
> many more.
>
> I think the minimal version listed in the Makefile.PL is completly
> useless now.
>
> -- Petr
I suppose you are trying to use an "intentionally disabled" code in Makefile.PL. As you see, it's not actively maintained (because it's disabled), and I usually don't care about it because I believe DBD::SQLite should always be used with the bundled SQLite library to keep things easy for us and downstream module maintainers, as it's quite tedious to check not only the version of DBD::SQLite and also the version of the SQLite library built and linked to it while doing something (most probably, while testing their modules).
Historically speaking, 3.6.0 was called for because DBD::SQLite had explicitly depended on a C function introduced at that version, until recently. Now its usage is gone, DBD::SQLite may or may not compile with an older version than that (if patched appropriately).
So I ask you again: do you need to support older libraries for whatever reasons? And up to which version do you want to support?
As you might have seen, there are several #if SQLITE_VERSION_NUMBER blocks in dbdimp.c, added several years ago to let it compile with SQLite 3.6.0. If a patch to add more pops up (from you, or from someone else, maybe), I'm happy to apply it. If not, I'd rather leave it as is and just close this. I know there are several more to be fixed, but I suppose they are not too many.