[arch-commits] Commit in ibus-typing-booster/trunk (2 files)

Jan Steffens heftig at archlinux.org
Thu Jan 12 23:37:28 UTC 2017


    Date: Thursday, January 12, 2017 @ 23:37:27
  Author: heftig
Revision: 286180

1.5.16-1

Added:
  ibus-typing-booster/trunk/0001-Unbreak-sqlite-on-Python-3.6.patch
  ibus-typing-booster/trunk/PKGBUILD

-----------------------------------------+
 0001-Unbreak-sqlite-on-Python-3.6.patch |   79 ++++++++++++++++++++++++++++++
 PKGBUILD                                |   41 +++++++++++++++
 2 files changed, 120 insertions(+)

Added: 0001-Unbreak-sqlite-on-Python-3.6.patch
===================================================================
--- 0001-Unbreak-sqlite-on-Python-3.6.patch	                        (rev 0)
+++ 0001-Unbreak-sqlite-on-Python-3.6.patch	2017-01-12 23:37:27 UTC (rev 286180)
@@ -0,0 +1,79 @@
+From 0f8b5572de64a3e1a68d20975dffffadd6452c9a Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens at gmail.com>
+Date: Fri, 13 Jan 2017 00:21:52 +0100
+Subject: [PATCH] Unbreak sqlite on Python 3.6
+
+Py3.6 changed the transaction behavior; DDL commands like PRAGMA do not
+commit open transactions anymore, and since the default for execute() is
+to auto-open a transaction, setting the journal_mode fails.
+
+Changing the isolation_level to None so that transactions aren't opened
+anymore is a possible workaround. However, using executescript() seems
+like a better idea; it always commits any open transaction first.
+---
+ engine/tabsqlitedb.py | 42 ++++++++++++++++++++++--------------------
+ 1 file changed, 22 insertions(+), 20 deletions(-)
+
+diff --git a/engine/tabsqlitedb.py b/engine/tabsqlitedb.py
+index 4ff7f020ecf9dd40..beac0f82ce3ea885 100755
+--- a/engine/tabsqlitedb.py
++++ b/engine/tabsqlitedb.py
+@@ -205,16 +205,17 @@ class tabsqlitedb:
+                 "Connect to the database %(name)s.\n"
+                 %{'name': self.user_db_file})
+             self.db = sqlite3.connect(self.user_db_file)
+-            self.db.execute('PRAGMA encoding = "UTF-8";')
+-            self.db.execute('PRAGMA case_sensitive_like = true;')
+-            self.db.execute('PRAGMA page_size = 4096; ')
+-            self.db.execute('PRAGMA cache_size = 20000;')
+-            self.db.execute('PRAGMA temp_store = MEMORY;')
+-            self.db.execute('PRAGMA journal_mode = WAL;')
+-            self.db.execute('PRAGMA journal_size_limit = 1000000;')
+-            self.db.execute('PRAGMA synchronous = NORMAL;')
+-            self.db.execute('ATTACH DATABASE "%s" AS user_db;'
+-                            % self.user_db_file)
++            self.db.executescript('''
++                PRAGMA encoding = "UTF-8";
++                PRAGMA case_sensitive_like = true;
++                PRAGMA page_size = 4096;
++                PRAGMA cache_size = 20000;
++                PRAGMA temp_store = MEMORY;
++                PRAGMA journal_mode = WAL;
++                PRAGMA journal_size_limit = 1000000;
++                PRAGMA synchronous = NORMAL;
++                ATTACH DATABASE "%s" AS user_db;
++            ''' % self.user_db_file)
+         except:
+             sys.stderr.write(
+                 "Could not open the database %(name)s.\n"
+@@ -236,16 +237,17 @@ class tabsqlitedb:
+                 %{'name': self.user_db_file})
+             self.init_user_db()
+             self.db = sqlite3.connect(self.user_db_file)
+-            self.db.execute('PRAGMA encoding = "UTF-8";')
+-            self.db.execute('PRAGMA case_sensitive_like = true;')
+-            self.db.execute('PRAGMA page_size = 4096; ')
+-            self.db.execute('PRAGMA cache_size = 20000;')
+-            self.db.execute('PRAGMA temp_store = MEMORY;')
+-            self.db.execute('PRAGMA journal_mode = WAL;')
+-            self.db.execute('PRAGMA journal_size_limit = 1000000;')
+-            self.db.execute('PRAGMA synchronous = NORMAL;')
+-            self.db.execute('ATTACH DATABASE "%s" AS user_db;'
+-                            % self.user_db_file)
++            self.db.executescript('''
++                PRAGMA encoding = "UTF-8";
++                PRAGMA case_sensitive_like = true;
++                PRAGMA page_size = 4096;
++                PRAGMA cache_size = 20000;
++                PRAGMA temp_store = MEMORY;
++                PRAGMA journal_mode = WAL;
++                PRAGMA journal_size_limit = 1000000;
++                PRAGMA synchronous = NORMAL;
++                ATTACH DATABASE "%s" AS user_db;
++            ''' % self.user_db_file)
+         self.create_tables()
+         if self.old_phrases:
+             sqlargs = []
+-- 
+2.11.0
+

Added: PKGBUILD
===================================================================
--- PKGBUILD	                        (rev 0)
+++ PKGBUILD	2017-01-12 23:37:27 UTC (rev 286180)
@@ -0,0 +1,41 @@
+# $Id$
+# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens at gmail.com>
+
+pkgname=ibus-typing-booster
+pkgver=1.5.16
+pkgrel=1
+pkgdesc="Predictive input method for the IBus platform"
+url="https://fedorahosted.org/ibus-typing-booster/"
+arch=(any)
+license=(GPL3)
+depends=(ibus python-gobject python-dbus python-pyenchant m17n-lib sqlite)
+makedepends=(git m17n-db hunspell hunspell-{de,el,en,es,fr,he,hu,it,nl,pl,ro})
+_commit=1127c43096d0c267d7b18cf9c86417b78d7ae61c  # master
+source=("git+https://git.fedorahosted.org/git/ibus-typing-booster#commit=$_commit"
+        0001-Unbreak-sqlite-on-Python-3.6.patch)
+sha512sums=('SKIP'
+            '4c1a6a4789a372f3fb8f9cdb76b3cba75006e2163e48d24bd8e9785700a71eb9db4dad1560f05a9ca1086095de624de5be8f030de837dcfab1d669aef5fce167')
+
+pkgver() {
+  cd $pkgname
+  git describe --tags | sed 's/-/+/g'
+}
+
+prepare() {
+  cd $pkgname
+  patch -Np1 -i ../0001-Unbreak-sqlite-on-Python-3.6.patch
+  autoreconf -fvi
+}
+
+build() {
+  cd $pkgname
+  ./configure --prefix=/usr --libexec=/usr/lib/ibus
+  make
+}
+
+package() {
+  cd $pkgname
+  make DESTDIR="$pkgdir" install
+  gzip --force --best "$pkgdir"/usr/share/$pkgname/data/*.{xml,txt,json}
+}
+


Property changes on: ibus-typing-booster/trunk/PKGBUILD
___________________________________________________________________
Added: svn:keywords
## -0,0 +1 ##
+Id
\ No newline at end of property



More information about the arch-commits mailing list