Skip to content

Commit 00655be

Browse files
committed
3.52.0 to 3.51.3 sqlite release downgrade
1 parent b4f9a94 commit 00655be

15 files changed

Lines changed: 63 additions & 55 deletions

Makefile

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11

2-
SQLITEVERSION=3.52.0
2+
SQLITEVERSION=3.51.3
33
APSWSUFFIX=.0
44

5-
RELEASEDATE="9 March 2026"
5+
RELEASEDATE="13 March 2026"
66

77
VERSION=$(SQLITEVERSION)$(APSWSUFFIX)
88
VERDIR=apsw-$(VERSION)
@@ -197,6 +197,8 @@ fossil: ## Grabs latest trunk from SQLite source control, extracts and builds in
197197
set -e ; cd sqlite3 ; curl --output - $(FOSSIL_URL) | tar xfz - --strip-components=1
198198
set -e ; cd sqlite3 ; ./configure --quiet --all --column-metadata --disable-tcl $(CONFIGURE_OPTS) ; $(MAKE) sqlite3.c sqlite3 libsqlite3.so ; ln -s libsqlite3.so libsqlite3.so.0
199199
set -e ; cd sqlite3 ; curl --output - https://sqlite.org/vec1/tarball/vec1.tar.gz | tar xfz -
200+
set -e ; cd sqlite3 ; curl --output - https://sqlite.org/sqlar/tarball/sqlar.tar.gz | tar xfz -
201+
set -e ; rm -rf sqlite3/zlib || true ; mkdir -p sqlite3/zlib ; cd sqlite3/zlib; curl --output - https://www.zlib.net/current/zlib.tar.gz | tar xfz - --strip-components=1
200202
$(PYTHON) setup.py patch
201203

202204
# the funky test stuff is to exit successfully when grep has rc==1 since that means no lines found.

apsw/__init__.pyi

