Next | Query returned 30 messages, browsing 1 to 10 | Previous

History of commit frequency

CVS Commit History:

   2019-04-18 12:10:03 by Adam Ciarcinski | Files touched by this commit (8) | Package updated
Log message:
sqlite3: updated to 3.28.0

SQLite Release 3.28.0:

Enhanced window functions:
Add support the EXCLUDE clause.
Add support for window chaining.
Add support for GROUPS frames.
Add support for "<expr> PRECEDING" and "<expr> \ 
FOLLOWING" boundaries in RANGE frames.
Added the new sqlite3_stmt_isexplain(S) interface for determining whether or not \ 
a prepared statement is an EXPLAIN.
Enhanced VACUUM INTO so that it works for read-only databases.
New query optimizations:
Enable the LIKE optimization for cases when the ESCAPE keyword is present and \ 
PRAGMA case_sensitive_like is on.
In queries that are driven by a partial index, avoid unnecessary tests of the \ 
constraint named in the WHERE clause of the partial index, since we know that \ 
constraint must always be true.
Enhancements to the TCL Interface:
Added the -returntype option to the function method.
Added the new bind_fallback method.
Enhancements to the CLI:
Added support for bound parameters and the .parameter command.
Fix the readfile() function so that it returns an empty BLOB rather than \ 
throwing an out-of-memory error when reading an empty file.
Fix the writefile() function so that when it creates new directories along the \ 
path of a new file, it gives them umask permissions rather than the same \ 
permissions as the file.
Change --update option in the .archive command so that it skips files that are \ 
already in the archive and are unchanged. Add the new --insert option that works \ 
like --update used to work.
Added the fossildelta.c extension that can create, apply, and deconstruct the \ 
Fossil DVCS file delta format that is used by the RBU extension.
Added the SQLITE_DBCONFIG_WRITABLE_SCHEMA verb for the sqlite3_db_config() \ 
interface, that does the same work as PRAGMA writable_schema without using the \ 
SQL parser.
Added the sqlite3_value_frombind() API for determining if the argument to an SQL \ 
function is from a bound parameter.
Security and compatibilities enhancements to fts3_tokenizer():
The fts3_tokenizer() function always returns NULL unless either the legacy \ 
application-defined FTS3 tokenizers interface are enabled using the \ 
sqlite3_db_config(SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER) setting, or unless the \ 
first argument to fts3_tokenizer() is a bound parameter.
The two-argument version of fts3_tokenizer() accepts a pointer to the tokenizer \ 
method object even without the \ 
sqlite3_db_config(SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER) setting if the second \ 
argument is a bound parameter
Improved robustness against corrupt database files.
Miscellaneous performance enhancements
   2019-02-25 19:04:30 by Adam Ciarcinski | Files touched by this commit (6) | Package updated
Log message:
sqlite3: updated to 3.27.2

SQLite Release 3.27.2:
Fix a bug in the IN operator that was introduced by an attempted optimization in \ 
version 3.27.0.
Fix a bug causing a crash when a window function is misused.
Fix various documentation typos
   2019-02-11 11:45:21 by Adam Ciarcinski | Files touched by this commit (8) | Package updated
Log message:
sqlite3: updated to 3.27.1

SQLite Release 3.27.1:
Fix a bug in the query optimizer: an adverse interaction between the OR \ 
optimization and the optimization that tries to use values read directly from an \ 
expression index instead of recomputing the expression.

