Control: severity -1 important Control: tags -1 patch
Dear Laszlo, On Mo 06 Mai 2024 21:03:07 CEST, Debian Bug Tracking System wrote:
Source: libsqlite3-0 Severity: normal Tags: l10n Debian SQlite appears to be compiled without support for the 'icu' and 'unicode61' tokenizers: sqlite> CREATE VIRTUAL TABLE test1 USING fts4(tokenize=simple); sqlite> CREATE VIRTUAL TABLE test2 USING fts4(tokenize=porter); sqlite> CREATE VIRTUAL TABLE test3 USING fts4(tokenize=icu); Error: unknown tokenizer: icu sqlite> CREATE VIRTUAL TABLE test4 USING fts4(tokenize=unicode61); Error: unknown tokenizer: unicode61 'simple' and 'porter' tokenizers only really work for English, so this is quite bad for localization. 'icu' is enabled through SQLITE_ENABLE_ICU, and 'unicode61' should be available since SQlite 3.7.13 ...
Find attached a .debdiff patch that fixes bug #758985 by building sqlite3 with SQLITE_ENABLE_ICU.
I just uploaded an addressbook storage backend [1] for Lomiri's [2] address book app [3] to Debian's NEW queue which needs this fix (so I am creating some dramatizing tension by bumping this bug's severity to 'important' ;-) ).
Please consider enabling the ICU extension and making sqlite3 i18n capable for languages using regional fonts etc. If this change is not acceptable, please also let me know.
Maybe it could be an approach to upload an ICU-enabled version of sqlite3 to experimental and ask people to test their services/applications with the new-featured sqlite3. I can help with communications if needed. Please let me know.
Thanks! Looking forward to seeing this addressed in short-term... Mike [1] https://ftp-master.debian.org/new/qtcontacts-sqlite_0.3.5-1.html [2] https://lomiri.com [3] https://gitlab.com/ubports/development/core/address-book-app -- mike gabriel aka sunweaver (Debian Developer) mobile: +49 (1520) 1976 148 landline: +49 (4351) 486 14 27 GnuPG Fingerprint: 9BFB AEE8 6C0A A5FF BF22 0782 9AF4 6B30 2577 1B31 mail: sunwea...@debian.org, http://sunweavers.net
diff -Nru sqlite3-3.45.3/debian/changelog sqlite3-3.45.3/debian/changelog --- sqlite3-3.45.3/debian/changelog 2024-04-16 16:12:58.000000000 +0000 +++ sqlite3-3.45.3/debian/changelog 2024-05-06 16:42:20.000000000 +0000 @@ -1,3 +1,14 @@ +sqlite3 (3.45.3-1.1) unstable; urgency=medium + + * Non-maintainer upload. + * debian/rules: + + Build with SQLITE_ENABLE_ICU=1. + + Add -licuuc -licui18n to LDFLAGS. + * debian/libsqlite3-0.symbol: + + Update file (due to building with SQLITE_ENABLE_ICU=1). + + -- Mike Gabriel <sunwea...@debian.org> Mon, 06 May 2024 18:42:20 +0200 + sqlite3 (3.45.3-1) unstable; urgency=medium * New upstream release. diff -Nru sqlite3-3.45.3/debian/control sqlite3-3.45.3/debian/control --- sqlite3-3.45.3/debian/control 2023-06-24 14:16:47.000000000 +0000 +++ sqlite3-3.45.3/debian/control 2024-05-06 15:39:48.000000000 +0000 @@ -2,7 +2,7 @@ Section: devel Priority: optional Maintainer: Laszlo Boszormenyi (GCS) <g...@debian.org> -Build-Depends: debhelper-compat (= 13), autoconf (>= 2.59), libtool (>= 1.5.2), automake, chrpath, lynx, libreadline-dev, tcl8.6-dev +Build-Depends: debhelper-compat (= 13), autoconf (>= 2.59), libtool (>= 1.5.2), automake, chrpath, lynx, libreadline-dev, tcl8.6-dev, libicu-dev Build-Conflicts: tcl8.4, tcl8.4-dev, tcl8.5, tcl8.5-dev Standards-Version: 4.6.2 Rules-Requires-Root: no diff -Nru sqlite3-3.45.3/debian/libsqlite3-0.symbols sqlite3-3.45.3/debian/libsqlite3-0.symbols --- sqlite3-3.45.3/debian/libsqlite3-0.symbols 2024-04-16 16:12:58.000000000 +0000 +++ sqlite3-3.45.3/debian/libsqlite3-0.symbols 2024-05-06 16:41:57.000000000 +0000 @@ -364,6 +364,7 @@ sqlite3Fts3HashFindElem@Base 3.37.0 sqlite3Fts3HashInit@Base 3.37.0 sqlite3Fts3HashInsert@Base 3.37.0 + sqlite3Fts3IcuTokenizerModule@Base 3.45.3-1.1 sqlite3Fts3Incrmerge@Base 3.37.0 sqlite3Fts3Init@Base 3.37.0 sqlite3Fts3InitAux@Base 3.37.0 @@ -439,6 +440,7 @@ sqlite3HeapNearlyFull@Base 3.37.0 sqlite3HexToBlob@Base 3.37.0 sqlite3HexToInt@Base 3.37.0 + sqlite3IcuInit@Base 3.45.3-1.1 sqlite3IdListAppend@Base 3.37.0 sqlite3IdListDelete@Base 3.37.0 sqlite3IdListDup@Base 3.37.0 diff -Nru sqlite3-3.45.3/debian/rules sqlite3-3.45.3/debian/rules --- sqlite3-3.45.3/debian/rules 2024-03-13 20:16:30.000000000 +0000 +++ sqlite3-3.45.3/debian/rules 2024-05-06 16:42:20.000000000 +0000 @@ -25,6 +25,10 @@ export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) export LDFLAGS += -Wl,--as-needed + +# Because we build with SQLITE_ENABLE_ICU +LDFLAGS += -licuuc -licui18n + ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) confflags += --build $(DEB_HOST_GNU_TYPE) --with-tcl=/usr/lib/$(DEB_HOST_MULTIARCH)/tcl8.6 export CROSS_BUILDING=no @@ -50,6 +54,7 @@ -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1 \ -DSQLITE_ENABLE_LOAD_EXTENSION \ -DSQLITE_ENABLE_JSON1 \ + -DSQLITE_ENABLE_ICU \ -DSQLITE_LIKE_DOESNT_MATCH_BLOBS \ -DSQLITE_THREADSAFE=1 \ -DSQLITE_ENABLE_FTS3_TOKENIZER=1 \
pgpavqAM5rPHj.pgp
Description: Digitale PGP-Signatur