Lines changed: 12 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -4635,8 +4635,6 @@ SQLITE_DBCONFIG_ENABLE_TRIGGER: int = 1003
46354635
"""For `Database Connection Configuration Options <https://sqlite.org/c3ref/c_dbconfig_defensive.html>'__"""
46364636
SQLITE_DBCONFIG_ENABLE_VIEW: int = 1015
46374637
"""For `Database Connection Configuration Options <https://sqlite.org/c3ref/c_dbconfig_defensive.html>'__"""
4638-
SQLITE_DBCONFIG_FP_DIGITS: int = 1023
4639-
"""For `Database Connection Configuration Options <https://sqlite.org/c3ref/c_dbconfig_defensive.html>'__"""
46404638
SQLITE_DBCONFIG_LEGACY_ALTER_TABLE: int = 1012
46414639
"""For `Database Connection Configuration Options <https://sqlite.org/c3ref/c_dbconfig_defensive.html>'__"""
46424640
SQLITE_DBCONFIG_LEGACY_FILE_FORMAT: int = 1016
@@ -4645,7 +4643,7 @@ SQLITE_DBCONFIG_LOOKASIDE: int = 1001
46454643
"""For `Database Connection Configuration Options <https://sqlite.org/c3ref/c_dbconfig_defensive.html>'__"""
46464644
SQLITE_DBCONFIG_MAINDBNAME: int = 1000
46474645
"""For `Database Connection Configuration Options <https://sqlite.org/c3ref/c_dbconfig_defensive.html>'__"""
4648-
SQLITE_DBCONFIG_MAX: int = 1023
4646+
SQLITE_DBCONFIG_MAX: int = 1022
46494647
"""For `Database Connection Configuration Options <https://sqlite.org/c3ref/c_dbconfig_defensive.html>'__"""
46504648
SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE: int = 1006
46514649
"""For `Database Connection Configuration Options <https://sqlite.org/c3ref/c_dbconfig_defensive.html>'__"""
@@ -5001,8 +4999,6 @@ SQLITE_LIMIT_LENGTH: int = 0
50014999
"""For `Run-Time Limit Categories <https://sqlite.org/c3ref/c_limit_attached.html>'__"""
50025000
SQLITE_LIMIT_LIKE_PATTERN_LENGTH: int = 8
50035001
"""For `Run-Time Limit Categories <https://sqlite.org/c3ref/c_limit_attached.html>'__"""
5004-
SQLITE_LIMIT_PARSER_DEPTH: int = 12
5005-
"""For `Run-Time Limit Categories <https://sqlite.org/c3ref/c_limit_attached.html>'__"""
50065002
SQLITE_LIMIT_SQL_LENGTH: int = 1
50075003
"""For `Run-Time Limit Categories <https://sqlite.org/c3ref/c_limit_attached.html>'__"""
50085004
SQLITE_LIMIT_TRIGGER_DEPTH: int = 10
@@ -5105,8 +5101,6 @@ SQLITE_PRAGMA: int = 19
51055101
"""For `Authorizer Action Codes <https://sqlite.org/c3ref/c_alter_table.html>'__"""
51065102
SQLITE_PREPARE_DONT_LOG: int = 16
51075103
"""For `Prepare Flags <https://sqlite.org/c3ref/c_prepare_dont_log.html>'__"""
5108-
SQLITE_PREPARE_FROM_DDL: int = 32
5109-
"""For `Prepare Flags <https://sqlite.org/c3ref/c_prepare_dont_log.html>'__"""
51105104
SQLITE_PREPARE_NORMALIZE: int = 2
51115105
"""For `Prepare Flags <https://sqlite.org/c3ref/c_prepare_dont_log.html>'__"""
51125106
SQLITE_PREPARE_NO_VTAB: int = 4
@@ -5330,13 +5324,12 @@ SQLITE_DBCONFIG_ENABLE_ATTACH_WRITE SQLITE_DBCONFIG_ENABLE_COMMENTS
53305324
SQLITE_DBCONFIG_ENABLE_FKEY SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER
53315325
SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION SQLITE_DBCONFIG_ENABLE_QPSG
53325326
SQLITE_DBCONFIG_ENABLE_TRIGGER SQLITE_DBCONFIG_ENABLE_VIEW
5333-
SQLITE_DBCONFIG_FP_DIGITS SQLITE_DBCONFIG_LEGACY_ALTER_TABLE
5334-
SQLITE_DBCONFIG_LEGACY_FILE_FORMAT SQLITE_DBCONFIG_LOOKASIDE
5335-
SQLITE_DBCONFIG_MAINDBNAME SQLITE_DBCONFIG_MAX
5336-
SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE SQLITE_DBCONFIG_RESET_DATABASE
5337-
SQLITE_DBCONFIG_REVERSE_SCANORDER SQLITE_DBCONFIG_STMT_SCANSTATUS
5338-
SQLITE_DBCONFIG_TRIGGER_EQP SQLITE_DBCONFIG_TRUSTED_SCHEMA
5339-
SQLITE_DBCONFIG_WRITABLE_SCHEMA"""
5327+
SQLITE_DBCONFIG_LEGACY_ALTER_TABLE SQLITE_DBCONFIG_LEGACY_FILE_FORMAT
5328+
SQLITE_DBCONFIG_LOOKASIDE SQLITE_DBCONFIG_MAINDBNAME
5329+
SQLITE_DBCONFIG_MAX SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE
5330+
SQLITE_DBCONFIG_RESET_DATABASE SQLITE_DBCONFIG_REVERSE_SCANORDER
5331+
SQLITE_DBCONFIG_STMT_SCANSTATUS SQLITE_DBCONFIG_TRIGGER_EQP
5332+
SQLITE_DBCONFIG_TRUSTED_SCHEMA SQLITE_DBCONFIG_WRITABLE_SCHEMA"""
53405333

53415334
mapping_db_status: dict[str | int, int | str]
53425335
"""Status Parameters for database connections mapping names to int and int to names.
@@ -5450,10 +5443,9 @@ Doc at https://sqlite.org/c3ref/c_limit_attached.html
54505443
54515444
SQLITE_LIMIT_ATTACHED SQLITE_LIMIT_COLUMN SQLITE_LIMIT_COMPOUND_SELECT
54525445
SQLITE_LIMIT_EXPR_DEPTH SQLITE_LIMIT_FUNCTION_ARG SQLITE_LIMIT_LENGTH
5453-
SQLITE_LIMIT_LIKE_PATTERN_LENGTH SQLITE_LIMIT_PARSER_DEPTH
5454-
SQLITE_LIMIT_SQL_LENGTH SQLITE_LIMIT_TRIGGER_DEPTH
5455-
SQLITE_LIMIT_VARIABLE_NUMBER SQLITE_LIMIT_VDBE_OP
5456-
SQLITE_LIMIT_WORKER_THREADS"""
5446+
SQLITE_LIMIT_LIKE_PATTERN_LENGTH SQLITE_LIMIT_SQL_LENGTH
5447+
SQLITE_LIMIT_TRIGGER_DEPTH SQLITE_LIMIT_VARIABLE_NUMBER
5448+
SQLITE_LIMIT_VDBE_OP SQLITE_LIMIT_WORKER_THREADS"""
54575449

54585450
mapping_locking_level: dict[str | int, int | str]
54595451
"""File Locking Levels mapping names to int and int to names.
@@ -5479,9 +5471,8 @@ mapping_prepare_flags: dict[str | int, int | str]
54795471
"""Prepare Flags mapping names to int and int to names.
54805472
Doc at https://sqlite.org/c3ref/c_prepare_dont_log.html
54815473
5482-
SQLITE_PREPARE_DONT_LOG SQLITE_PREPARE_FROM_DDL
5483-
SQLITE_PREPARE_NORMALIZE SQLITE_PREPARE_NO_VTAB
5484-
SQLITE_PREPARE_PERSISTENT"""
5474+
SQLITE_PREPARE_DONT_LOG SQLITE_PREPARE_NORMALIZE
5475+
SQLITE_PREPARE_NO_VTAB SQLITE_PREPARE_PERSISTENT"""
54855476

54865477
mapping_result_codes: dict[str | int, int | str]
54875478
"""Result Codes mapping names to int and int to names.