Changes carried forward from version 3.27.0:
Added the VACUUM INTO command
Issue an SQLITE_WARNING message on the error log if a double-quoted string \ 
literal is used.
The sqlite3_normalized_sql() interface works on any prepared statement created \ 
using sqlite3_prepare_v2() or sqlite3_prepare_v3(). It is no longer necessary to \ 
use sqlite3_prepare_v3() with SQLITE_PREPARE_NORMALIZE in order to use \ 
Added the remove_diacritics=2 option to FTS3 and FTS5.
Added the SQLITE_PREPARE_NO_VTAB option to sqlite3_prepare_v3(). Use that option \ 
to prevent circular references to shadow tables from causing resource leaks.
Enhancements to the sqlite3_deserialize() interface:
Add the SQLITE_FCNTL_SIZE_LIMIT file-control for setting an upper bound on the \ 
size of the in-memory database created by sqlite3_deserialize. The default upper \ 
bound is 1GiB, or whatever alternative value is specified by \ 
Honor the SQLITE_DESERIALIZE_READONLY flag, which was previously described in \ 
the documentation, but was previously a no-op.
Enhance the "deserialize" command of the TCL Interface to give it new \ 
"--maxsize N" and "--readonly BOOLEAN" options.
Enhancements to the CLI, mostly to support testing and debugging of the SQLite \ 
library itself:
Add support for ".open --hexdb". The "dbtotxt" utility \ 
program used to generate the text for the "hexdb" is added to the \ 
source tree.
Add support for the "--maxsize N" option on ".open \ 
Add the "--memtrace" command-line option, to show all memory \ 
allocations and deallocations.
Add the ".eqp trace" option on builds with SQLITE_DEBUG, to enable \ 
bytecode program listing with indentation and PRAGMA vdbe_trace all in one step.
Add the ".progress" command for accessing the \ 
sqlite3_progress_handler() interface.
Add the "--async" option to the ".backup" command.
Add options "--expanded", "--normalized", \ 
"--plain", "--profile", "--row", \ 
"--stmt", and "--close" to the ".trace" command.
Increased robustness against malicious SQL that is run against a maliciously \ 
corrupted database.

Bug fixes:
Do not use a partial index to do a table scan on an IN operator.
Fix the query flattener so that it works on queries that contain subqueries that \ 
use window functions.
Ensure that ALTER TABLE modifies table and column names embedded in WITH clauses \ 
that are part of views and triggers.
Fix a parser bug that prevented the use of parentheses around table-valued functions.
Fix a problem with the OR optimization on indexes on expressions.
Fix a problem with the LEFT JOIN strength reduction optimization in which the \ 
optimization was being applied inappropriately due to an IS NOT NULL operator.
Fix the REPLACE command so that it is no longer able to sneak a NULL value into \ 
a NOT NULL column even if the NOT NULL column has a default value of NULL.
Fix a problem with the use of window functions used within correlated subqueries.
Fix the ALTER TABLE RENAME COLUMN command so that it works for tables that have \ 
redundant UNIQUE constraints.
Fix a bug that caused zeroblob values to be truncated when inserted into a table \ 
that uses an expression index.
   2018-12-04 13:03:53 by Adam Ciarcinski | Files touched by this commit (6) | Package updated
Log message:
sqlite3: updated to 3.26.0

SQLite Release 3.26.0:

Optimization: When doing an UPDATE on a table with indexes on expressions, do \ 
not update the expression indexes if they do not refer to any of the columns of \ 
the table being updated.
Allow the xBestIndex() method of virtual table implementations to return \ 
SQLITE_CONSTRAINT to indicate that the proposed query plan is unusable and \ 
should not be given further consideration.
Added the SQLITE_DBCONFIG_DEFENSIVE option which disables the ability to create \ 
corrupt database files using ordinary SQL.
Added support for read-only shadow tables when the SQLITE_DBCONFIG_DEFENSIVE \ 
option is enabled.
Added the PRAGMA legacy_alter_table command, which if enabled causes the ALTER \ 
TABLE command to behave like older version of SQLite (prior to version 3.25.0) \ 
for compatibility.
Added PRAGMA table_xinfo that works just like PRAGMA table_info except that it \ 
also shows hidden columns in virtual tables.
Added the explain virtual table as a run-time loadable extension.
Add a limit counter to the query planner to prevent excessive sqlite3_prepare() \ 
times for certain pathological SQL inputs.
Added support for the sqlite3_normalized_sql() interface, when compiling with \ 
Enhanced triggers so that they can use table-valued functions that exist in \ 
schemas other than the schema where the trigger is defined.
Enhancements to the CLI:
- Improvements to the ".help" command.
- The SQLITE_HISTORY environment variable, if it exists, specifies the name of \ 
the command-line editing history file
- The --deserialize option associated with opening a new database cause the \ 
database file to be read into memory and accessed using the \ 
sqlite3_deserialize() API. This simplifies running tests on a database without \ 
modifying the file on disk.
Enhancements to the geopoly extension:
- Aways stores polygons using the binary format, which is faster and uses less space.
- Added the geopoly_regular() function.
- Added the geopoly_ccw() function.
Enhancements to the session extension:
- Added the sqlite3changeset_start_v2() interface and the \ 
- Added the changesetfuzz.c test-case generator utility.
   2018-11-07 12:51:25 by Adam Ciarcinski | Files touched by this commit (5) | Package updated
