Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:103182 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 39868 invoked from network); 19 Sep 2018 20:47:06 -0000 Received: from unknown (HELO mail.kd2.org) (5.135.163.151) by pb1.pair.com with SMTP; 19 Sep 2018 20:47:06 -0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=bohwaz.net; s=mail; h=Content-Transfer-Encoding:Content-Type:MIME-Version:References:In-Reply-To:Message-ID:Subject:To:From:Date; bh=PrCp+hY65Ex/HCBcEQVa0iC/TFbJtlkt5l7fOZq+LLM=; b=ADaSx0I9Sp5QpkxRbVcUtXWPVjcKdoTLZO2TiZZDBkvC7onsGKJkwaXU9gshat8DDLxflDT3Jv6nNDc9BNB5a0XfqQGYOqqoFCSBVDviWbGImRnZsBDJkfxZVAwaEyCfMwwRJMibs84z5pX+GvDvplycebujFMVBF3HbWLJmBS8=; Received: from 168.234.91.92.rev.sfr.net ([92.91.234.168] helo=platypus) by mail.kd2.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1g2fjG-0004ZI-3f for internals@lists.php.net; Wed, 19 Sep 2018 18:53:30 +0200 Date: Wed, 19 Sep 2018 18:53:24 +0200 To: internals@lists.php.net Message-ID: <20180919185324.6fdb080a@platypus> In-Reply-To: <381a49ae-eed5-889a-8d0c-bec4b4531d82@gmx.de> References: <381a49ae-eed5-889a-8d0c-bec4b4531d82@gmx.de> X-Mailer: Claws Mail 3.11.1 (GTK+ 2.24.25; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Authenticated-User: bwz@bohwaz.net X-Authenticator: login X-Invalid-HELO: HELO is no FQDN (contains no dot) (See RFC2821 4.1.1.1) X-Sender-Verify: SUCCEEDED (sender exists & accepts mail) Subject: Re: [PHP-DEV] Unbundle libsqlite3? From: php@bohwaz.net (BohwaZ) On Mon, 17 Sep 2018 15:16:13 +0200 / "Christoph M. Becker" said : > Hi! >=20 > We bundle an unmodified libsqlite3 for at least two years. Since then > all updates go into any dev, alpha and beta releases, while security > patches (usually backports from libsqlite3) go into stable branches. >=20 > ext/sqlite3 requires libsqlite =E2=89=A5 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 (!). There is also a PR patch (from me) that should make it in PHP 7.4 that implements this feature in pdo_sqlite too. 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). As for bundling or not, I'm on Devuan and it is using the system version of SQLite as far as I know so I don't see the need to bundle it with PHP, but I don't have a good view of whether it might be needed on other platforms.