checksums

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ https://www.zlib.net/zlib132.zip 1616754 e8bf55f3017aa181690990cb58a994e77885da1
1919
https://sqlite.org/2026/sqlite-autoconf-3520000.tar.gz 3258980 f6b50b0c103392af32a8be15b2b9d25959de9a00a70c3979128aafeaa5338b3f 45a4911475950ab5fd486afb776102eb29d69e7569b48947f21e3c8501b51822
2020
https://sqlite.org/2026/sqlite-src-3520000.zip 14346407 652a98ca833ed638809a52bec225a7f37799f71a995778f9ccb68ad03bd1fc11 a2f0a14b6530138b0c8c096f4b5e5c9d3c1b8a5effa565c91f983e1235f9e26a
2121

22+
https://sqlite.org/2026/sqlite-autoconf-3510300.tar.gz 3208867 81f5be397049b0cae1b167f2225af7646fc0f82e4a9b3c48c9ea3a533e21d77a 581215771b32ea4c4062e6fb9842c4aa43d0a7fb2b6670ff6fa4ebb807781204
23+
https://sqlite.org/2026/sqlite-src-3510300.zip 14206164 f8a67a1f5b5cae7c6d42f0994ca7bf1a4a5858868c82adc9fc1340bed5eb8cd2 6b3a1a86bd4671442d962844f928a4fd80614681099748a8c29c435a4f3de19e
24+
2225
https://sqlite.org/2026/sqlite-autoconf-3510200.tar.gz 3208444 fbd89f866b1403bb66a143065440089dd76100f2238314d92274a082d4f2b7bb e0f7ae1c28c4fa551a2ffe8bdfafafa90613dabcef9553050892d02240b44f1d
2326
https://sqlite.org/2026/sqlite-src-3510200.zip 14202690 85110f762d5079414d99dd5d7917bc3ff7e05876e6ccbd13d8496a3817f20829 e436bb919850445ce5168fb033d2d0d5c53a9d8c9602c7fa62b3e0025541d481
2427

doc/about.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ About
33

44
**APSW** |version| **released** |today|.
55

6-
Use with `SQLite <https://sqlite.org/>`__ 3.52 or later, `Python
6+
Use with `SQLite <https://sqlite.org/>`__ 3.51 or later, `Python
77
<https://www.python.org/downloads/>`__ 3.10 and later.
88

99
APSW has been under continuous development since 2004, and is in the

doc/changes.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,11 @@ compression library <https://www.zlib.net/>`__, notably `zipfile
2424
3.52.0.0
2525
========
2626

27+
.. warning::
28+
29+
This SQLite release `was withdrawn
30+
<https://sqlite.org/releaselog/3_52_0.html>`__
31+
2732
Comprehensive async support - connections run in a dedicated worker
2833
thread with the event loop able to :code:`await` the results.
2934

doc/cli.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ apsw
66
A terminal interface to the APSW SQLite shell modelled after the SQLite shell
77
-----------------------------------------------------------------------------
88

9-
:version: apsw 3.52.0.0
10-
:date: 9 March 2026
9+
:version: apsw 3.51.3.0
10+
:date: 13 March 2026
1111
:manual section: 1
1212
:manual group: General Commands Manual
1313

doc/install.rst

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -84,20 +84,20 @@ edit the :file:`setup.apsw` file inside.
8484

