From patchwork Mon Dec 9 11:11:13 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adolf Belka X-Patchwork-Id: 8311 Return-Path: Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mail01.haj.ipfire.org", Issuer "R11" (verified OK)) by web04.haj.ipfire.org (Postfix) with ESMTPS id 4Y6K1R3WDTz3wxg for ; Mon, 9 Dec 2024 11:11:23 +0000 (UTC) Received: from mail02.haj.ipfire.org (mail02.haj.ipfire.org [172.28.1.201]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) client-signature ECDSA (secp384r1)) (Client CN "mail02.haj.ipfire.org", Issuer "E6" (verified OK)) by mail01.ipfire.org (Postfix) with ESMTPS id 4Y6K1P0vp5z12m; Mon, 9 Dec 2024 11:11:21 +0000 (UTC) Received: from mail02.haj.ipfire.org (localhost [127.0.0.1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4Y6K1N5qmpz340V; Mon, 9 Dec 2024 11:11:20 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mail01.haj.ipfire.org", Issuer "R11" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4Y6K1L33xqz30VM for ; Mon, 9 Dec 2024 11:11:18 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4Y6K1K1fqfzrN; Mon, 9 Dec 2024 11:11:17 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1733742677; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=hGcI44aOfo8lS/mC5nKgJwpfBpA1kCSPjynmLSg4+yQ=; b=0yB3wfeFxIZZevJwuAsoPEBkVmr3x1KBZHwtlXtyr5D4Q31hX07dAaunqCRf1vezacRoYb +dY1b1QfIRvcVCDQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1733742677; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=hGcI44aOfo8lS/mC5nKgJwpfBpA1kCSPjynmLSg4+yQ=; b=I4kYvCebPIqoZH+xrKEHE05PtN3Ym7re7dKZk000l7ngJgNs/4bWF1IoIEVAVpHc0ibC/l 7JVgrk0XhzHnlUUqd1qJ53PoFThKQKKmooIoAEB0OYs5sKvwVe+wqOf0Ib9WBeksnfJrFA 7KI8CHfEo/bn051wTApS/sEvc5Ac26BYkPd6jCpuO9Xrju3s4CzntyG3YNlASBi4iMcPBl yYu3Wza6TPJDymGFaBbmokl9BDqQ/aN0OGEkWeQsm04Y2o73PPl6YH3NBzWT12N6zWkeSP Hxis2nIPppmPrg28Xl+J5qEDht6zGb5tb19IZ2Wh99dJ6bxZJqHY3UnDha/gpA== From: Adolf Belka To: development@lists.ipfire.org Subject: [PATCH] sqlite: Update to version 3470200 Date: Mon, 9 Dec 2024 12:11:13 +0100 Message-ID: <20241209111113.4305-1-adolf.belka@ipfire.org> MIME-Version: 1.0 Message-ID-Hash: T54JZRKSHOIAKSA4O6FH25PP27DBOA6B X-Message-ID-Hash: T54JZRKSHOIAKSA4O6FH25PP27DBOA6B X-MailFrom: adolf.belka@ipfire.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.8 Precedence: list List-Id: IPFire development talk Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: - Update from version 3460100 to 3470200 - Update of rootfile not required - Changelog 3470200 Fix a problem in text-to-floating-point conversion for SQLite that can cause values between '1.8446744073709550592eNNN' and '1.8446744073709551609eNNN' for any exponent NNN to be rendered incorrectly. In other words, some numeric text values where the first 16 significant digits are '1844674407370955' might be converted into the wrong floating-point value. See forum thread 569a7209179a7f5e. This problem only arises on x64 and i386 hardware. The problem was introduced in 3.47.0. Other minor bug fixes. 3470100 Fix the makefiles so that they once again honored DESTDIR for the "install" target. Add the SQLITE_IOCAP_SUBPAGE_READ capability to the VFS, to work around issues on some non-standard VFSes caused by making SQLITE_DIRECT_OVERFLOW_READ the default in version 3.45.0. Fix problems with line endings in the new sqlite3_rsync.exe utility on Windows. Fix incorrect answers to certain obscure IN queries caused by new query optimizations added in the 3.47.0 release. Other minor bug fixes. 3470000 Allow arbitrary expressions in the second argument to the RAISE function. If the RHS of the ->> operator is negative, then access array elements counting from the right. Fix a problem with rolling back hot journal files in the seldom-used unix-dotfile VFS. FTS5 tables can now be dropped even if they use a non-standard tokenizer that has not been registered. Fix the group_concat() aggregate function so that it returns an empty string, not a NULL, if it receives a single input value which is an empty string. Enhance the generate_series() table-valued function so that it is able to recognize and use constraints on its output value. Preupdate hooks now recognize when a column added by ALTER TABLE ADD COLUMN has a non-null default value. Performance optimizations: Improved reuse of subqueries associated with the IN operator, especially when the IN operator has been duplicated due to predicate push-down. Use a Bloom filter on subqueries on the right-hand side of the IN operator, in cases where that seems likely to improve performance. Ensure that queries like "SELECT func(a) FROM tab GROUP BY 1" only invoke the func() function once per row. No attempt is made to create automatic indexes on a column that is known to be non-selective because of its use in other indexes that have been analyzed. Adjustments to the query planner so that it produces better plans for star queries with a large number of dimension tables. Add the "order-by-subquery" optimization, that seeks to disable sort operations in outer queries if the desired order is obtained naturally due to ORDER BY clauses in subqueries. The "indexed-subtype-expr" optimization strives to use expressions that are part of an index rather than recomputing the expression based on table values, as long as the query planner can prove that the subtype of the expression will never be used. Miscellaneous coding tweaks for faster runtimes. Enhancements to SQLite-related command-line programs: Add the experimental sqlite3_rsync program. Add extension functions median(), percentile(), percentile_cont(), and percentile_disc() to the CLI. Add the .www dot-command to the CLI. The sqlite3_analyzer utility now provides a break-out of statistics for WITHOUT ROWID tables. The sqldiff utility avoids creating an empty database if its second argument does not exist. Enhance the sqlite_dbpage table-valued function such that INSERT can be used to increase or decrease the size of the database file. SQLite no longer makes any use of the "long double" data type, as hardware support for long double is becoming less common and long double creates challenges for some compiler tool chains. Instead, SQLite uses Dekker's algorithm when extended precision is needed. The TCL Interface for SQLite supports TCL9. Everything probably still works for TCL 8.5 and later, though this is not guaranteed. Users are encouraged to upgrade to TCL9. JavaScript/WASM: Fix a corruption-causing bug in the JavaScript "opfs" VFS. Correct "mode=ro" handling for the "opfs" VFS. Work around a couple of browser-specific OPFS quirks. FTS5 Changes: Add the fts5_tokenizer_v2 API and the locale=1 option, for creating custom locale-aware tokenizers and fts5 tables that may take advantage of them. Add the contentless_unindexed=1 option, for creating contentless fts5 tables that store the values of any UNINDEXED columns persistently in the database. Allow an FTS5 table to be dropped even if it uses a custom tokenizer whose implementation is not available. Signed-off-by: Adolf Belka --- lfs/sqlite | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lfs/sqlite b/lfs/sqlite index 6998ae087..ee7d96033 100644 --- a/lfs/sqlite +++ b/lfs/sqlite @@ -24,7 +24,7 @@ include Config -VER = 3460100 +VER = 3470200 THISAPP = sqlite-autoconf-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_BLAKE2 = b84bc7f6cbe2f1a4894b725d68ebdc58eebc312581fd27e74a75086e834b2b2f4ff09b907e193d8eaf78d9829149de8d9ea587cf650849fe4d3fc84db64ddfad +$(DL_FILE)_BLAKE2 = 3c2ea6cba87f5850a9c2355cc213182d351a9d7b26687f77c07178526b300eec19040804a713e6fa3db704dcb4e0e4921ef849f6bc14496adcfc22875048c640 install : $(TARGET)