Accepting request 1158281 from server:database
- Update to release 3.45.2: * Added the SQLITE_RESULT_SUBTYPE property for application- defined SQL functions. * Enhancements to the JSON SQL functions * Add the FTS5 tokendata option to the FTS5 virtual table. * The SQLITE_DIRECT_OVERFLOW_READ optimization is now enabled by default. * Query planner improvements * Increase the default value for SQLITE_MAX_PAGE_COUNT from 1073741824 to 4294967294. * Enhancements to the CLI * Restore the JSON BLOB input bug, and promise to support the anomaly in subsequent releases, for backward compatibility. * Fix the PRAGMA integrity_check command so that it works on read-only databases that contain FTS3 and FTS5 tables. * Fix issues associated with processing corrupt JSONB inputs. * Fix a long-standing bug in which a read of a few bytes past the end of a memory-mapped segment might occur when accessing a craftily corrupted database using memory-mapped database. * Fix a long-standing bug in which a NULL pointer dereference might occur in the bytecode engine due to incorrect bytecode being generated for a class of SQL statements that are deliberately designed to stress the query planner but which are otherwise pointless. * Fix an error in UPSERT, introduced in version 3.35.0. * Reduce the scope of the NOT NULL strength reduction optimization that was added in version 3.35.0. - Add sqlite3-float-i586.patch to fix build on i586. - sqlite3-rtree-i686.patch is not needed anymore. - Abort build when %version and %tarversion don't match. OBS-URL: https://build.opensuse.org/request/show/1158281 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/sqlite3?expand=0&rev=150
This commit is contained in:
commit
6d6a8c75e3
BIN
sqlite-doc-3440200.zip
(Stored with Git LFS)
BIN
sqlite-doc-3440200.zip
(Stored with Git LFS)
Binary file not shown.
3
sqlite-doc-3450200.zip
Normal file
3
sqlite-doc-3450200.zip
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:645fd1078a4a03cfe83bfccc380685cc5dcf7dd132a23f78fad4f660e40cf2c7
|
||||
size 10755940
|
BIN
sqlite-src-3440200.zip
(Stored with Git LFS)
BIN
sqlite-src-3440200.zip
(Stored with Git LFS)
Binary file not shown.
3
sqlite-src-3450200.zip
Normal file
3
sqlite-src-3450200.zip
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4a45a3577cc8af683c4bd4c6e81a7c782c5b7d5daa06175ea2cb971ca71691b1
|
||||
size 14156848
|
108
sqlite3-float-i586.patch
Normal file
108
sqlite3-float-i586.patch
Normal file
@ -0,0 +1,108 @@
|
||||
Index: test/func4.test
|
||||
==================================================================
|
||||
--- test/func4.test
|
||||
+++ test/func4.test
|
||||
@@ -1,6 +1,6 @@
|
||||
-# 2013 March 10
|
||||
+# 2023-03-10
|
||||
#
|
||||
# The author disclaims copyright to this source code. In place of
|
||||
# a legal notice, here is a blessing:
|
||||
#
|
||||
# May you do good and not evil.
|
||||
@@ -7,11 +7,14 @@
|
||||
# May you find forgiveness for yourself and forgive others.
|
||||
# May you share freely, never taking more than you give.
|
||||
#
|
||||
#***********************************************************************
|
||||
# This file implements regression tests for SQLite library. The focus of
|
||||
-# this file is testing the tointeger() and toreal() functions.
|
||||
+# this file is testing the tointeger() and toreal() functions that are
|
||||
+# part of the "totype.c" extension. This file does not test the core
|
||||
+# SQLite library. Failures of tests in this file are related to the
|
||||
+# ext/misc/totype.c extension.
|
||||
#
|
||||
# Several of the toreal() tests are disabled on platforms where floating
|
||||
# point precision is not high enough to represent their constant integer
|
||||
# expression arguments as double precision floating point values.
|
||||
#
|
||||
@@ -21,10 +24,24 @@
|
||||
set tcl_precision 0
|
||||
load_static_extension db totype
|
||||
|
||||
set highPrecision(1) [expr \
|
||||
{[db eval {SELECT tointeger(9223372036854775807 + 1);}] eq {{}}}]
|
||||
+set highPrecision(2) [expr \
|
||||
+ {[db eval {SELECT toreal(-9223372036854775808 + 1);}] eq {{}}}]
|
||||
+
|
||||
+# highPrecision(3) is only known to be false on i586 with gcc-13 and -O2.
|
||||
+# It is true on the exact same platform with -O0. Both results seem
|
||||
+# reasonable, so we'll just very the expectation accordingly.
|
||||
+#
|
||||
+set highPrecision(3) [expr \
|
||||
+ {[db eval {SELECT toreal(9007199254740992 + 1);}] eq {{}}}]
|
||||
+
|
||||
+if {!$highPrecision(1) || !$highPrecision(2) || !$highPrecision(3)} {
|
||||
+ puts "NOTICE: use_long_double: [use_long_double] \
|
||||
+ highPrecision: $highPrecision(1) $highPrecision(2) $highPrecision(3)"
|
||||
+}
|
||||
|
||||
do_execsql_test func4-1.1 {
|
||||
SELECT tointeger(NULL);
|
||||
} {{}}
|
||||
do_execsql_test func4-1.2 {
|
||||
@@ -193,12 +210,10 @@
|
||||
do_execsql_test func4-1.55 {
|
||||
SELECT tointeger(18446744073709551616 + 1);
|
||||
} {{}}
|
||||
|
||||
ifcapable floatingpoint {
|
||||
- set highPrecision(2) [expr \
|
||||
- {[db eval {SELECT toreal(-9223372036854775808 + 1);}] eq {{}}}]
|
||||
|
||||
do_execsql_test func4-2.1 {
|
||||
SELECT toreal(NULL);
|
||||
} {{}}
|
||||
do_execsql_test func4-2.2 {
|
||||
@@ -339,14 +354,18 @@
|
||||
SELECT toreal(9007199254740992 - 1);
|
||||
} {9007199254740991.0}
|
||||
do_execsql_test func4-2.45 {
|
||||
SELECT toreal(9007199254740992);
|
||||
} {9007199254740992.0}
|
||||
- if {$highPrecision(2)} {
|
||||
+ if {$highPrecision(3)} {
|
||||
+ do_execsql_test func4-2.46 {
|
||||
+ SELECT toreal(9007199254740992 + 1);
|
||||
+ } {{}}
|
||||
+ } else {
|
||||
do_execsql_test func4-2.46 {
|
||||
SELECT toreal(9007199254740992 + 1);
|
||||
- } {{}}
|
||||
+ } {9007199254740992.0}
|
||||
}
|
||||
do_execsql_test func4-2.47 {
|
||||
SELECT toreal(9007199254740992 + 2);
|
||||
} {9007199254740994.0}
|
||||
do_execsql_test func4-2.48 {
|
||||
@@ -624,14 +643,18 @@
|
||||
SELECT tointeger(toreal(9007199254740992 - 1));
|
||||
} {9007199254740991}
|
||||
do_execsql_test func4-5.22 {
|
||||
SELECT tointeger(toreal(9007199254740992));
|
||||
} {9007199254740992}
|
||||
- if {$highPrecision(2)} {
|
||||
+ if {$highPrecision(3)} {
|
||||
do_execsql_test func4-5.23 {
|
||||
SELECT tointeger(toreal(9007199254740992 + 1));
|
||||
} {{}}
|
||||
+ } else {
|
||||
+ do_execsql_test func4-5.23 {
|
||||
+ SELECT tointeger(toreal(9007199254740992 + 1));
|
||||
+ } {9007199254740992}
|
||||
}
|
||||
do_execsql_test func4-5.24 {
|
||||
SELECT tointeger(toreal(9007199254740992 + 2));
|
||||
} {9007199254740994}
|
||||
if {$highPrecision(1)} {
|
||||
|
@ -1,26 +0,0 @@
|
||||
---
|
||||
ext/rtree/rtree1.test | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
Index: sqlite-src-3440000/ext/rtree/rtree1.test
|
||||
===================================================================
|
||||
--- sqlite-src-3440000.orig/ext/rtree/rtree1.test
|
||||
+++ sqlite-src-3440000/ext/rtree/rtree1.test
|
||||
@@ -760,6 +760,9 @@ do_execsql_test 20.4 {
|
||||
# Do not omit constraints that involve equality comparisons of
|
||||
# floating-point values.
|
||||
#
|
||||
+if {![string match i*86 $tcl_platform(machine)]} {
|
||||
+# It seems the fix wasn't sufficient for i[56]86, so the tests still
|
||||
+# fail there and we disable them to fix build for now.
|
||||
reset_db
|
||||
do_execsql_test 21.0 {
|
||||
CREATE VIRTUAL TABLE t1 USING rtree(id, x0, x1);
|
||||
@@ -785,6 +788,7 @@ if {$tcl_platform(machine)!="i686" || $t
|
||||
SELECT id, x0 > 9223372036854775807 AS 'a0' FROM t1;
|
||||
} {123 1}
|
||||
}
|
||||
+}
|
||||
|
||||
# 2023-10-14 dbsqlfuzz --sql-fuzz find. rtreecheck() should not call
|
||||
# BEGIN/COMMIT because that causes problems with statement transactions,
|
@ -1,3 +1,40 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Mar 12 14:50:27 UTC 2024 - Reinhard Max <max@suse.com>
|
||||
|
||||
- Update to release 3.45.2:
|
||||
* Added the SQLITE_RESULT_SUBTYPE property for application-
|
||||
defined SQL functions.
|
||||
* Enhancements to the JSON SQL functions
|
||||
* Add the FTS5 tokendata option to the FTS5 virtual table.
|
||||
* The SQLITE_DIRECT_OVERFLOW_READ optimization is now enabled by
|
||||
default.
|
||||
* Query planner improvements
|
||||
* Increase the default value for SQLITE_MAX_PAGE_COUNT from
|
||||
1073741824 to 4294967294.
|
||||
* Enhancements to the CLI
|
||||
* Restore the JSON BLOB input bug, and promise to support the
|
||||
anomaly in subsequent releases, for backward compatibility.
|
||||
* Fix the PRAGMA integrity_check command so that it works on
|
||||
read-only databases that contain FTS3 and FTS5 tables.
|
||||
* Fix issues associated with processing corrupt JSONB inputs.
|
||||
* Fix a long-standing bug in which a read of a few bytes past the
|
||||
end of a memory-mapped segment might occur when accessing a
|
||||
craftily corrupted database using memory-mapped database.
|
||||
* Fix a long-standing bug in which a NULL pointer dereference
|
||||
might occur in the bytecode engine due to incorrect bytecode
|
||||
being generated for a class of SQL statements that are
|
||||
deliberately designed to stress the query planner but which
|
||||
are otherwise pointless.
|
||||
* Fix an error in UPSERT, introduced in version 3.35.0.
|
||||
* Reduce the scope of the NOT NULL strength reduction
|
||||
optimization that was added in version 3.35.0.
|
||||
|
||||
- Add sqlite3-float-i586.patch to fix build on i586.
|
||||
|
||||
- sqlite3-rtree-i686.patch is not needed anymore.
|
||||
|
||||
- Abort build when %version and %tarversion don't match.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 7 13:38:59 UTC 2023 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||
|
||||
|
20
sqlite3.spec
20
sqlite3.spec
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package sqlite3
|
||||
#
|
||||
# Copyright (c) 2023 SUSE LLC
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -17,12 +17,12 @@
|
||||
|
||||
|
||||
%define oname sqlite
|
||||
%define tarversion 3440200
|
||||
%define docversion 3440200
|
||||
%define tarversion 3450200
|
||||
%define docversion 3450200
|
||||
%bcond_with icu
|
||||
%bcond_without check
|
||||
Name: sqlite3
|
||||
Version: 3.44.2
|
||||
Version: 3.45.2
|
||||
Release: 0
|
||||
Summary: Embeddable SQL Database Engine
|
||||
License: SUSE-Public-Domain
|
||||
@ -31,7 +31,7 @@ URL: https://www.sqlite.org/
|
||||
Source0: https://www.sqlite.org/2023/sqlite-src-%{tarversion}.zip
|
||||
Source1: baselibs.conf
|
||||
Source2: https://www.sqlite.org/2023/sqlite-doc-%{docversion}.zip
|
||||
Patch0: sqlite3-rtree-i686.patch
|
||||
Patch0: sqlite3-float-i586.patch
|
||||
BuildRequires: automake
|
||||
BuildRequires: libtool
|
||||
BuildRequires: pkgconfig
|
||||
@ -129,7 +129,15 @@ other documentation found on sqlite.org. The files can be found in
|
||||
%{_docdir}/%{name}-doc.
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n sqlite-src-%{tarversion} -a2
|
||||
# Version and %tarversion need to match, but %docversion might be different,
|
||||
IFS=. read a b c d <<< "%version"
|
||||
if [ "%tarversion" != $(printf "%1d%02d%02d%02d" $a $b $c $d) ]
|
||||
then
|
||||
echo "Version %version does not match tarversion %tarversion."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
%autosetup -p0 -n sqlite-src-%{tarversion} -a2
|
||||
|
||||
rm -v sqlite-doc-%{docversion}/releaselog/current.html
|
||||
ln -sv `echo %{docversion} | sed "s/\./_/g"`.html sqlite-doc-%{docversion}/releaselog/current.html
|
||||
|
Loading…
Reference in New Issue
Block a user