Log message:
sqlite3: updated to 3.25.3

SQLite Release 3.25.3:
Disallow the use of window functions in the recursive part of a CTE.
Fix the behavior of typeof() and length() on virtual tables.
Strengthen defenses against deliberately corrupted database files.
Fix a problem in the query planner that results when a row-value expression is \ 
used with a PRIMARY KEY with redundant columns.
Fix the query planner so that it works correctly for IS NOT NULL operators in \ 
the ON clause of a LEFT JOIN with the SQLITE_ENABLE_STAT4 compile-time option.
   2018-10-01 10:02:37 by Adam Ciarcinski | Files touched by this commit (6) | Package updated
Log message:
sqlite3: updated to 3.25.2

SQLite Release 3.25.2:
Add the PRAGMA legacy_alter_table=ON command that causes the "ALTER TABLE \ 
RENAME" command to behave as it did in SQLite versions 3.24.0 and earlier: \ 
references to the renamed table inside the bodies of triggers and views are not \ 
updated. This new pragma provides a compatibility work around for older programs \ 
that expected the older, wonky behavior of ALTER TABLE RENAME.
Fix a problem with the new window functions implementation that caused a \ 
malfunction when complicated expressions involving window functions were used \ 
inside of a view.
Fixes for various other compiler warnings and minor problems associated with \ 
obscure configurations.
   2018-09-19 11:38:09 by Adam Ciarcinski | Files touched by this commit (6) | Package updated
Log message:
sqlite3: updated to 3.25.1

SQLite Release 3.25.1:

Extra sanity checking added to ALTER TABLE in the 3.25.0 release sometimes \ 
raises a false-positive when the table being modified has a trigger that updates \ 
a virtual table. The false-positive caused the ALTER TABLE to rollback, thus \ 
leaving the schema unchanged.
The fix in the 3.25.0 release for the endless-loop in the byte-code associated \ 
with the ORDER BY LIMIT optimization did not work for some queries involving \ 
window functions. An additional correction is required.
   2018-09-17 18:14:07 by Adam Ciarcinski | Files touched by this commit (9) | Package updated
Log message:
sqlite3: updated to 3.25.0

SQLite Release 3.25.0:

Add support for window functions
Enhancements the ALTER TABLE command:
- Add support for renaming columns within a table using ALTER TABLE table RENAME \ 
COLUMN oldname TO newname.
- Fix table rename feature so that it also updates references to the renamed \ 
table in triggers and views.
Query optimizer improvements:
- Avoid unnecessary loads of columns in an aggregate query that are not within \ 
an aggregate function and that are not part of the GROUP BY clause.
- The IN-early-out optimization: When doing a look-up on a multi-column index \ 
and an IN operator is used on a column other than the left-most column, then if \ 
no rows match against the first IN value, check to make sure there exist rows \ 
that match the columns to the right before continuing with the next IN value.
- Use the transitive property to try to propagate constant values within the \ 
WHERE clause. For example, convert "a=99 AND b=a" into "a=99 AND \ 
Use a separate mutex on every inode in the unix VFS, rather than a single mutex \ 
shared among them all, for slightly better concurrency in multi-threaded \ 
Enhance the PRAGMA integrity_check command for improved detection of problems on \ 
the page freelist.
Output infinity as 1e999 in the ".dump" command of the command-line shell.
Added the SQLITE_FCNTL_DATA_VERSION file-control.
Added the Geopoly module

