Skip to content

Update SQLite to version 3.53.3#98

Merged
sbooth merged 1 commit into
mainfrom
sqlite-3.53.3
Jun 28, 2026
Merged

Update SQLite to version 3.53.3#98
sbooth merged 1 commit into
mainfrom
sqlite-3.53.3

Conversation

@sbooth

@sbooth sbooth commented Jun 27, 2026

Copy link
Copy Markdown
Owner

No description provided.

Copilot AI review requested due to automatic review settings June 27, 2026 12:27

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the vendored SQLite sources (amalgamation + headers + extensions) to SQLite 3.53.3, aligning CSQLite with the upstream release and pulling in upstream bugfixes and hardening changes.

Changes:

  • Bumps embedded SQLite version metadata in sqlite3.c and sqlite3.h to 3.53.3.
  • Incorporates upstream fixes/hardening across pager/WAL, backup, URI parsing, FTS/RTREE, and various API mutex-protection changes.
  • Updates bundled extensions (series.c, decimal.c) with overflow/UBSAN-related fixes and rounding/parse boundary safety improvements.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 5 comments.

File Description
Sources/CSQLite/sqlite3.c Replaces the SQLite amalgamation with upstream 3.53.3, including many correctness/security/concurrency fixes (and a few regressions to address).
Sources/CSQLite/series.c Adds UBSAN-safe float-to-int64 conversion and tightens bound handling for series virtual table constraints.
Sources/CSQLite/include/sqlite3.h Updates public header version identifiers and limit documentation to match 3.53.3.
Sources/CSQLite/decimal.c Hardens decimal parsing against non-NUL-terminated inputs and improves rounding behavior.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread Sources/CSQLite/sqlite3.c
Comment on lines 226928 to 226932
ofst = rbuDeltaGetInt(&zDelta, &lenDelta);
if( lenDelta>0 && zDelta[0]!=',' ){
if( lenDelta>0 || zDelta[0]!=',' ){
/* ERROR: copy command not terminated by ',' */
return -1;
}
Comment thread Sources/CSQLite/sqlite3.c
Comment on lines +151437 to +151441
pParse->nNestSel++;
#if SQLITE_MAX_EXPR_DEPTH>0
if( pParse->nNestSel >= db->aLimit[SQLITE_LIMIT_EXPR_DEPTH] ){
sqlite3ErrorMsg(pParse, "VIEWs and/or subqueries nested too deep");
return 0;
Comment thread Sources/CSQLite/sqlite3.c
Comment on lines 151461 to +151465
@@ -151324,6 +151462,8 @@ SQLITE_PRIVATE Table *sqlite3ResultSetOfSelect(Parse *pParse, Select *pSelect, c
sqlite3DeleteTable(db, pTab);
return 0;
}
pParse->nNestSel--;
Comment thread Sources/CSQLite/sqlite3.c
Comment on lines 53029 to +53031
** Return true if the string passed as the only argument is likely
** to be a UNC path. In other words, if it starts with "\\".
** to be a UNC path. Return false if note.
**
Comment thread Sources/CSQLite/series.c
** a way that avoids 'outside the range of representable values' warnings
** from UBSAN.
*/
sqlite3_int64 seriesRealToI64(double r){
@sbooth sbooth merged commit b8f42f9 into main Jun 28, 2026
2 checks passed
@sbooth sbooth deleted the sqlite-3.53.3 branch June 28, 2026 03:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants