diff --git a/README.md b/README.md index a3052ad..b2671ed 100644 --- a/README.md +++ b/README.md @@ -412,10 +412,10 @@ I'm guessing this is not really a factor on iOS." [badge-encoding]: https://img.shields.io/badge/encoding-2.2.1-blue.svg?style=flat [badge-immutable]: https://img.shields.io/badge/immutable-0.1.3-blue.svg?style=flat [badge-sqldelight]: https://img.shields.io/badge/SQLDelight-2.0.2-blue.svg?style=flat -[badge-sqlite]: https://img.shields.io/badge/SQLite3-3.46.0-blue.svg?style=flat -[badge-sqlitemc]: https://img.shields.io/badge/SQLite3MultipleCiphers-1.8.6-blue.svg?style=flat +[badge-sqlite]: https://img.shields.io/badge/SQLite3-3.46.1-blue.svg?style=flat +[badge-sqlitemc]: https://img.shields.io/badge/SQLite3MultipleCiphers-1.8.7-blue.svg?style=flat [badge-sqliter]: https://img.shields.io/badge/SQLiter-1.3.1-blue.svg?style=flat -[badge-sqlitejdbc]: https://img.shields.io/badge/sqlite--jdbc-3.46.0.0-blue.svg?style=flat +[badge-sqlitejdbc]: https://img.shields.io/badge/sqlite--jdbc-3.46.1.0-blue.svg?style=flat [badge-platform-android]: http://img.shields.io/badge/-android%20[minSdk%2021]-6EDB8D.svg?style=flat diff --git a/external/libs/signed/Mac/aarch64/libsqlitejdbc.dylib b/external/libs/signed/Mac/aarch64/libsqlitejdbc.dylib index c016d0b..a187f58 100755 Binary files a/external/libs/signed/Mac/aarch64/libsqlitejdbc.dylib and b/external/libs/signed/Mac/aarch64/libsqlitejdbc.dylib differ diff --git a/external/libs/signed/Mac/x86_64/libsqlitejdbc.dylib b/external/libs/signed/Mac/x86_64/libsqlitejdbc.dylib index 22487a5..81114ef 100755 Binary files a/external/libs/signed/Mac/x86_64/libsqlitejdbc.dylib and b/external/libs/signed/Mac/x86_64/libsqlitejdbc.dylib differ diff --git a/external/libs/signed/Windows/x86/sqlitejdbc.dll b/external/libs/signed/Windows/x86/sqlitejdbc.dll index a56531d..a52aa62 100644 Binary files a/external/libs/signed/Windows/x86/sqlitejdbc.dll and b/external/libs/signed/Windows/x86/sqlitejdbc.dll differ diff --git a/external/libs/signed/Windows/x86_64/sqlitejdbc.dll b/external/libs/signed/Windows/x86_64/sqlitejdbc.dll index 4d092d0..d1946bd 100644 Binary files a/external/libs/signed/Windows/x86_64/sqlitejdbc.dll and b/external/libs/signed/Windows/x86_64/sqlitejdbc.dll differ diff --git a/external/libs/sqlite-jdbc-3.46.0.0.jar b/external/libs/sqlite-jdbc-3.46.1.0.jar similarity index 59% rename from external/libs/sqlite-jdbc-3.46.0.0.jar rename to external/libs/sqlite-jdbc-3.46.1.0.jar index b7dacb8..9b218ad 100644 Binary files a/external/libs/sqlite-jdbc-3.46.0.0.jar and b/external/libs/sqlite-jdbc-3.46.1.0.jar differ diff --git a/external/patches/0001-Add-user-group-ids-to-docker-build.patch b/external/patches/0001-Add-user-group-ids-to-docker-build.patch index 831840f..17af543 100644 --- a/external/patches/0001-Add-user-group-ids-to-docker-build.patch +++ b/external/patches/0001-Add-user-group-ids-to-docker-build.patch @@ -1,6 +1,6 @@ -From a6dc225be95b2194e210d220703cdf4c82300854 Mon Sep 17 00:00:00 2001 +From ab4fc3549cc16c2f688360fcae3ecd3bf7a1ed80 Mon Sep 17 00:00:00 2001 From: Matthew Nelson -Date: Mon, 27 May 2024 17:25:11 -0400 +Date: Wed, 21 Aug 2024 12:11:44 -0400 Subject: [PATCH 1/8] Add user/group ids to docker build --- @@ -8,7 +8,7 @@ Subject: [PATCH 1/8] Add user/group ids to docker build 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/Makefile b/Makefile -index b32d85f..04cba66 100644 +index a698f26..605990f 100644 --- a/Makefile +++ b/Makefile @@ -29,6 +29,9 @@ SQLITE_INCLUDE := $(shell dirname "$(SQLITE_HEADER)") @@ -47,8 +47,8 @@ index b32d85f..04cba66 100644 linux-musl-arm64: $(SQLITE_UNPACKED) jni-header ./docker/dockcross-musl-arm64 -a $(DOCKER_RUN_OPTS) bash -c 'make clean-native native CROSS_PREFIX=aarch64-linux-musl- OS_NAME=Linux-Musl OS_ARCH=aarch64' -@@ -195,14 +198,14 @@ linux-ppc64: $(SQLITE_UNPACKED) jni-header - ./docker/dockcross-ppc64 -a $(DOCKER_RUN_OPTS) bash -c 'make clean-native native CROSS_PREFIX=powerpc64le-unknown-linux-gnu- OS_NAME=Linux OS_ARCH=ppc64' +@@ -198,14 +201,14 @@ linux-riscv64: $(SQLITE_UNPACKED) jni-header + ./docker/dockcross-riscv64 -a $(DOCKER_RUN_OPTS) bash -c 'make clean-native native CROSS_PREFIX=riscv64-unknown-linux-gnu- OS_NAME=Linux OS_ARCH=riscv64' mac64: $(SQLITE_UNPACKED) jni-header - docker run $(DOCKER_RUN_OPTS) -v $$PWD:/workdir -e CROSS_TRIPLE=x86_64-apple-darwin multiarch/crossbuild make clean-native native OS_NAME=Mac OS_ARCH=x86_64 diff --git a/external/patches/0002-Disable-double-quoted-strings.patch b/external/patches/0002-Disable-double-quoted-strings.patch index 0409564..383a58a 100644 --- a/external/patches/0002-Disable-double-quoted-strings.patch +++ b/external/patches/0002-Disable-double-quoted-strings.patch @@ -1,6 +1,6 @@ -From b79a4d9c5354a9c9b29916f744837186a647bac1 Mon Sep 17 00:00:00 2001 +From 8a3bc05b0c08d4c9d4270633a4ea8912dec7e7eb Mon Sep 17 00:00:00 2001 From: Matthew Nelson -Date: Mon, 27 May 2024 17:25:12 -0400 +Date: Wed, 21 Aug 2024 12:11:45 -0400 Subject: [PATCH 2/8] Disable double-quoted strings --- @@ -12,7 +12,7 @@ Subject: [PATCH 2/8] Disable double-quoted strings 5 files changed, 7 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile -index 04cba66..1fc51c9 100644 +index 605990f..5297c5c 100644 --- a/Makefile +++ b/Makefile @@ -105,6 +105,7 @@ $(SQLITE_OUT)/sqlite3.o : $(SQLITE_UNPACKED) diff --git a/external/patches/0003-Remove-JDBC-extensions.patch b/external/patches/0003-Remove-JDBC-extensions.patch index 4c95bf0..315cb00 100644 --- a/external/patches/0003-Remove-JDBC-extensions.patch +++ b/external/patches/0003-Remove-JDBC-extensions.patch @@ -1,6 +1,6 @@ -From 9c51967a1c2d986b9849b0c76f3956f0696e7f99 Mon Sep 17 00:00:00 2001 +From 1904df0f4bdb9e3e05a5b4b7c076d6503434d474 Mon Sep 17 00:00:00 2001 From: Matthew Nelson -Date: Mon, 27 May 2024 17:25:13 -0400 +Date: Wed, 21 Aug 2024 12:11:45 -0400 Subject: [PATCH 3/8] Remove JDBC extensions --- @@ -8,7 +8,7 @@ Subject: [PATCH 3/8] Remove JDBC extensions 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/Makefile b/Makefile -index 1fc51c9..e1c88b9 100644 +index 5297c5c..50f8735 100644 --- a/Makefile +++ b/Makefile @@ -70,18 +70,8 @@ clean: clean-native clean-java clean-tests diff --git a/external/patches/0004-Add-Linux-Musl-definitions.patch b/external/patches/0004-Add-Linux-Musl-definitions.patch index 56e7a77..99fad96 100644 --- a/external/patches/0004-Add-Linux-Musl-definitions.patch +++ b/external/patches/0004-Add-Linux-Musl-definitions.patch @@ -1,6 +1,6 @@ -From cb3613338dcd1d39832f18b55581e6d1a072d1c6 Mon Sep 17 00:00:00 2001 +From 0328e3006287191efa330362e78f3e095dfcf065 Mon Sep 17 00:00:00 2001 From: Matthew Nelson -Date: Mon, 27 May 2024 17:25:14 -0400 +Date: Wed, 21 Aug 2024 12:11:46 -0400 Subject: [PATCH 4/8] Add Linux-Musl definitions --- @@ -8,15 +8,15 @@ Subject: [PATCH 4/8] Add Linux-Musl definitions 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/Makefile.common b/Makefile.common -index c435e7c..0b374bf 100644 +index fb5dd48..2f99457 100644 --- a/Makefile.common +++ b/Makefile.common @@ -52,7 +52,7 @@ endif # os=Default is meant to be generic unix/linux --known_targets := Linux-x86 Linux-x86_64 Linux-arm Linux-armv6 Linux-armv7 Linux-Android-arm Linux-Android-aarch64 Linux-Android-x86 Linux-Android-x86_64 Linux-ppc64 Mac-x86 Mac-x86_64 Mac-aarch64 DragonFly-x86_64 FreeBSD-x86 FreeBSD-x86_64 FreeBSD-aarch64 OpenBSD-x86_64 Windows-x86 Windows-x86_64 Windows-armv7 Windows-aarch64 SunOS-sparcv9 HPUX-ia64_32 -+known_targets := Linux-x86 Linux-x86_64 Linux-Musl-x86 Linux-Musl-x86_64 Linux-Musl-aarch64 Linux-arm Linux-armv6 Linux-armv7 Linux-Android-arm Linux-Android-aarch64 Linux-Android-x86 Linux-Android-x86_64 Linux-ppc64 Mac-x86 Mac-x86_64 Mac-aarch64 DragonFly-x86_64 FreeBSD-x86 FreeBSD-x86_64 FreeBSD-aarch64 OpenBSD-x86_64 Windows-x86 Windows-x86_64 Windows-armv7 Windows-aarch64 SunOS-sparcv9 HPUX-ia64_32 +-known_targets := Linux-x86 Linux-x86_64 Linux-arm Linux-armv6 Linux-armv7 Linux-Android-arm Linux-Android-aarch64 Linux-Android-x86 Linux-Android-x86_64 Linux-ppc64 Linux-riscv64 Mac-x86 Mac-x86_64 Mac-aarch64 DragonFly-x86_64 FreeBSD-x86 FreeBSD-x86_64 FreeBSD-aarch64 OpenBSD-x86_64 Windows-x86 Windows-x86_64 Windows-armv7 Windows-aarch64 SunOS-sparcv9 HPUX-ia64_32 ++known_targets := Linux-x86 Linux-x86_64 Linux-Musl-x86 Linux-Musl-x86_64 Linux-Musl-aarch64 Linux-arm Linux-armv6 Linux-armv7 Linux-Android-arm Linux-Android-aarch64 Linux-Android-x86 Linux-Android-x86_64 Linux-ppc64 Linux-riscv64 Mac-x86 Mac-x86_64 Mac-aarch64 DragonFly-x86_64 FreeBSD-x86 FreeBSD-x86_64 FreeBSD-aarch64 OpenBSD-x86_64 Windows-x86 Windows-x86_64 Windows-armv7 Windows-aarch64 SunOS-sparcv9 HPUX-ia64_32 target := $(OS_NAME)-$(OS_ARCH) ifeq (,$(findstring $(strip $(target)),$(known_targets))) diff --git a/external/patches/0005-Disable-Windows-arm-FreeBSD-targets.patch b/external/patches/0005-Disable-Windows-arm-FreeBSD-targets.patch index 03785a5..10322bc 100644 --- a/external/patches/0005-Disable-Windows-arm-FreeBSD-targets.patch +++ b/external/patches/0005-Disable-Windows-arm-FreeBSD-targets.patch @@ -1,6 +1,6 @@ -From 379c7334b4bcd8f8c8be64dac2d2186e6079f3ac Mon Sep 17 00:00:00 2001 +From baf227a58c816e6f6fe0479ecdc28263e58ab724 Mon Sep 17 00:00:00 2001 From: Matthew Nelson -Date: Mon, 27 May 2024 17:25:14 -0400 +Date: Wed, 21 Aug 2024 12:11:47 -0400 Subject: [PATCH 5/8] Disable Windows arm & FreeBSD targets --- @@ -8,14 +8,14 @@ Subject: [PATCH 5/8] Disable Windows arm & FreeBSD targets 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile -index e1c88b9..4f43de9 100644 +index 50f8735..3898179 100644 --- a/Makefile +++ b/Makefile @@ -115,7 +115,7 @@ NATIVE_TARGET_DIR:=$(TARGET)/classes/org/sqlite/native/$(OS_NAME)/$(OS_ARCH) NATIVE_DLL:=$(NATIVE_DIR)/$(LIBNAME) # For cross-compilation, install docker. See also https://github.com/dockcross/dockcross --native-all: native win32 win64 win-armv7 win-arm64 mac64-signed mac-arm64-signed linux32 linux64 freebsd32 freebsd64 freebsd-arm64 linux-arm linux-armv6 linux-armv7 linux-arm64 linux-android-arm linux-android-arm64 linux-android-x86 linux-android-x64 linux-ppc64 linux-musl32 linux-musl64 linux-musl-arm64 +-native-all: native win32 win64 win-armv7 win-arm64 mac64-signed mac-arm64-signed linux32 linux64 freebsd32 freebsd64 freebsd-arm64 linux-arm linux-armv6 linux-armv7 linux-arm64 linux-android-arm linux-android-arm64 linux-android-x86 linux-android-x64 linux-ppc64 linux-musl32 linux-musl64 linux-musl-arm64 linux-riscv64 +native-all: native win32 win64 mac64-signed mac-arm64-signed linux32 linux64 linux-arm linux-armv6 linux-armv7 linux-arm64 linux-android-arm linux-android-arm64 linux-android-x86 linux-android-x64 linux-ppc64 linux-musl32 linux-musl64 linux-musl-arm64 native: $(NATIVE_DLL) diff --git a/external/patches/0006-Disable-macOS-adhoc-signing.patch b/external/patches/0006-Disable-macOS-adhoc-signing.patch index da75f44..75c54db 100644 --- a/external/patches/0006-Disable-macOS-adhoc-signing.patch +++ b/external/patches/0006-Disable-macOS-adhoc-signing.patch @@ -1,6 +1,6 @@ -From a9f15c2b688eb45c2c909170d6f3fcdb5b8db057 Mon Sep 17 00:00:00 2001 +From dd490870c001345f763529761661b8a371ee4144 Mon Sep 17 00:00:00 2001 From: Matthew Nelson -Date: Mon, 27 May 2024 17:25:15 -0400 +Date: Wed, 21 Aug 2024 12:11:48 -0400 Subject: [PATCH 6/8] Disable macOS adhoc signing --- @@ -8,7 +8,7 @@ Subject: [PATCH 6/8] Disable macOS adhoc signing 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile -index 4f43de9..8ea1e4b 100644 +index 3898179..561ad4c 100644 --- a/Makefile +++ b/Makefile @@ -115,7 +115,7 @@ NATIVE_TARGET_DIR:=$(TARGET)/classes/org/sqlite/native/$(OS_NAME)/$(OS_ARCH) diff --git a/external/patches/0007-Configure-build-to-use-SQLite3MultipleCiphers.patch b/external/patches/0007-Configure-build-to-use-SQLite3MultipleCiphers.patch index 8e9d921..c9e5089 100644 --- a/external/patches/0007-Configure-build-to-use-SQLite3MultipleCiphers.patch +++ b/external/patches/0007-Configure-build-to-use-SQLite3MultipleCiphers.patch @@ -1,6 +1,6 @@ -From 051f169d54c3e8cfc70baab3c44b1b1e88e8586d Mon Sep 17 00:00:00 2001 +From f1ded894f65ecc0d6de72900ccd2b737db8bd8bb Mon Sep 17 00:00:00 2001 From: Matthew Nelson -Date: Sat, 15 Jun 2024 07:21:18 -0400 +Date: Wed, 21 Aug 2024 12:11:49 -0400 Subject: [PATCH 7/8] Configure build to use SQLite3MultipleCiphers --- @@ -11,7 +11,7 @@ Subject: [PATCH 7/8] Configure build to use SQLite3MultipleCiphers 4 files changed, 30 insertions(+), 30 deletions(-) diff --git a/Makefile b/Makefile -index 8ea1e4b..d2fa264 100644 +index 561ad4c..07e6510 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,7 @@ SQLITE_OBJ?=$(SQLITE_OUT)/sqlite3.o @@ -77,7 +77,7 @@ index 8ea1e4b..d2fa264 100644 native: $(NATIVE_DLL) diff --git a/Makefile.common b/Makefile.common -index 0b374bf..c6e4ff0 100644 +index 2f99457..9bc779e 100644 --- a/Makefile.common +++ b/Makefile.common @@ -73,28 +73,28 @@ Default_SQLITE_FLAGS := @@ -130,7 +130,7 @@ index 0b374bf..c6e4ff0 100644 Linux-Android-x86_64_LINKFLAGS := $(Default_LINKFLAGS) -Wl,-soname,libsqlitejdbc.so Linux-Android-x86_64_LIBNAME := libsqlitejdbc.so Linux-Android-x86_64_SQLITE_FLAGS := -@@ -164,21 +164,21 @@ Linux-ppc64_SQLITE_FLAGS := +@@ -171,21 +171,21 @@ Linux-riscv64_SQLITE_FLAGS := DragonFly-x86_64_CC := $(CROSS_PREFIX)cc DragonFly-x86_64_STRIP := $(CROSS_PREFIX)strip @@ -155,7 +155,7 @@ index 0b374bf..c6e4ff0 100644 FreeBSD-x86_64_LINKFLAGS := -shared FreeBSD-x86_64_LIBNAME := libsqlitejdbc.so FreeBSD-x86_64_SQLITE_FLAGS := -@@ -192,7 +192,7 @@ FreeBSD-aarch64_SQLITE_FLAGS := +@@ -199,7 +199,7 @@ FreeBSD-aarch64_SQLITE_FLAGS := OpenBSD-x86_64_CC := $(CROSS_PREFIX)gcc OpenBSD-x86_64_STRIP := $(CROSS_PREFIX)strip @@ -164,7 +164,7 @@ index 0b374bf..c6e4ff0 100644 OpenBSD-x86_64_LINKFLAGS := -shared OpenBSD-x86_64_LIBNAME := libsqlitejdbc.so OpenBSD-x86_64_SQLITE_FLAGS := -@@ -206,7 +206,7 @@ SunOS-sparcv9_SQLITE_FLAGS := +@@ -213,7 +213,7 @@ SunOS-sparcv9_SQLITE_FLAGS := Mac-x86_CC := gcc Mac-x86_STRIP := strip -x @@ -173,7 +173,7 @@ index 0b374bf..c6e4ff0 100644 Mac-x86_LINKFLAGS := -dynamiclib Mac-x86_LIBNAME := libsqlitejdbc.dylib Mac-x86_SQLITE_FLAGS := -DSQLITE_ENABLE_LOCKING_STYLE=0 -@@ -224,8 +224,8 @@ MAC_SDK := /Developer/SDKs/MacOSX10.10.sdk +@@ -231,8 +231,8 @@ MAC_SDK := /Developer/SDKs/MacOSX10.10.sdk ifeq ($(wildcard MAC_SDK),) MAC_SDK := /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk endif @@ -184,7 +184,7 @@ index 0b374bf..c6e4ff0 100644 Mac-x86_64_LIBNAME := libsqlitejdbc.dylib Mac-x86_64_SQLITE_FLAGS := -@@ -235,20 +235,20 @@ Mac-aarch64_CC := $(CROSS_PREFIX)clang +@@ -242,20 +242,20 @@ Mac-aarch64_CC := $(CROSS_PREFIX)clang Mac-aarch64_STRIP := $(CROSS_PREFIX)strip -x MAC_SDK := /usr/osxcross/SDK/MacOSX11.3.sdk Mac-aarch64_CCFLAGS := -I$(MAC_SDK)/System/Library/Frameworks/JavaVM.framework/Headers -Ilib/inc_mac -Os -fPIC -mmacosx-version-min=10.9 -fvisibility=hidden -Wno-implicit-function-declaration @@ -209,12 +209,12 @@ index 0b374bf..c6e4ff0 100644 Windows-x86_64_LIBNAME := sqlitejdbc.dll Windows-x86_64_SQLITE_FLAGS := diff --git a/VERSION b/VERSION -index 79da200..3efc170 100644 +index d30720f..a7d7bf2 100644 --- a/VERSION +++ b/VERSION @@ -1 +1,2 @@ - version=3.46.0 -+version_mc=1.8.6 + version=3.46.1 ++version_mc=1.8.7 diff --git a/src/main/java/org/sqlite/core/NativeDB.c b/src/main/java/org/sqlite/core/NativeDB.c index 7361dbc..17dab54 100644 --- a/src/main/java/org/sqlite/core/NativeDB.c diff --git a/external/patches/0008-Update-Docker-images.patch b/external/patches/0008-Update-Docker-images.patch index e7e9f9e..f4b7ebf 100644 --- a/external/patches/0008-Update-Docker-images.patch +++ b/external/patches/0008-Update-Docker-images.patch @@ -1,6 +1,6 @@ -From e8cb89eb6bb0d2c2f818953ce4d07ac194f32cf4 Mon Sep 17 00:00:00 2001 +From bfa506b800741aefbb689ae49837a79561b248e4 Mon Sep 17 00:00:00 2001 From: Matthew Nelson -Date: Sat, 15 Jun 2024 07:21:44 -0400 +Date: Wed, 21 Aug 2024 12:11:50 -0400 Subject: [PATCH 8/8] Update Docker images --- @@ -12,7 +12,7 @@ Subject: [PATCH 8/8] Update Docker images 5 files changed, 31 insertions(+), 37 deletions(-) diff --git a/Makefile b/Makefile -index d2fa264..c1713bf 100644 +index 07e6510..23666a9 100644 --- a/Makefile +++ b/Makefile @@ -21,6 +21,7 @@ SQLITE_ARCHIVE:=$(TARGET)/$(sqlite)-amal.zip @@ -49,7 +49,7 @@ index d2fa264..c1713bf 100644 freebsd32: $(SQLITE_UNPACKED) jni-header docker run $(DOCKER_RUN_OPTS) -v $$PWD:/workdir empterdose/freebsd-cross-build:9.3 sh -c 'apk add bash; apk add openjdk8; apk add perl; make clean-native native OS_NAME=FreeBSD OS_ARCH=x86 CROSS_PREFIX=i386-freebsd9-' -@@ -167,31 +168,31 @@ linux-armv6: $(SQLITE_UNPACKED) jni-header +@@ -167,34 +168,34 @@ linux-armv6: $(SQLITE_UNPACKED) jni-header ./docker/dockcross-armv6-lts -a $(DOCKER_RUN_OPTS) bash -c 'make clean-native native CROSS_PREFIX=armv6-unknown-linux-gnueabihf- OS_NAME=Linux OS_ARCH=armv6' linux-armv7: $(SQLITE_UNPACKED) jni-header @@ -80,6 +80,9 @@ index d2fa264..c1713bf 100644 - ./docker/dockcross-ppc64 -a $(DOCKER_RUN_OPTS) bash -c 'make clean-native native CROSS_PREFIX=powerpc64le-unknown-linux-gnu- OS_NAME=Linux OS_ARCH=ppc64' + docker run $(DOCKER_RUN_OPTS) -u $(U_ID):$(G_ID) -v $$PWD:/work 05nelsonm/build-env.linux-libc.ppc64le:$(TAG_BUILD_ENV) bash -c 'make clean-native native CROSS_PREFIX=$$CROSS_TRIPLE- OS_NAME=Linux OS_ARCH=ppc64' + linux-riscv64: $(SQLITE_UNPACKED) jni-header + ./docker/dockcross-riscv64 -a $(DOCKER_RUN_OPTS) bash -c 'make clean-native native CROSS_PREFIX=riscv64-unknown-linux-gnu- OS_NAME=Linux OS_ARCH=riscv64' + mac64: $(SQLITE_UNPACKED) jni-header - docker run $(DOCKER_RUN_OPTS) -u $(U_ID):$(G_ID) -v $$PWD:/workdir -e CROSS_TRIPLE=x86_64-apple-darwin multiarch/crossbuild make clean-native native OS_NAME=Mac OS_ARCH=x86_64 + docker run $(DOCKER_RUN_OPTS) -u $(U_ID):$(G_ID) -v $$PWD:/work 05nelsonm/build-env.macos-lts.x86_64:$(TAG_BUILD_ENV) bash -c 'make clean-native native CROSS_PREFIX=$$CROSS_TRIPLE- OS_NAME=Mac OS_ARCH=x86_64' @@ -91,7 +94,7 @@ index d2fa264..c1713bf 100644 # deprecated mac32: $(SQLITE_UNPACKED) jni-header diff --git a/Makefile.common b/Makefile.common -index c6e4ff0..6f9a654 100644 +index 9bc779e..855e31f 100644 --- a/Makefile.common +++ b/Makefile.common @@ -128,29 +128,29 @@ Linux-armv7_LIBNAME := libsqlitejdbc.so @@ -132,7 +135,7 @@ index c6e4ff0..6f9a654 100644 Linux-Android-x86_64_LINKFLAGS := $(Default_LINKFLAGS) -Wl,-soname,libsqlitejdbc.so Linux-Android-x86_64_LIBNAME := libsqlitejdbc.so Linux-Android-x86_64_SQLITE_FLAGS := -@@ -218,23 +218,16 @@ HPUX-ia64_32_LINKFLAGS := -b +@@ -225,23 +225,16 @@ HPUX-ia64_32_LINKFLAGS := -b HPUX-ia64_32_LIBNAME := libsqlitejdbc.so HPUX-ia64_32_SQLITE_FLAGS := @@ -160,7 +163,7 @@ index c6e4ff0..6f9a654 100644 Mac-aarch64_LINKFLAGS := -dynamiclib -framework Security Mac-aarch64_LIBNAME := libsqlitejdbc.dylib Mac-aarch64_SQLITE_FLAGS := -@@ -242,14 +235,14 @@ Mac-aarch64_SQLITE_FLAGS := +@@ -249,14 +242,14 @@ Mac-aarch64_SQLITE_FLAGS := Windows-x86_CC := $(CROSS_PREFIX)gcc Windows-x86_STRIP := $(CROSS_PREFIX)strip Windows-x86_CCFLAGS := -D_JNI_IMPLEMENTATION_ -Ilib/inc_win -Os -msse4.2 -maes diff --git a/external/sqlite-jdbc b/external/sqlite-jdbc index dc44d73..73e64f0 160000 --- a/external/sqlite-jdbc +++ b/external/sqlite-jdbc @@ -1 +1 @@ -Subproject commit dc44d7381dc0adb2acf0f040f5bbcd67e8663145 +Subproject commit 73e64f0655e1f0bdefc4a6a0dc1710cc9e2782ce diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index c45c492..ae06121 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -22,7 +22,7 @@ okio = "3.9.0" sql-delight-dialect = "sqlite-3-38-dialect" sql-delight = "2.0.2" -sql-jdbc-xerial = "3.46.0.0" +sql-jdbc-xerial = "3.46.1.0" slf4j = "1.7.36" [libraries] diff --git a/library/driver/sqlite3mc/sqlite3mc.c b/library/driver/sqlite3mc/sqlite3mc.c index 59af1e8..eb67fa1 100644 --- a/library/driver/sqlite3mc/sqlite3mc.c +++ b/library/driver/sqlite3mc/sqlite3mc.c @@ -136,7 +136,7 @@ SQLITE_API LPWSTR sqlite3_win32_utf8_to_unicode(const char*); /*** Begin of #include "sqlite3patched.c" ***/ /****************************************************************************** ** This file is an amalgamation of many separate C source files from SQLite -** version 3.46.0. By combining all the individual C code files into this +** version 3.46.1. By combining all the individual C code files into this ** single large file, the entire code can be compiled as a single translation ** unit. This allows many compilers to do optimizations that would not be ** possible if the files were compiled separately. Performance improvements @@ -154,7 +154,7 @@ SQLITE_API LPWSTR sqlite3_win32_utf8_to_unicode(const char*); ** separate file. This file contains only code for the core SQLite library. ** ** The content in this amalgamation comes from Fossil check-in -** 96c92aba00c8375bc32fafcdf12429c58bd8. +** c9c2ab54ba1f5f46360f1b4f35d849cd3f08. */ #define SQLITE_CORE 1 #define SQLITE_AMALGAMATION 1 @@ -595,9 +595,9 @@ extern "C" { ** [sqlite3_libversion_number()], [sqlite3_sourceid()], ** [sqlite_version()] and [sqlite_source_id()]. */ -#define SQLITE_VERSION "3.46.0" -#define SQLITE_VERSION_NUMBER 3046000 -#define SQLITE_SOURCE_ID "2024-05-23 13:25:27 96c92aba00c8375bc32fafcdf12429c58bd8aabfcadab6683e35bbb9cdebf19e" +#define SQLITE_VERSION "3.46.1" +#define SQLITE_VERSION_NUMBER 3046001 +#define SQLITE_SOURCE_ID "2024-08-13 09:16:08 c9c2ab54ba1f5f46360f1b4f35d849cd3f080e6fc2b6c60e91b16c63f69a1e33" /* ** CAPI3REF: Run-Time Library Version Numbers @@ -19509,7 +19509,7 @@ struct SrcList { #define WHERE_AGG_DISTINCT 0x0400 /* Query is "SELECT agg(DISTINCT ...)" */ #define WHERE_ORDERBY_LIMIT 0x0800 /* ORDERBY+LIMIT on the inner loop */ #define WHERE_RIGHT_JOIN 0x1000 /* Processing a RIGHT JOIN */ - /* 0x2000 not currently used */ +#define WHERE_KEEP_ALL_JOINS 0x2000 /* Do not do the omit-noop-join opt */ #define WHERE_USE_LIMIT 0x4000 /* Use the LIMIT in cost estimates */ /* 0x8000 not currently used */ @@ -90338,7 +90338,8 @@ SQLITE_PRIVATE sqlite3_value *sqlite3VdbeGetBoundValue(Vdbe *v, int iVar, u8 aff assert( iVar>0 ); if( v ){ Mem *pMem = &v->aVar[iVar-1]; - assert( (v->db->flags & SQLITE_EnableQPSG)==0 ); + assert( (v->db->flags & SQLITE_EnableQPSG)==0 + || (v->db->mDbFlags & DBFLAG_InternalFunc)!=0 ); if( 0==(pMem->flags & MEM_Null) ){ sqlite3_value *pRet = sqlite3ValueNew(v->db); if( pRet ){ @@ -90358,7 +90359,8 @@ SQLITE_PRIVATE sqlite3_value *sqlite3VdbeGetBoundValue(Vdbe *v, int iVar, u8 aff */ SQLITE_PRIVATE void sqlite3VdbeSetVarmask(Vdbe *v, int iVar){ assert( iVar>0 ); - assert( (v->db->flags & SQLITE_EnableQPSG)==0 ); + assert( (v->db->flags & SQLITE_EnableQPSG)==0 + || (v->db->mDbFlags & DBFLAG_InternalFunc)!=0 ); if( iVar>=32 ){ v->expmask |= 0x80000000; }else{ @@ -107115,7 +107117,7 @@ static void extendFJMatch( static SQLITE_NOINLINE int isValidSchemaTableName( const char *zTab, /* Name as it appears in the SQL */ Table *pTab, /* The schema table we are trying to match */ - Schema *pSchema /* non-NULL if a database qualifier is present */ + const char *zDb /* non-NULL if a database qualifier is present */ ){ const char *zLegacy; assert( pTab!=0 ); @@ -107126,7 +107128,7 @@ static SQLITE_NOINLINE int isValidSchemaTableName( if( sqlite3StrICmp(zTab+7, &PREFERRED_TEMP_SCHEMA_TABLE[7])==0 ){ return 1; } - if( pSchema==0 ) return 0; + if( zDb==0 ) return 0; if( sqlite3StrICmp(zTab+7, &LEGACY_SCHEMA_TABLE[7])==0 ) return 1; if( sqlite3StrICmp(zTab+7, &PREFERRED_SCHEMA_TABLE[7])==0 ) return 1; }else{ @@ -107309,7 +107311,7 @@ static int lookupName( } }else if( sqlite3StrICmp(zTab, pTab->zName)!=0 ){ if( pTab->tnum!=1 ) continue; - if( !isValidSchemaTableName(zTab, pTab, pSchema) ) continue; + if( !isValidSchemaTableName(zTab, pTab, zDb) ) continue; } assert( ExprUseYTab(pExpr) ); if( IN_RENAME_OBJECT && pItem->zAlias ){ @@ -109041,6 +109043,9 @@ SQLITE_PRIVATE int sqlite3ResolveExprNames( ** Resolve all names for all expression in an expression list. This is ** just like sqlite3ResolveExprNames() except that it works for an expression ** list rather than a single expression. +** +** The return value is SQLITE_OK (0) for success or SQLITE_ERROR (1) for a +** failure. */ SQLITE_PRIVATE int sqlite3ResolveExprListNames( NameContext *pNC, /* Namespace to resolve expressions in. */ @@ -109049,7 +109054,7 @@ SQLITE_PRIVATE int sqlite3ResolveExprListNames( int i; int savedHasAgg = 0; Walker w; - if( pList==0 ) return WRC_Continue; + if( pList==0 ) return SQLITE_OK; w.pParse = pNC->pParse; w.xExprCallback = resolveExprStep; w.xSelectCallback = resolveSelectStep; @@ -109063,7 +109068,7 @@ SQLITE_PRIVATE int sqlite3ResolveExprListNames( #if SQLITE_MAX_EXPR_DEPTH>0 w.pParse->nHeight += pExpr->nHeight; if( sqlite3ExprCheckHeight(w.pParse, w.pParse->nHeight) ){ - return WRC_Abort; + return SQLITE_ERROR; } #endif sqlite3WalkExprNN(&w, pExpr); @@ -109080,10 +109085,10 @@ SQLITE_PRIVATE int sqlite3ResolveExprListNames( (NC_HasAgg|NC_MinMaxAgg|NC_HasWin|NC_OrderAgg); pNC->ncFlags &= ~(NC_HasAgg|NC_MinMaxAgg|NC_HasWin|NC_OrderAgg); } - if( w.pParse->nErr>0 ) return WRC_Abort; + if( w.pParse->nErr>0 ) return SQLITE_ERROR; } pNC->ncFlags |= savedHasAgg; - return WRC_Continue; + return SQLITE_OK; } /* @@ -117622,7 +117627,7 @@ static int renameResolveTrigger(Parse *pParse){ /* ALWAYS() because if the table of the trigger does not exist, the ** error would have been hit before this point */ if( ALWAYS(pParse->pTriggerTab) ){ - rc = sqlite3ViewGetColumnNames(pParse, pParse->pTriggerTab); + rc = sqlite3ViewGetColumnNames(pParse, pParse->pTriggerTab)!=0; } /* Resolve symbols in WHEN clause */ @@ -124596,8 +124601,9 @@ SQLITE_PRIVATE void sqlite3CreateView( #if !defined(SQLITE_OMIT_VIEW) || !defined(SQLITE_OMIT_VIRTUALTABLE) /* ** The Table structure pTable is really a VIEW. Fill in the names of -** the columns of the view in the pTable structure. Return the number -** of errors. If an error is seen leave an error message in pParse->zErrMsg. +** the columns of the view in the pTable structure. Return non-zero if +** there are errors. If an error is seen an error message is left +** in pParse->zErrMsg. */ static SQLITE_NOINLINE int viewGetColumnNames(Parse *pParse, Table *pTable){ Table *pSelTab; /* A fake table from which we get the result set */ @@ -124720,7 +124726,7 @@ static SQLITE_NOINLINE int viewGetColumnNames(Parse *pParse, Table *pTable){ sqlite3DeleteColumnNames(db, pTable); } #endif /* SQLITE_OMIT_VIEW */ - return nErr; + return nErr + pParse->nErr; } SQLITE_PRIVATE int sqlite3ViewGetColumnNames(Parse *pParse, Table *pTable){ assert( pTable!=0 ); @@ -131018,6 +131024,8 @@ static void groupConcatValue(sqlite3_context *context){ sqlite3_result_error_toobig(context); }else if( pAccum->accError==SQLITE_NOMEM ){ sqlite3_result_error_nomem(context); + }else if( pGCC->nAccum>0 && pAccum->nChar==0 ){ + sqlite3_result_text(context, "", 1, SQLITE_STATIC); }else{ const char *zText = sqlite3_str_value(pAccum); sqlite3_result_text(context, zText, pAccum->nChar, SQLITE_TRANSIENT); @@ -133772,6 +133780,7 @@ SQLITE_PRIVATE Select *sqlite3MultiValues(Parse *pParse, Select *pLeft, ExprList pRet->pSrc->nSrc = 1; pRet->pPrior = pLeft->pPrior; pRet->op = pLeft->op; + if( pRet->pPrior ) pRet->selFlags |= SF_Values; pLeft->pPrior = 0; pLeft->op = TK_SELECT; assert( pLeft->pNext==0 ); @@ -166237,7 +166246,9 @@ static int whereLoopAddBtree( " according to whereIsCoveringIndex()\n", pProbe->zName)); } } - }else if( m==0 ){ + }else if( m==0 + && (HasRowid(pTab) || pWInfo->pSelect!=0 || sqlite3FaultSim(700)) + ){ WHERETRACE(0x200, ("-> %s a covering index according to bitmasks\n", pProbe->zName, m==0 ? "is" : "is not")); @@ -168126,6 +168137,10 @@ static void showAllWhereLoops(WhereInfo *pWInfo, WhereClause *pWC){ ** the right-most table of a subquery that was flattened into the ** main query and that subquery was the right-hand operand of an ** inner join that held an ON or USING clause. +** 6) The ORDER BY clause has 63 or fewer terms +** 7) The omit-noop-join optimization is enabled. +** +** Items (1), (6), and (7) are checked by the caller. ** ** For example, given: ** @@ -168539,6 +168554,7 @@ SQLITE_PRIVATE WhereInfo *sqlite3WhereBegin( if( pOrderBy && pOrderBy->nExpr>=BMS ){ pOrderBy = 0; wctrlFlags &= ~WHERE_WANT_DISTINCT; + wctrlFlags |= WHERE_KEEP_ALL_JOINS; /* Disable omit-noop-join opt */ } /* The number of tables in the FROM clause is limited by the number of @@ -168839,10 +168855,10 @@ SQLITE_PRIVATE WhereInfo *sqlite3WhereBegin( ** in-line sqlite3WhereCodeOneLoopStart() for performance reasons. */ notReady = ~(Bitmask)0; - if( pWInfo->nLevel>=2 - && pResultSet!=0 /* these two combine to guarantee */ - && 0==(wctrlFlags & WHERE_AGG_DISTINCT) /* condition (1) above */ - && OptimizationEnabled(db, SQLITE_OmitNoopJoin) + if( pWInfo->nLevel>=2 /* Must be a join, or this opt8n is pointless */ + && pResultSet!=0 /* Condition (1) */ + && 0==(wctrlFlags & (WHERE_AGG_DISTINCT|WHERE_KEEP_ALL_JOINS)) /* (1),(6) */ + && OptimizationEnabled(db, SQLITE_OmitNoopJoin) /* (7) */ ){ notReady = whereOmitNoopJoin(pWInfo, notReady); nTabList = pWInfo->nLevel; @@ -169162,26 +169178,6 @@ SQLITE_PRIVATE WhereInfo *sqlite3WhereBegin( } #endif -#ifdef SQLITE_DEBUG -/* -** Return true if cursor iCur is opened by instruction k of the -** bytecode. Used inside of assert() only. -*/ -static int cursorIsOpen(Vdbe *v, int iCur, int k){ - while( k>=0 ){ - VdbeOp *pOp = sqlite3VdbeGetOp(v,k--); - if( pOp->p1!=iCur ) continue; - if( pOp->opcode==OP_Close ) return 0; - if( pOp->opcode==OP_OpenRead ) return 1; - if( pOp->opcode==OP_OpenWrite ) return 1; - if( pOp->opcode==OP_OpenDup ) return 1; - if( pOp->opcode==OP_OpenAutoindex ) return 1; - if( pOp->opcode==OP_OpenEphemeral ) return 1; - } - return 0; -} -#endif /* SQLITE_DEBUG */ - /* ** Generate the end of the WHERE loop. See comments on ** sqlite3WhereBegin() for additional information. @@ -169481,16 +169477,10 @@ SQLITE_PRIVATE void sqlite3WhereEnd(WhereInfo *pWInfo){ ** reference. Verify that this is harmless - that the ** table being referenced really is open. */ -#ifdef SQLITE_ENABLE_OFFSET_SQL_FUNC - assert( (pLoop->wsFlags & WHERE_IDX_ONLY)==0 - || cursorIsOpen(v,pOp->p1,k) - || pOp->opcode==OP_Offset - ); -#else - assert( (pLoop->wsFlags & WHERE_IDX_ONLY)==0 - || cursorIsOpen(v,pOp->p1,k) - ); -#endif + if( pLoop->wsFlags & WHERE_IDX_ONLY ){ + sqlite3ErrorMsg(pParse, "internal query planner error"); + pParse->rc = SQLITE_INTERNAL; + } } }else if( pOp->opcode==OP_Rowid ){ pOp->p1 = pLevel->iIdxCur; @@ -172761,9 +172751,9 @@ static void updateDeleteLimitError( break; } } - if( (p->selFlags & SF_MultiValue)==0 && - (mxSelect = pParse->db->aLimit[SQLITE_LIMIT_COMPOUND_SELECT])>0 && - cnt>mxSelect + if( (p->selFlags & (SF_MultiValue|SF_Values))==0 + && (mxSelect = pParse->db->aLimit[SQLITE_LIMIT_COMPOUND_SELECT])>0 + && cnt>mxSelect ){ sqlite3ErrorMsg(pParse, "too many terms in compound SELECT"); } @@ -237182,7 +237172,11 @@ static int sqlite3Fts5ExprNew( } sqlite3_free(sParse.apPhrase); - *pzErr = sParse.zErr; + if( 0==*pzErr ){ + *pzErr = sParse.zErr; + }else{ + sqlite3_free(sParse.zErr); + } return sParse.rc; } @@ -239310,6 +239304,7 @@ static Fts5ExprNode *sqlite3Fts5ParseImplicitAnd( assert( pRight->eType==FTS5_STRING || pRight->eType==FTS5_TERM || pRight->eType==FTS5_EOF + || (pRight->eType==FTS5_AND && pParse->bPhraseToAnd) ); if( pLeft->eType==FTS5_AND ){ @@ -251477,6 +251472,7 @@ static int fts5UpdateMethod( rc = SQLITE_ERROR; }else{ rc = fts5SpecialDelete(pTab, apVal); + bUpdateOrDelete = 1; } }else{ rc = fts5SpecialInsert(pTab, z, apVal[2 + pConfig->nCol + 1]); @@ -252651,14 +252647,16 @@ static int sqlite3Fts5GetTokenizer( if( pMod==0 ){ assert( nArg>0 ); rc = SQLITE_ERROR; - *pzErr = sqlite3_mprintf("no such tokenizer: %s", azArg[0]); + if( pzErr ) *pzErr = sqlite3_mprintf("no such tokenizer: %s", azArg[0]); }else{ rc = pMod->x.xCreate( pMod->pUserData, (azArg?&azArg[1]:0), (nArg?nArg-1:0), &pConfig->pTok ); pConfig->pTokApi = &pMod->x; if( rc!=SQLITE_OK ){ - if( pzErr ) *pzErr = sqlite3_mprintf("error in tokenizer constructor"); + if( pzErr && rc!=SQLITE_NOMEM ){ + *pzErr = sqlite3_mprintf("error in tokenizer constructor"); + } }else{ pConfig->ePattern = sqlite3Fts5TokenizerPattern( pMod->x.xCreate, pConfig->pTok @@ -252717,7 +252715,7 @@ static void fts5SourceIdFunc( ){ assert( nArg==0 ); UNUSED_PARAM2(nArg, apUnused); - sqlite3_result_text(pCtx, "fts5: 2024-05-23 13:25:27 96c92aba00c8375bc32fafcdf12429c58bd8aabfcadab6683e35bbb9cdebf19e", -1, SQLITE_TRANSIENT); + sqlite3_result_text(pCtx, "fts5: 2024-08-13 09:16:08 c9c2ab54ba1f5f46360f1b4f35d849cd3f080e6fc2b6c60e91b16c63f69a1e33", -1, SQLITE_TRANSIENT); } /* @@ -252752,17 +252750,23 @@ static int fts5IntegrityMethod( assert( pzErr!=0 && *pzErr==0 ); UNUSED_PARAM(isQuick); + assert( pTab->p.pConfig->pzErrmsg==0 ); + pTab->p.pConfig->pzErrmsg = pzErr; rc = sqlite3Fts5StorageIntegrity(pTab->pStorage, 0); - if( (rc&0xff)==SQLITE_CORRUPT ){ - *pzErr = sqlite3_mprintf("malformed inverted index for FTS5 table %s.%s", - zSchema, zTabname); - rc = (*pzErr) ? SQLITE_OK : SQLITE_NOMEM; - }else if( rc!=SQLITE_OK ){ - *pzErr = sqlite3_mprintf("unable to validate the inverted index for" - " FTS5 table %s.%s: %s", - zSchema, zTabname, sqlite3_errstr(rc)); + if( *pzErr==0 && rc!=SQLITE_OK ){ + if( (rc&0xff)==SQLITE_CORRUPT ){ + *pzErr = sqlite3_mprintf("malformed inverted index for FTS5 table %s.%s", + zSchema, zTabname); + rc = (*pzErr) ? SQLITE_OK : SQLITE_NOMEM; + }else{ + *pzErr = sqlite3_mprintf("unable to validate the inverted index for" + " FTS5 table %s.%s: %s", + zSchema, zTabname, sqlite3_errstr(rc)); + } } + sqlite3Fts5IndexCloseReader(pTab->p.pIndex); + pTab->p.pConfig->pzErrmsg = 0; return rc; } @@ -254196,7 +254200,7 @@ static int fts5AsciiCreate( int i; memset(p, 0, sizeof(AsciiTokenizer)); memcpy(p->aTokenChar, aAsciiTokenChar, sizeof(aAsciiTokenChar)); - for(i=0; rc==SQLITE_OK && ibFold = 1; pNew->iFoldParam = 0; - for(i=0; rc==SQLITE_OK && iiFoldParam!=0 && pNew->bFold==0 ){ rc = SQLITE_ERROR; @@ -258066,9 +258072,9 @@ SQLITE_API const char *sqlite3_sourceid(void){ return SQLITE_SOURCE_ID; } #define SQLITE3MC_VERSION_MAJOR 1 #define SQLITE3MC_VERSION_MINOR 8 -#define SQLITE3MC_VERSION_RELEASE 6 +#define SQLITE3MC_VERSION_RELEASE 7 #define SQLITE3MC_VERSION_SUBRELEASE 0 -#define SQLITE3MC_VERSION_STRING "SQLite3 Multiple Ciphers 1.8.6" +#define SQLITE3MC_VERSION_STRING "SQLite3 Multiple Ciphers 1.8.7" #endif /* SQLITE3MC_VERSION_H_ */ /*** End of #include "sqlite3mc_version.h" ***/ @@ -258227,9 +258233,9 @@ extern "C" { ** [sqlite3_libversion_number()], [sqlite3_sourceid()], ** [sqlite_version()] and [sqlite_source_id()]. */ -#define SQLITE_VERSION "3.46.0" -#define SQLITE_VERSION_NUMBER 3046000 -#define SQLITE_SOURCE_ID "2024-05-23 13:25:27 96c92aba00c8375bc32fafcdf12429c58bd8aabfcadab6683e35bbb9cdebf19e" +#define SQLITE_VERSION "3.46.1" +#define SQLITE_VERSION_NUMBER 3046001 +#define SQLITE_SOURCE_ID "2024-08-13 09:16:08 c9c2ab54ba1f5f46360f1b4f35d849cd3f080e6fc2b6c60e91b16c63f69a1e33" /* ** CAPI3REF: Run-Time Library Version Numbers @@ -283598,7 +283604,7 @@ sqlite3mcBtreeSetPageSize(Btree* p, int pageSize, int nReserve, int iFix) ** Change 4: Call sqlite3mcBtreeSetPageSize instead of sqlite3BtreeSetPageSize for main database ** (sqlite3mcBtreeSetPageSize allows to reduce the number of reserved bytes) ** -** This code is generated by the script rekeyvacuum.sh from SQLite version 3.46.0 amalgamation. +** This code is generated by the script rekeyvacuum.sh from SQLite version 3.46.1 amalgamation. */ SQLITE_PRIVATE SQLITE_NOINLINE int sqlite3mcRunVacuumForRekey( char **pzErrMsg, /* Write error message here */ diff --git a/library/driver/sqlite3mc/sqlite3mc.h b/library/driver/sqlite3mc/sqlite3mc.h index ee5174d..cec33fc 100644 --- a/library/driver/sqlite3mc/sqlite3mc.h +++ b/library/driver/sqlite3mc/sqlite3mc.h @@ -31,9 +31,9 @@ #define SQLITE3MC_VERSION_MAJOR 1 #define SQLITE3MC_VERSION_MINOR 8 -#define SQLITE3MC_VERSION_RELEASE 6 +#define SQLITE3MC_VERSION_RELEASE 7 #define SQLITE3MC_VERSION_SUBRELEASE 0 -#define SQLITE3MC_VERSION_STRING "SQLite3 Multiple Ciphers 1.8.6" +#define SQLITE3MC_VERSION_STRING "SQLite3 Multiple Ciphers 1.8.7" #endif /* SQLITE3MC_VERSION_H_ */ /*** End of #include "sqlite3mc_version.h" ***/ @@ -192,9 +192,9 @@ extern "C" { ** [sqlite3_libversion_number()], [sqlite3_sourceid()], ** [sqlite_version()] and [sqlite_source_id()]. */ -#define SQLITE_VERSION "3.46.0" -#define SQLITE_VERSION_NUMBER 3046000 -#define SQLITE_SOURCE_ID "2024-05-23 13:25:27 96c92aba00c8375bc32fafcdf12429c58bd8aabfcadab6683e35bbb9cdebf19e" +#define SQLITE_VERSION "3.46.1" +#define SQLITE_VERSION_NUMBER 3046001 +#define SQLITE_SOURCE_ID "2024-08-13 09:16:08 c9c2ab54ba1f5f46360f1b4f35d849cd3f080e6fc2b6c60e91b16c63f69a1e33" /* ** CAPI3REF: Run-Time Library Version Numbers