Bug fixes:
The ORDER BY LIMIT optimization might have caused an infinite loop in the byte \ 
code of the prepared statement under very obscure circumstances, due to a \ 
confluence of minor defects in the query optimizer.
On an UPSERT when the order of constraint checks is rearranged, ensure that the \ 
affinity transformations on the inserted content occur before any of the \ 
constraint checks.
Avoid using a prepared statement for ".stats on" command of the CLI \ 
after it has been closed by the ".eqp full" logicc.
The LIKE optimization was generating incorrect byte-code and hence getting the \ 
wrong answer if the left-hand operand has numeric affinity and the \ 
right-hand-side pattern is '/%' or if the pattern begins with the ESCAPE \ 
   2018-07-04 15:40:45 by Jonathan Perkin | Files touched by this commit (423)
Log message:
*: Move SUBST_STAGE from post-patch to pre-configure

Performing substitutions during post-patch breaks tools such as mkpatches,
making it very difficult to regenerate correct patches after making changes,
and often leading to substituted string replacements being committed.
   2018-06-07 09:36:49 by Adam Ciarcinski | Files touched by this commit (8) | Package updated
Log message:
sqlite3: updated to 3.24.0

SQLite Release 3.24.0:
Add support for PostgreSQL-style UPSERT.
Add support for auxiliary columns in r-tree tables.
Add C-language APIs for discovering SQL keywords used by SQLite: \ 
sqlite3_keyword_count(), sqlite3_keyword_name(), and sqlite3_keyword_check().
Add C-language APIs for dynamic strings based on the sqlite3_str object.
Enhance ALTER TABLE so that it recognizes "true" and "false" \ 
as valid arguments to DEFAULT.
Add the sorter-reference optimization as a compile-time option. Only available \ 
Improve the format of the EXPLAIN QUERY PLAN raw output, so that it gives better \ 
information about the query plan and about the relationships between the various \ 
components of the plan.
Added the SQLITE_DBCONFIG_RESET_DATABASE option to the sqlite3_db_config() API.
CLI Enhancements:

Automatically intercepts the raw EXPLAIN QUERY PLAN output and reformats it into \ 
an ASCII-art graph.
Lines that begin with "#" and that are not in the middle of an SQL \ 
statement are interpreted as comments.
Added the --append option to the ".backup" command.
Added the ".dbconfig" command.

UPDATE avoids unnecessary low-level disk writes when the contents of the \ 
database file do not actually change. For example, "UPDATE t1 SET x=25 \ 
WHERE y=?" generates no extra disk I/O if the value in column x is already \ 
25. Similarly, when doing UPDATE on records that span multiple pages, only the \ 
subset of pages that actually change are written to disk. This is a low-level \ 
performance optimization only and does not affect the behavior of TRIGGERs or \ 
other higher level SQL structures.
Queries that use ORDER BY and LIMIT now try to avoid computing rows that cannot \ 
possibly come in under the LIMIT. This can greatly improve performance of ORDER \ 
BY LIMIT queries, especially when the LIMIT is small relative to the number of \ 
unrestricted output rows.
The OR optimization is allowed to proceed even if the OR expression has also \ 
been converted into an IN expression. Uses of the OR optimization are now also \ 
more clearly shown in the EXPLAIN QUERY PLAN output.
The query planner is more aggressive about using automatic indexes for views and \ 
subqueries for which it is not possible to create a persistent index.
Make use of the one-pass UPDATE and DELETE query plans in the R-Tree extension \ 
where appropriate.
Performance improvements in the LEMON-generated parser.
Bug fixes:

For the right-hand table of a LEFT JOIN, compute the values of expressions \ 
directly rather than loading precomputed values out of an expression index as \ 
the expression index might not contain the correct value.
Do not attempt to use terms from the WHERE clause to enable indexed lookup of \ 
the right-hand table of a LEFT JOIN.
Fix a memory leak that can occur following a failure to open error in the CSV \ 
virtual table
Fix a long-standing problem wherein a corrupt schema on the sqlite_sequence \ 
table used by AUTOINCREMENT can lead to a crash.
Fix the json_each() function so that it returns valid results on its \ 
"fullkey" column when the input is a simple value rather than an array \ 
or object.

Next | Query returned 30 messages, browsing 1 to 10 | Previous