From 18b7a4c22f4aa7ee7d5d78abbfaddbecae518a60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B6ren=20Tempel?= Date: Sun, 31 May 2020 11:48:54 +0200 Subject: community/telepathy-idle: use python3 Based on https://github.com/TelepathyIM/telepathy-idle/pull/8 See: #11577 --- community/telepathy-idle/APKBUILD | 8 +- community/telepathy-idle/python3.patch | 150 +++++++++++++++++++++++++++++++++ 2 files changed, 155 insertions(+), 3 deletions(-) create mode 100644 community/telepathy-idle/python3.patch diff --git a/community/telepathy-idle/APKBUILD b/community/telepathy-idle/APKBUILD index 263b229559..a283ee2933 100644 --- a/community/telepathy-idle/APKBUILD +++ b/community/telepathy-idle/APKBUILD @@ -8,10 +8,11 @@ url="http://telepathy.freedesktop.org" arch="all" license="LGPL-2.1-or-later" makedepends="telepathy-glib-dev glib-dev dbus-dev dbus-glib-dev libxslt - python2" + python3" options="!check" # Needs py2-dbus subpackages="$pkgname-doc" -source="http://telepathy.freedesktop.org/releases/telepathy-idle/telepathy-idle-$pkgver.tar.gz" +source="http://telepathy.freedesktop.org/releases/telepathy-idle/telepathy-idle-$pkgver.tar.gz + python3.patch" build() { ./configure \ @@ -32,4 +33,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="f5e36afc3ab4b52eb865f2c1e6565b99011a7540fc1a7783d3bbd7bbf50bc671a2147df6bde646c82059a466cc1df9bdb10e2500db5b7bb06d57a989a75c261b telepathy-idle-0.2.0.tar.gz" +sha512sums="f5e36afc3ab4b52eb865f2c1e6565b99011a7540fc1a7783d3bbd7bbf50bc671a2147df6bde646c82059a466cc1df9bdb10e2500db5b7bb06d57a989a75c261b telepathy-idle-0.2.0.tar.gz +c0a22ee03d93e3bc6ab2e4155615771315e38d845ea1a4a60ea095c5cab8872db036e2d74a0aeb0ecbfdaf9f3a22c6a300a241683e69bde51ef5667b0e69aef2 python3.patch" diff --git a/community/telepathy-idle/python3.patch b/community/telepathy-idle/python3.patch new file mode 100644 index 0000000000..2deddee4b2 --- /dev/null +++ b/community/telepathy-idle/python3.patch @@ -0,0 +1,150 @@ +Taken from https://github.com/TelepathyIM/telepathy-idle/pull/8 + +From e8d12395db956727b037cefdf0e60ed409f0b33a Mon Sep 17 00:00:00 2001 +From: Bastien Nocera +Date: Tue, 17 Mar 2020 09:15:02 +0100 +Subject: [PATCH 1/2] tools: Fix errors running glib-ginterface-gen under + Python3 + +1) + print """\ + + dbus_g_method_return_error (context, ...) +""" + ^ +SyntaxError: invalid syntax + +2) + +Traceback (most recent call last): + File "./tools/glib-ginterface-gen.py", line 30, in + from libglibcodegen import Signature, type_to_gtype, cmp_by_name, \ + File "/home/hadess/Projects/Fedora/merged/telepathy-idle/master/telepathy-idle-0.2.0/tools/libglibcodegen.py", line 157 + raise Exception, "can't index a hashtable off non-basic type " + s + ^ +SyntaxError: invalid syntax + +3) + +Traceback (most recent call last): + File "./tools/glib-ginterface-gen.py", line 30, in + from libglibcodegen import Signature, type_to_gtype, cmp_by_name, \ + File "/home/hadess/Projects/Fedora/merged/telepathy-idle/master/telepathy-idle-0.2.0/tools/libglibcodegen.py", line 172 + raise Exception, "don't know the GType for " + s + ^ +SyntaxError: invalid syntax + +4) + +Traceback (most recent call last): + File "../tools/glib-ginterface-gen.py", line 839, in + Generator(dom, prefix, basename, signal_marshal_prefix, headers, + File "../tools/glib-ginterface-gen.py", line 736, in __call__ + nodes.sort(cmp_by_name) +TypeError: sort() takes no positional arguments +--- + tools/glib-ginterface-gen.py | 7 ++++--- + tools/libglibcodegen.py | 4 ++-- + 2 files changed, 6 insertions(+), 5 deletions(-) + +diff --git a/tools/glib-ginterface-gen.py b/tools/glib-ginterface-gen.py +index 8fea5df..e32d7b8 100644 +--- a/tools/glib-ginterface-gen.py ++++ b/tools/glib-ginterface-gen.py +@@ -22,6 +22,7 @@ + # License along with this library; if not, write to the Free Software + # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + ++import functools + import sys + import os.path + import xml.dom.minidom +@@ -733,7 +734,7 @@ def have_properties(self, nodes): + + def __call__(self): + nodes = self.dom.getElementsByTagName('node') +- nodes.sort(cmp_by_name) ++ nodes.sort(key=functools.cmp_to_key(cmp_by_name)) + + self.h('#include ') + self.h('#include ') +@@ -768,7 +769,7 @@ def __call__(self): + file_set_contents(self.basename + '-gtk-doc.h', '\n'.join(self.__docs)) + + def cmdline_error(): +- print """\ ++ print ("""\ + usage: + gen-ginterface [OPTIONS] xmlfile Prefix_ + options: +@@ -788,7 +789,7 @@ def cmdline_error(): + void symbol (DBusGMethodInvocation *context) + and return some sort of "not implemented" error via + dbus_g_method_return_error (context, ...) +-""" ++""") + sys.exit(1) + + +diff --git a/tools/libglibcodegen.py b/tools/libglibcodegen.py +index 6a9d214..2c9f164 100644 +--- a/tools/libglibcodegen.py ++++ b/tools/libglibcodegen.py +@@ -154,7 +154,7 @@ def type_to_gtype(s): + return ("GHashTable *", "DBUS_TYPE_G_STRING_STRING_HASHTABLE", "BOXED", False) + elif s[:2] == 'a{': #some arbitrary hash tables + if s[2] not in ('y', 'b', 'n', 'q', 'i', 'u', 's', 'o', 'g'): +- raise Exception, "can't index a hashtable off non-basic type " + s ++ raise Exception("can't index a hashtable off non-basic type " + s) + first = type_to_gtype(s[2]) + second = type_to_gtype(s[3:-1]) + return ("GHashTable *", "(dbus_g_type_get_map (\"GHashTable\", " + first[1] + ", " + second[1] + "))", "BOXED", False) +@@ -169,4 +169,4 @@ def type_to_gtype(s): + return ("GValueArray *", gtype, "BOXED", True) + + # we just don't know .. +- raise Exception, "don't know the GType for " + s ++ raise(Exception, "don't know the GType for " + s) + +From 8cdedc1d6716b2bb8ac7a95a00cf696f82ebbc38 Mon Sep 17 00:00:00 2001 +From: Bastien Nocera +Date: Tue, 17 Mar 2020 09:37:04 +0100 +Subject: [PATCH 2/2] tools: Remove outdated "is unicode" checks + +Those aren't needed in Python3, the strings should already be UTF-8. + +Traceback (most recent call last): + File "../tools/glib-ginterface-gen.py", line 840, in + Generator(dom, prefix, basename, signal_marshal_prefix, headers, + File "../tools/glib-ginterface-gen.py", line 739, in __call__ + self.h('#include ') + File "../tools/glib-ginterface-gen.py", line 89, in h + if isinstance(s, unicode): +NameError: name 'unicode' is not defined +--- + tools/glib-ginterface-gen.py | 6 ------ + 1 file changed, 6 deletions(-) + +diff --git a/tools/glib-ginterface-gen.py b/tools/glib-ginterface-gen.py +index e32d7b8..995d874 100644 +--- a/tools/glib-ginterface-gen.py ++++ b/tools/glib-ginterface-gen.py +@@ -86,18 +86,12 @@ def __init__(self, dom, prefix, basename, signal_marshal_prefix, + self.allow_havoc = allow_havoc + + def h(self, s): +- if isinstance(s, unicode): +- s = s.encode('utf-8') + self.__header.append(s) + + def b(self, s): +- if isinstance(s, unicode): +- s = s.encode('utf-8') + self.__body.append(s) + + def d(self, s): +- if isinstance(s, unicode): +- s = s.encode('utf-8') + self.__docs.append(s) + + def do_node(self, node): -- cgit v1.2.3