* Fix a problem in text-to-floating-point conversion that affects
text values where the first 16 significant digits are
'1844674407370955'. This issue was introduced in 3.47.0 and
only arises on x64 and i386 hardware.
* Other minor bug fixes.
- Enable the session extension, because NodeJS 22 needs it.
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=340
- Update to release 3.47.1:
* 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 incorrect answers to certain obscure IN queries caused by
new query optimizations added in the 3.47.0 release.
* Other minor bug fixes.
- Update to release 3.47.0:
* 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.
* 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
OBS-URL: https://build.opensuse.org/request/show/1227134
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/sqlite3?expand=0&rev=154
* 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 incorrect answers to certain obscure IN queries caused by
new query optimizations added in the 3.47.0 release.
* Other minor bug fixes.
- Update to release 3.47.0:
* 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.
* 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
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=338
* Improved robustness while parsing the tokenize= arguments in
FTS5.
* Enhancements to covering index prediction in the query planner.
* Do not let the number of terms on a VALUES clause be limited by
SQLITE_LIMIT_COMPOUND_SELECT, even if the VALUES clause
contains elements that appear to be variables due to
double-quoted string literals.
* Fix the window function version of group_concat() so that it
returns an empty string if it has one or more empty string
inputs.
* In FTS5 secure-delete mode, fix false-positive integrity-check
reports about corrupt indexes.
* Syntax errors in ALTER TABLE should always return SQLITE_ERROR.
In some cases, they were formerly returning SQLITE_INTERNAL.
* Other minor fixes.
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=336
- Update to release 3.46.0:
* https://sqlite.org/releaselog/3_46_0.html
* Enhance PRAGMA optimize in multiple ways.
* Enhancements to the date and time functions.
* Add support for underscore ("_") characters between digits in
numeric literals.
* Add the json_pretty() SQL function.
* Query planner improvements.
* Allocate additional memory from the heap for the SQL parser
stack if that stack overflows, rather than reporting a "parser
stack overflow" error.
* Allow ASCII control characters within JSON5 string literals.
* Fix the -> and ->> JSON operators so that when the right-hand
side operand is a string that looks like an integer it is still
treated as a string, because that is what PostgreSQL does.
* Obsoletes sqlite3-float-i586.patch.
OBS-URL: https://build.opensuse.org/request/show/1176758
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/sqlite3?expand=0&rev=152
* https://sqlite.org/releaselog/3_46_0.html
* Enhance PRAGMA optimize in multiple ways.
* Enhancements to the date and time functions.
* Add support for underscore ("_") characters between digits in
numeric literals.
* Add the json_pretty() SQL function.
* Query planner improvements.
* Allocate additional memory from the heap for the SQL parser
stack if that stack overflows, rather than reporting a "parser
stack overflow" error.
* Allow ASCII control characters within JSON5 string literals.
* Fix the -> and ->> JSON operators so that when the right-hand
side operand is a string that looks like an integer it is still
treated as a string, because that is what PostgreSQL does.
* Obsoletes sqlite3-float-i586.patch.
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=334
- Update to release 3.45.3:
* Fix a long-standing bug (going back to version 3.24.0) that
might (rarely) cause the "old.*" values of an UPDATE trigger
to be incorrect if that trigger fires in response to an UPSERT.
* Reduce the scope of the NOT NULL strength reduction
optimization that was added as item 8e in version 3.35.0. The
optimization was being attempted in some contexts where it did
not work, resulting in incorrect query results.
- Add SQLITE_STRICT_SUBTYPE=1 as recommended by upstream.
OBS-URL: https://build.opensuse.org/request/show/1169661
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/sqlite3?expand=0&rev=151
* Fix a long-standing bug (going back to version 3.24.0) that
might (rarely) cause the "old.*" values of an UPDATE trigger
to be incorrect if that trigger fires in response to an UPSERT.
* Reduce the scope of the NOT NULL strength reduction
optimization that was added as item 8e in version 3.35.0. The
optimization was being attempted in some contexts where it did
not work, resulting in incorrect query results.
- Add SQLITE_STRICT_SUBTYPE=1 as recommended by upstream.
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=332
- 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
* 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.
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=329
* Fix a mistake in the CLI that was introduced by the fix in
3.44.1.
* Fix a problem in FTS5 that was discovered during internal fuzz
testing only minutes after the 3.44.1 release was tagged.
* Fix incomplete assert() statements that the fuzzer discovered.
* Fix a couple of harmless compiler warnings that appeared in
debug builds with GCC 16.
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=324
- sqlite3-rtree-i686.patch: temporary build fix for 32-bit x86.
- Update to: 3.43.2:
* Fix a couple of obscure UAF errors and an obscure memory leak.
* Omit the use of the sprintf() function from the standard
library in the CLI, as this now generates warnings on some
platforms.
* Avoid conversion of a double into unsigned long long integer,
as some platforms do not do such conversions correctly.
- Update to: 3.43.1
* Fix a regression in the way that the sum(), avg(), and total()
aggregate functions handle infinities.
* Fix a bug in the json_array_length() function that occurs when
the argument comes directly from json_remove().
* Fix the omit-unused-subquery-columns optimization (introduced
in in version 3.42.0) so that it works correctly if the
subquery is a compound where one arm is DISTINCT and the other
is not.
- Update to 3.43.0:
* Add support for Contentless-Delete FTS5 Indexes. This is a
variety of FTS5 full-text search index that omits storing the
content that is being indexed while also allowing records to
be deleted.
* Enhancements to the date and time functions:
+ Added new time shift modifiers of the form
±YYYY-MM-DD HH:MM:SS.SSS.
+ Added the timediff() SQL function.
* Added the octet_length(X) SQL function.
OBS-URL: https://build.opensuse.org/request/show/1119230
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/sqlite3?expand=0&rev=146
* Fix a couple of obscure UAF errors and an obscure memory leak.
* Omit the use of the sprintf() function from the standard
library in the CLI, as this now generates warnings on some
platforms.
* Avoid conversion of a double into unsigned long long integer,
as some platforms do not do such conversions correctly.
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=317
* Fix a regression in the way that the sum(), avg(), and total()
aggregate functions handle infinities.
* Fix a bug in the json_array_length() function that occurs when
the argument comes directly from json_remove().
* Fix the omit-unused-subquery-columns optimization (introduced
in in version 3.42.0) so that it works correctly if the
subquery is a compound where one arm is DISTINCT and the other
is not.
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=316
- Update to 3.43.0:
* Add support for Contentless-Delete FTS5 Indexes. This is a variety of FTS5 full-text search index that omits storing the content that is being indexed while also allowing records to be deleted.
* Enhancements to the date and time functions:
+ Added new time shift modifiers of the form ±YYYY-MM-DD HH:MM:SS.SSS.
+ Added the timediff() SQL function.
* Added the octet_length(X) SQL function.
* Added the sqlite3_stmt_explain() API.
* Query planner enhancements:
+ Generalize the LEFT JOIN strength reduction optimization so that it works for RIGHT and FULL JOINs as well. Rename it to OUTER JOIN strength reduction.
+ Enhance the theorem prover in the OUTER JOIN strength reduction optimization so that it returns fewer false-negatives.
* Enhancements to the decimal extension:
+ New function decimal_pow2(N) returns the N-th power of 2 for integer N between -20000 and +20000.
+ New function decimal_exp(X) works like decimal(X) except that it returns the result in exponential notation - with a "e+NN" at the end.
+ If X is a floating-point value, then the decimal(X) function now does a full expansion of that value into its exact decimal equivalent.
* Performance enhancements to JSON processing results in a 2x performance improvement for some kinds of processing on large JSON strings.
* The VFS for unix now assumes that the nanosleep() system call is available unless compiled with -DHAVE_NANOSLEEP=0.
OBS-URL: https://build.opensuse.org/request/show/1106058
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=315
- Update to 3.42.0:
* Add the FTS5 secure-delete command. This option causes all
forensic traces to be removed from the FTS5 inverted index when
content is deleted.
* Enhance the JSON SQL functions to support JSON5 extensions.
* The SQLITE_CONFIG_LOG and SQLITE_CONFIG_PCACHE_HDRSZ calls to
sqlite3_config() are now allowed to occur after
sqlite3_initialize().
* New sqlite3_db_config() options:
SQLITE_DBCONFIG_STMT_SCANSTATUS and
SQLITE_DBCONFIG_REVERSE_SCANORDER.
* Query planner improvements.
* Add the --unsafe-testing command-line option.
* Allow commands ".log on" and ".log off", even in --safe mode.
* "--" as a command-line argument means all subsequent arguments
that start with "-" are interpreted as normal non-option
argument.
* Magic parameters ":inf" and ":nan" bind to floating point
literals Infinity and NaN, respectively.
* Add the ability for application-defined SQL functions to have
the same name as join keywords: CROSS, FULL, INNER, LEFT,
NATURAL, OUTER, or RIGHT.
* Enhancements to PRAGMA integrity_check
* Allow the session extension to be configured to capture changes
from tables that lack an explicit ROWID.
* Added the subsecond modifier to the date and time functions.
* Negative values passed into sqlite3_sleep() are henceforth
interpreted as 0.
* The maximum recursion depth for JSON arrays and objects is
lowered from 2000 to 1000.
OBS-URL: https://build.opensuse.org/request/show/1087547
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/sqlite3?expand=0&rev=145
* Add the FTS5 secure-delete command. This option causes all
forensic traces to be removed from the FTS5 inverted index when
content is deleted.
* Enhance the JSON SQL functions to support JSON5 extensions.
* The SQLITE_CONFIG_LOG and SQLITE_CONFIG_PCACHE_HDRSZ calls to
sqlite3_config() are now allowed to occur after
sqlite3_initialize().
* New sqlite3_db_config() options:
SQLITE_DBCONFIG_STMT_SCANSTATUS and
SQLITE_DBCONFIG_REVERSE_SCANORDER.
* Query planner improvements.
* Add the --unsafe-testing command-line option.
* Allow commands ".log on" and ".log off", even in --safe mode.
* "--" as a command-line argument means all subsequent arguments
that start with "-" are interpreted as normal non-option
argument.
* Magic parameters ":inf" and ":nan" bind to floating point
literals Infinity and NaN, respectively.
* Add the ability for application-defined SQL functions to have
the same name as join keywords: CROSS, FULL, INNER, LEFT,
NATURAL, OUTER, or RIGHT.
* Enhancements to PRAGMA integrity_check
* Allow the session extension to be configured to capture changes
from tables that lack an explicit ROWID.
* Added the subsecond modifier to the date and time functions.
* Negative values passed into sqlite3_sleep() are henceforth
interpreted as 0.
* The maximum recursion depth for JSON arrays and objects is
lowered from 2000 to 1000.
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=313
- Update to 3.41.2:
* Multiple fixes for reads past the end of memory buffers
* Fix the sqlite3_error_offset() so that it does not return
out-of-range values when reporting errors associated with
generated columns.
* Multiple fixes in the query query optimizer for problems that
cause incorrect results for bizarre, fuzzer-generated queries.
* Increase the size of the reference counter in the page cache
object to 64 bits to ensure that the counter never overflows.
* Fix a performance regression caused by a bug fix in patch
release 3.41.1.
* Fix a few incorrect assert() statements.
- Update to 3.41.1:
* Ensure that the datatype for column t1.x in "CREATE TABLE t1 AS
SELECT CAST(7 AS INT) AS x;" continues to be INT and is not
NUM, for historical compatibility.
* Enhance PRAGMA integrity_check to detect when extra bytes
appear at the end of an index record.
* Fix various obscure bugs reported by the user community
OBS-URL: https://build.opensuse.org/request/show/1073837
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/sqlite3?expand=0&rev=144
* Multiple fixes for reads past the end of memory buffers
* Fix the sqlite3_error_offset() so that it does not return
out-of-range values when reporting errors associated with
generated columns.
* Multiple fixes in the query query optimizer for problems that
cause incorrect results for bizarre, fuzzer-generated queries.
* Increase the size of the reference counter in the page cache
object to 64 bits to ensure that the counter never overflows.
* Fix a performance regression caused by a bug fix in patch
release 3.41.1.
* Fix a few incorrect assert() statements.
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=311
- Update to 3.41.0:
* https://www.sqlite.org/releaselog/3_41_0.html
* Various query planner improvements.
* Add the built-in unhex() SQL function.
* Add the base64 and base85 application-defined functions as an
extension and include that extension in the CLI.
* In-memory databases created using sqlite3_deserialize() now
report their filename as an empty string, not as 'x'.
* The ".scanstats est" command provides query planner estimates
in profiles.
* Enhance the --safe command-line option to disallow dangerous
SQL functions.
* The double-quoted string misfeature is now disabled by default
for CLI builds.
* Various other improvements and performance enhancements.
- The new version obsoletes sqlite-src-3390000-func7-pg-181.patch
OBS-URL: https://build.opensuse.org/request/show/1067149
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/sqlite3?expand=0&rev=142
* https://www.sqlite.org/releaselog/3_41_0.html
* Various query planner improvements.
* Add the built-in unhex() SQL function.
* Add the base64 and base85 application-defined functions as an
extension and include that extension in the CLI.
* In-memory databases created using sqlite3_deserialize() now
report their filename as an empty string, not as 'x'.
* The ".scanstats est" command provides query planner estimates
in profiles.
* Enhance the --safe command-line option to disallow dangerous
SQL functions.
* The double-quoted string misfeature is now disabled by default
for CLI builds.
* Various other improvements and performance enhancements.
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=305
* Use a statement journal on DML statement affecting two or more
database rows if the statement makes use of a SQL functions
that might abort.
* Use a mutex to protect the PRAGMA temp_store_directory and
PRAGMA data_store_directory statements, even though they are
decremented and documented as not being threadsafe.
OBS-URL: https://build.opensuse.org/package/show/server:database/sqlite3?expand=0&rev=293