8585
.. downloads-begin
8686
87-
* `apsw-3.52.0.0.zip
88-
<https://github.com/rogerbinns/apsw/releases/download/3.52.0.0/apsw-3.52.0.0.zip>`__
87+
* `apsw-3.51.3.0.zip
88+
<https://github.com/rogerbinns/apsw/releases/download/3.51.3.0/apsw-3.51.3.0.zip>`__
8989
(Source as zip, includes this HTML Help)
9090

91-
* `apsw-3.52.0.0.tar.gz
92-
<https://github.com/rogerbinns/apsw/releases/download/3.52.0.0/apsw-3.52.0.0.tar.gz>`__
91+
* `apsw-3.51.3.0.tar.gz
92+
<https://github.com/rogerbinns/apsw/releases/download/3.51.3.0/apsw-3.51.3.0.tar.gz>`__
9393
(Source as tar.gz, includes this HTML Help)
9494

95-
* `apsw-3.52.0.0.zip.cosign-bundle
96-
<https://github.com/rogerbinns/apsw/releases/download/3.52.0.0/apsw-3.52.0.0.zip.cosign-bundle>`__
95+
* `apsw-3.51.3.0.zip.cosign-bundle
96+
<https://github.com/rogerbinns/apsw/releases/download/3.51.3.0/apsw-3.51.3.0.zip.cosign-bundle>`__
9797
cosign signature for zip source
9898

99-
* `apsw-3.52.0.0.tar.gz.cosign-bundle
100-
<https://github.com/rogerbinns/apsw/releases/download/3.52.0.0/apsw-3.52.0.0.tar.gz.cosign-bundle>`__
99+
* `apsw-3.51.3.0.tar.gz.cosign-bundle
100+
<https://github.com/rogerbinns/apsw/releases/download/3.51.3.0/apsw-3.51.3.0.tar.gz.cosign-bundle>`__
101101
cosign signature for tar.gz source
102102

103103
.. downloads-end
@@ -129,18 +129,18 @@ Verify
129129
130130
.. code-block:: console
131131
132-
$ cosign verify-blob apsw-3.52.0.0.zip \
132+
$ cosign verify-blob apsw-3.51.3.0.zip \
133133
--new-bundle-format \
134-
--bundle apsw-3.52.0.0.zip.cosign-bundle \
134+
--bundle apsw-3.51.3.0.zip.cosign-bundle \
135135
--certificate-identity=rogerb@rogerbinns.com \
136136
--certificate-oidc-issuer=https://github.com/login/oauth
137137
Verified OK
138138
139-
$ python3 -m sigstore verify identity apsw-3.52.0.0.zip \
140-
--bundle apsw-3.52.0.0.zip.cosign-bundle \
139+
$ python3 -m sigstore verify identity apsw-3.51.3.0.zip \
140+
--bundle apsw-3.51.3.0.zip.cosign-bundle \
141141
--cert-identity=rogerb@rogerbinns.com \
142142
--cert-oidc-issuer=https://github.com/login/oauth
143-
OK: apsw-3.52.0.0.zip
143+
OK: apsw-3.51.3.0.zip
144144
145145
.. verify-end
146146

src/apsw.c

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,12 @@ API Reference
106106
#include "sqlite3.h"
107107
#endif
108108

109-
#if SQLITE_VERSION_NUMBER < 3052000
110-
#error Your SQLite version is too old. It must be at least 3.52
109+
#if SQLITE_VERSION_NUMBER < 3051000
110+
#error Your SQLite version is too old. It must be at least 3.51
111+
#endif
112+
113+
#ifndef SQLITE_UTF8_ZT
114+
#define SQLITE_UTF8_ZT SQLITE_UTF8
111115
#endif
112116

113117
#include "sqlite_debug.h"

src/apswversion.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
#define APSW_VERSION "3.52.0.0"
1+
#define APSW_VERSION "3.51.3.0"

src/connection.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4992,7 +4992,10 @@ Connection_config(PyObject *self_, PyObject *args)
49924992
case SQLITE_DBCONFIG_ENABLE_ATTACH_CREATE:
49934993
case SQLITE_DBCONFIG_ENABLE_ATTACH_WRITE:
49944994
case SQLITE_DBCONFIG_ENABLE_COMMENTS:
4995-
case SQLITE_DBCONFIG_FP_DIGITS: {
4995+
#ifdef SQLITE_DBCONFIG_FP_DIGITS
4996+
case SQLITE_DBCONFIG_FP_DIGITS:
4997+
#endif
4998+
{
49964999
int opdup, val, current;
49975000
if (!PyArg_ParseTuple(args, "ii", &opdup, &val))
49985001
return NULL;

0 commit comments

Comments
 (0)