Message ID | 20220303065954.909740-1-raj.khem@gmail.com |
---|---|
State | New |
Headers | show |
Series | [meta-python] python3-slip-dbus: Fix build with wheel packaging | expand |
On Wed, Mar 2, 2022 at 10:59 PM Khem Raj <raj.khem@gmail.com> wrote: > Migrate to use setuptools instead of distutils > merge slip.dbus into slip module since we use > slip.dbus, it works fine for OE > Nice solution. Thank you for this and all the other recipes you have fixed. > > Signed-off-by: Khem Raj <raj.khem@gmail.com> > --- > ...-Use-setuptools-instead-of-distutils.patch | 38 ++++++++++ > ...9c0b534c1b7958fa0a3c7aedf30bca910431.patch | 76 +++++++++++++++++++ > .../python/python3-slip-dbus_0.6.5.bb | 11 ++- > 3 files changed, 121 insertions(+), 4 deletions(-) > create mode 100644 > meta-python/recipes-devtools/python/python3-slip-dbus/0001-setup.py-Use-setuptools-instead-of-distutils.patch > create mode 100644 > meta-python/recipes-devtools/python/python3-slip-dbus/9b939c0b534c1b7958fa0a3c7aedf30bca910431.patch > > diff --git > a/meta-python/recipes-devtools/python/python3-slip-dbus/0001-setup.py-Use-setuptools-instead-of-distutils.patch > b/meta-python/recipes-devtools/python/python3-slip-dbus/0001-setup.py-Use-setuptools-instead-of-distutils.patch > new file mode 100644 > index 0000000000..1208769b2f > --- /dev/null > +++ > b/meta-python/recipes-devtools/python/python3-slip-dbus/0001-setup.py-Use-setuptools-instead-of-distutils.patch > @@ -0,0 +1,38 @@ > +From 4309ce76351b1685d08b3ba55d4f62b3e53ef76b Mon Sep 17 00:00:00 2001 > +From: Khem Raj <raj.khem@gmail.com> > +Date: Tue, 1 Mar 2022 19:06:35 -0800 > +Subject: [PATCH] setup.py: Use setuptools instead of distutils > + > +Upstream-Status: Pending > +Signed-off-by: Khem Raj <raj.khem@gmail.com> > +--- > + setup.py.in | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > + > +--- a/setup.py.in > ++++ b/setup.py.in > +@@ -2,20 +2,17 @@ > + # -*- coding: utf-8 -*- > + > + import sys > +-from distutils.core import setup > ++from setuptools import setup, find_packages > + > + setup(name="slip", version="@VERSION@", > + py_modules=["slip.__init__", "slip.util.__init__", > + "slip.util.hookable", "slip.util.files", > +- "slip._wrappers.__init__", "slip._wrappers._glib"], > +- requires=["selinux"]) > +- > +-setup(name="slip.dbus", version="@VERSION@", > +- py_modules=["slip.dbus.__init__", "slip.dbus.bus", > ++ "slip._wrappers.__init__", "slip._wrappers._glib", > ++ "slip.dbus.__init__", "slip.dbus.bus", > + "slip.dbus.constants", "slip.dbus.introspection", > + "slip.dbus.mainloop", "slip.dbus.polkit", > "slip.dbus.proxies", > + "slip.dbus.service"], > +- requires=["dbus", "decorator", "StringIO", > "xml.etree.ElementTree"]) > ++ requires=["dbus", "decorator", "selinux", "StringIO", > "xml.etree.ElementTree"]) > + > + if sys.version_info.major == 2: > + setup(name="slip.gtk", version="@VERSION@", > diff --git > a/meta-python/recipes-devtools/python/python3-slip-dbus/9b939c0b534c1b7958fa0a3c7aedf30bca910431.patch > b/meta-python/recipes-devtools/python/python3-slip-dbus/9b939c0b534c1b7958fa0a3c7aedf30bca910431.patch > new file mode 100644 > index 0000000000..b0e9d2215f > --- /dev/null > +++ > b/meta-python/recipes-devtools/python/python3-slip-dbus/9b939c0b534c1b7958fa0a3c7aedf30bca910431.patch > @@ -0,0 +1,76 @@ > +From 9b939c0b534c1b7958fa0a3c7aedf30bca910431 Mon Sep 17 00:00:00 2001 > +From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz> > +Date: Mon, 7 Jun 2021 23:23:47 +0200 > +Subject: [PATCH] Python 3.10+ fix: Use collections.abc.Callable instead of > + collections.Callable > + > +The deprecated aliases to Collections Abstract Base Classes were removed > from > +the collections module in Python 3.10. > + > https://docs.python.org/3.10/whatsnew/changelog.html#python-3-10-0-alpha-5 > +https://bugs.python.org/issue37324 > +--- > + slip/dbus/polkit.py | 6 +++--- > + slip/util/hookable.py | 6 +++--- > + 2 files changed, 6 insertions(+), 6 deletions(-) > + > +diff --git a/slip/dbus/polkit.py b/slip/dbus/polkit.py > +index 128e8ce..320676d 100644 > +--- a/slip/dbus/polkit.py > ++++ b/slip/dbus/polkit.py > +@@ -26,7 +26,7 @@ > + > + from __future__ import absolute_import > + > +-import collections > ++import collections.abc > + import dbus > + from decorator import decorator > + from functools import reduce > +@@ -103,14 +103,14 @@ class MyProxy(object): > + def some_method(self, ...): > + ...""" > + > +- assert(func is None or isinstance(func, collections.Callable)) > ++ assert(func is None or isinstance(func, collections.abc.Callable)) > + > + assert( > + authfail_result in (None, AUTHFAIL_DONTCATCH) or > + authfail_exception is None) > + assert( > + authfail_callback is None or > +- isinstance(authfail_callback, collections.Callable)) > ++ isinstance(authfail_callback, collections.abc.Callable)) > + assert( > + authfail_exception is None or > + issubclass(authfail_exception, Exception)) > +diff --git a/slip/util/hookable.py b/slip/util/hookable.py > +index 89c7392..0cd9967 100644 > +--- a/slip/util/hookable.py > ++++ b/slip/util/hookable.py > +@@ -23,7 +23,7 @@ > + """This module contains variants of certain base types which call > registered > + hooks on changes.""" > + > +-import collections > ++import collections.abc > + from six import with_metaclass > + > + __all__ = ["Hookable", "HookableSet"] > +@@ -67,7 +67,7 @@ class _HookEntry(object): > + > + def __init__(self, hook, args, kwargs, hookable=None): > + > +- assert(isinstance(hook, collections.Callable)) > ++ assert(isinstance(hook, collections.abc.Callable)) > + assert(isinstance(hookable, Hookable)) > + > + for n, x in enumerate(args): > +@@ -174,7 +174,7 @@ def add_hook_hookable(self, hook, *args, **kwargs): > + self.__add_hook(hook, self, *args, **kwargs) > + > + def __add_hook(self, hook, _hookable, *args, **kwargs): > +- assert isinstance(hook, collections.Callable) > ++ assert isinstance(hook, collections.abc.Callable) > + assert isinstance(_hookable, Hookable) > + hookentry = _HookEntry(hook, args, kwargs, hookable=_hookable) > + self.__hooks__.add(hookentry) > diff --git a/meta-python/recipes-devtools/python/ > python3-slip-dbus_0.6.5.bb b/meta-python/recipes-devtools/python/ > python3-slip-dbus_0.6.5.bb > index 00d83ab61b..57a9185289 100644 > --- a/meta-python/recipes-devtools/python/python3-slip-dbus_0.6.5.bb > +++ b/meta-python/recipes-devtools/python/python3-slip-dbus_0.6.5.bb > @@ -14,12 +14,14 @@ LICENSE = "GPLv2+" > LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018" > SRCNAME = "python-slip" > > -SRC_URI = " > https://github.com/nphilipp/${SRCNAME}/releases/download/${SRCNAME}-${PV}/${SRCNAME}-${PV}.tar.bz2 > " > -S = "${WORKDIR}/${SRCNAME}-${PV}" > - > -SRC_URI[md5sum] = "28ae5f93853466c44ec96706ba2a1eb4" > +SRC_URI = " > https://github.com/nphilipp/${SRCNAME}/releases/download/${SRCNAME}-${PV}/${SRCNAME}-${PV}.tar.bz2 > \ > + file://9b939c0b534c1b7958fa0a3c7aedf30bca910431.patch \ > + file://0001-setup.py-Use-setuptools-instead-of-distutils.patch > \ > + " > SRC_URI[sha256sum] = > "c726c086f0dd93a0ac7a0176f383a12af91b6657b78a301e3f5b25d9f8d4d10b" > > +S = "${WORKDIR}/${SRCNAME}-${PV}" > + > do_compile:prepend() { > sed -e 's/@VERSION@/${PV}/g' ${S}/setup.py.in > ${S}/setup.py > } > @@ -32,3 +34,4 @@ RDEPENDS:${PN} += "\ > CLEANBROKEN = "1" > > inherit setuptools3 > +PIP_INSTALL_PACKAGE = "slip" > -- > 2.35.1 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#95729): > https://lists.openembedded.org/g/openembedded-devel/message/95729 > Mute This Topic: https://lists.openembedded.org/mt/89520915/924729 > Group Owner: openembedded-devel+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [ > ticotimo@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- > >
diff --git a/meta-python/recipes-devtools/python/python3-slip-dbus/0001-setup.py-Use-setuptools-instead-of-distutils.patch b/meta-python/recipes-devtools/python/python3-slip-dbus/0001-setup.py-Use-setuptools-instead-of-distutils.patch new file mode 100644 index 0000000000..1208769b2f --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-slip-dbus/0001-setup.py-Use-setuptools-instead-of-distutils.patch @@ -0,0 +1,38 @@ +From 4309ce76351b1685d08b3ba55d4f62b3e53ef76b Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Tue, 1 Mar 2022 19:06:35 -0800 +Subject: [PATCH] setup.py: Use setuptools instead of distutils + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + setup.py.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/setup.py.in ++++ b/setup.py.in +@@ -2,20 +2,17 @@ + # -*- coding: utf-8 -*- + + import sys +-from distutils.core import setup ++from setuptools import setup, find_packages + + setup(name="slip", version="@VERSION@", + py_modules=["slip.__init__", "slip.util.__init__", + "slip.util.hookable", "slip.util.files", +- "slip._wrappers.__init__", "slip._wrappers._glib"], +- requires=["selinux"]) +- +-setup(name="slip.dbus", version="@VERSION@", +- py_modules=["slip.dbus.__init__", "slip.dbus.bus", ++ "slip._wrappers.__init__", "slip._wrappers._glib", ++ "slip.dbus.__init__", "slip.dbus.bus", + "slip.dbus.constants", "slip.dbus.introspection", + "slip.dbus.mainloop", "slip.dbus.polkit", "slip.dbus.proxies", + "slip.dbus.service"], +- requires=["dbus", "decorator", "StringIO", "xml.etree.ElementTree"]) ++ requires=["dbus", "decorator", "selinux", "StringIO", "xml.etree.ElementTree"]) + + if sys.version_info.major == 2: + setup(name="slip.gtk", version="@VERSION@", diff --git a/meta-python/recipes-devtools/python/python3-slip-dbus/9b939c0b534c1b7958fa0a3c7aedf30bca910431.patch b/meta-python/recipes-devtools/python/python3-slip-dbus/9b939c0b534c1b7958fa0a3c7aedf30bca910431.patch new file mode 100644 index 0000000000..b0e9d2215f --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-slip-dbus/9b939c0b534c1b7958fa0a3c7aedf30bca910431.patch @@ -0,0 +1,76 @@ +From 9b939c0b534c1b7958fa0a3c7aedf30bca910431 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz> +Date: Mon, 7 Jun 2021 23:23:47 +0200 +Subject: [PATCH] Python 3.10+ fix: Use collections.abc.Callable instead of + collections.Callable + +The deprecated aliases to Collections Abstract Base Classes were removed from +the collections module in Python 3.10. +https://docs.python.org/3.10/whatsnew/changelog.html#python-3-10-0-alpha-5 +https://bugs.python.org/issue37324 +--- + slip/dbus/polkit.py | 6 +++--- + slip/util/hookable.py | 6 +++--- + 2 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/slip/dbus/polkit.py b/slip/dbus/polkit.py +index 128e8ce..320676d 100644 +--- a/slip/dbus/polkit.py ++++ b/slip/dbus/polkit.py +@@ -26,7 +26,7 @@ + + from __future__ import absolute_import + +-import collections ++import collections.abc + import dbus + from decorator import decorator + from functools import reduce +@@ -103,14 +103,14 @@ class MyProxy(object): + def some_method(self, ...): + ...""" + +- assert(func is None or isinstance(func, collections.Callable)) ++ assert(func is None or isinstance(func, collections.abc.Callable)) + + assert( + authfail_result in (None, AUTHFAIL_DONTCATCH) or + authfail_exception is None) + assert( + authfail_callback is None or +- isinstance(authfail_callback, collections.Callable)) ++ isinstance(authfail_callback, collections.abc.Callable)) + assert( + authfail_exception is None or + issubclass(authfail_exception, Exception)) +diff --git a/slip/util/hookable.py b/slip/util/hookable.py +index 89c7392..0cd9967 100644 +--- a/slip/util/hookable.py ++++ b/slip/util/hookable.py +@@ -23,7 +23,7 @@ + """This module contains variants of certain base types which call registered + hooks on changes.""" + +-import collections ++import collections.abc + from six import with_metaclass + + __all__ = ["Hookable", "HookableSet"] +@@ -67,7 +67,7 @@ class _HookEntry(object): + + def __init__(self, hook, args, kwargs, hookable=None): + +- assert(isinstance(hook, collections.Callable)) ++ assert(isinstance(hook, collections.abc.Callable)) + assert(isinstance(hookable, Hookable)) + + for n, x in enumerate(args): +@@ -174,7 +174,7 @@ def add_hook_hookable(self, hook, *args, **kwargs): + self.__add_hook(hook, self, *args, **kwargs) + + def __add_hook(self, hook, _hookable, *args, **kwargs): +- assert isinstance(hook, collections.Callable) ++ assert isinstance(hook, collections.abc.Callable) + assert isinstance(_hookable, Hookable) + hookentry = _HookEntry(hook, args, kwargs, hookable=_hookable) + self.__hooks__.add(hookentry) diff --git a/meta-python/recipes-devtools/python/python3-slip-dbus_0.6.5.bb b/meta-python/recipes-devtools/python/python3-slip-dbus_0.6.5.bb index 00d83ab61b..57a9185289 100644 --- a/meta-python/recipes-devtools/python/python3-slip-dbus_0.6.5.bb +++ b/meta-python/recipes-devtools/python/python3-slip-dbus_0.6.5.bb @@ -14,12 +14,14 @@ LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018" SRCNAME = "python-slip" -SRC_URI = "https://github.com/nphilipp/${SRCNAME}/releases/download/${SRCNAME}-${PV}/${SRCNAME}-${PV}.tar.bz2" -S = "${WORKDIR}/${SRCNAME}-${PV}" - -SRC_URI[md5sum] = "28ae5f93853466c44ec96706ba2a1eb4" +SRC_URI = "https://github.com/nphilipp/${SRCNAME}/releases/download/${SRCNAME}-${PV}/${SRCNAME}-${PV}.tar.bz2 \ + file://9b939c0b534c1b7958fa0a3c7aedf30bca910431.patch \ + file://0001-setup.py-Use-setuptools-instead-of-distutils.patch \ + " SRC_URI[sha256sum] = "c726c086f0dd93a0ac7a0176f383a12af91b6657b78a301e3f5b25d9f8d4d10b" +S = "${WORKDIR}/${SRCNAME}-${PV}" + do_compile:prepend() { sed -e 's/@VERSION@/${PV}/g' ${S}/setup.py.in > ${S}/setup.py } @@ -32,3 +34,4 @@ RDEPENDS:${PN} += "\ CLEANBROKEN = "1" inherit setuptools3 +PIP_INSTALL_PACKAGE = "slip"
Migrate to use setuptools instead of distutils merge slip.dbus into slip module since we use slip.dbus, it works fine for OE Signed-off-by: Khem Raj <raj.khem@gmail.com> --- ...-Use-setuptools-instead-of-distutils.patch | 38 ++++++++++ ...9c0b534c1b7958fa0a3c7aedf30bca910431.patch | 76 +++++++++++++++++++ .../python/python3-slip-dbus_0.6.5.bb | 11 ++- 3 files changed, 121 insertions(+), 4 deletions(-) create mode 100644 meta-python/recipes-devtools/python/python3-slip-dbus/0001-setup.py-Use-setuptools-instead-of-distutils.patch create mode 100644 meta-python/recipes-devtools/python/python3-slip-dbus/9b939c0b534c1b7958fa0a3c7aedf30bca910431.patch