Re: Unbundle libsqlite3?
| From: | Christoph M. Becker | Date: | Wed, 19 Sep 2018 17:41:11 +0000 |
| Subject: | Re: Unbundle libsqlite3? | ||
| References: | 1 2 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-103183@lists.php.net to get a copy of this message | ||
On 19.09.2018 at 18:53, BohwaZ wrote:
> On Mon, 17 Sep 2018 15:16:13 +0200 / "Christoph M. Becker"
> <cmbecker69@gmx.de> said :
>
>> ext/sqlite3 requires libsqlite ≥ 3.3.9[1] which has been released on
>> 2007-01-04[2] (i.e. more than eleven years ago!). ext/pdo_sqlite has
>> no specific version requirement; there is a check for
>> sqlite3_open()[3] which I believe is available since 3.0.0.
>
> I believe that SQLite3Stmt::readOnly requires SQLite 3.7.4 released in
> 2010, bundled since PHP 5.3.6 (!).
Ah, indeed[1]!
> There is also a PR patch (from me) that should make it in PHP 7.4 that
> implements this feature in pdo_sqlite too.
PR #2698[2] seems to require an RFC. IMHO, it's best to present RFCs
and voting on them as early as possible (instead of rushing them at the
last moment). :)
> I believe this is the most recent feature that we are using. But it
> should return false if the SQLite version installed is older than that
> (IMHO it should throw an exception instead, but that's the current
> behaviour anyway).
I agree that an exception would be better. A sensible alternative might
be to not even include the method for older libsqlite3. Either way, a
PR targeting master would be welcome.
[1]
<https://github.com/php/php-src/blob/php-7.3.0RC1/ext/sqlite3/sqlite3.c#L1393-L1397>
[2] <https://github.com/php/php-src/pull/2698>
--
Christoph M. Becker