From afa9aae7447a8ca5d72e4d97251c64b2e2dde0cb Mon Sep 17 00:00:00 2001 From: Prinz23 Date: Sun, 24 Mar 2024 20:35:38 +0000 Subject: [PATCH] Change enable legacy double quote support for SQLite when using Python 3.12+ --- CHANGES.md | 3 ++- sickgear/db.py | 6 ++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGES.md b/CHANGES.md index 0ed75126..8daad831 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,6 +1,7 @@ -### 3.30.16 (2024-03-24 17:30:00 UTC) +### 3.30.16 (2024-03-24 20:30:00 UTC) * Fix external site links that used a deprecated config/general/advanced/"Anonymous redirect" +* Change enable legacy double quote support for SQLite when using Python 3.12+ ### 3.30.15 (2024-03-20 01:55:00 UTC) diff --git a/sickgear/db.py b/sickgear/db.py index 6bdaf26e..6e414f99 100644 --- a/sickgear/db.py +++ b/sickgear/db.py @@ -44,6 +44,8 @@ db_support_multiple_insert = (3, 7, 11) <= sqlite3.sqlite_version_info # type: db_support_column_rename = (3, 25, 0) <= sqlite3.sqlite_version_info # type: bool db_support_upsert = (3, 25, 0) <= sqlite3.sqlite_version_info # type: bool db_supports_backup = hasattr(sqlite3.Connection, 'backup') and (3, 6, 11) <= sqlite3.sqlite_version_info # type: bool +db_supports_setconfig_dqs = (hasattr(sqlite3.Connection, 'setconfig') and hasattr(sqlite3, 'SQLITE_DBCONFIG_DQS_DDL') + and hasattr(sqlite3, 'SQLITE_DBCONFIG_DQS_DML')) # type: bool def db_filename(filename='sickbeard.db', suffix=None): @@ -111,6 +113,10 @@ class DBConnection(object): self.filename = filename self.connection = sqlite3.connect(db_src, 20) + # enable legacy double quote support + if db_supports_setconfig_dqs: + self.connection.setconfig(sqlite3.SQLITE_DBCONFIG_DQS_DDL, True) + self.connection.setconfig(sqlite3.SQLITE_DBCONFIG_DQS_DML, True) if 'dict' == row_type: self.connection.row_factory = self._dict_factory