Andrew Geissler | 9aee500 | 2022-03-30 16:27:02 +0000 | [diff] [blame] | 1 | From 9b939c0b534c1b7958fa0a3c7aedf30bca910431 Mon Sep 17 00:00:00 2001 |
| 2 | From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz> |
| 3 | Date: Mon, 7 Jun 2021 23:23:47 +0200 |
| 4 | Subject: [PATCH] Python 3.10+ fix: Use collections.abc.Callable instead of |
| 5 | collections.Callable |
| 6 | |
| 7 | The deprecated aliases to Collections Abstract Base Classes were removed from |
| 8 | the collections module in Python 3.10. |
| 9 | https://docs.python.org/3.10/whatsnew/changelog.html#python-3-10-0-alpha-5 |
| 10 | https://bugs.python.org/issue37324 |
| 11 | --- |
Patrick Williams | 520786c | 2023-06-25 16:20:36 -0500 | [diff] [blame] | 12 | Upstream-Status: Pending |
| 13 | |
Andrew Geissler | 9aee500 | 2022-03-30 16:27:02 +0000 | [diff] [blame] | 14 | slip/dbus/polkit.py | 6 +++--- |
| 15 | slip/util/hookable.py | 6 +++--- |
| 16 | 2 files changed, 6 insertions(+), 6 deletions(-) |
| 17 | |
| 18 | diff --git a/slip/dbus/polkit.py b/slip/dbus/polkit.py |
| 19 | index 128e8ce..320676d 100644 |
| 20 | --- a/slip/dbus/polkit.py |
| 21 | +++ b/slip/dbus/polkit.py |
| 22 | @@ -26,7 +26,7 @@ |
| 23 | |
| 24 | from __future__ import absolute_import |
| 25 | |
| 26 | -import collections |
| 27 | +import collections.abc |
| 28 | import dbus |
| 29 | from decorator import decorator |
| 30 | from functools import reduce |
| 31 | @@ -103,14 +103,14 @@ class MyProxy(object): |
| 32 | def some_method(self, ...): |
| 33 | ...""" |
| 34 | |
| 35 | - assert(func is None or isinstance(func, collections.Callable)) |
| 36 | + assert(func is None or isinstance(func, collections.abc.Callable)) |
| 37 | |
| 38 | assert( |
| 39 | authfail_result in (None, AUTHFAIL_DONTCATCH) or |
| 40 | authfail_exception is None) |
| 41 | assert( |
| 42 | authfail_callback is None or |
| 43 | - isinstance(authfail_callback, collections.Callable)) |
| 44 | + isinstance(authfail_callback, collections.abc.Callable)) |
| 45 | assert( |
| 46 | authfail_exception is None or |
| 47 | issubclass(authfail_exception, Exception)) |
| 48 | diff --git a/slip/util/hookable.py b/slip/util/hookable.py |
| 49 | index 89c7392..0cd9967 100644 |
| 50 | --- a/slip/util/hookable.py |
| 51 | +++ b/slip/util/hookable.py |
| 52 | @@ -23,7 +23,7 @@ |
| 53 | """This module contains variants of certain base types which call registered |
| 54 | hooks on changes.""" |
| 55 | |
| 56 | -import collections |
| 57 | +import collections.abc |
| 58 | from six import with_metaclass |
| 59 | |
| 60 | __all__ = ["Hookable", "HookableSet"] |
| 61 | @@ -67,7 +67,7 @@ class _HookEntry(object): |
| 62 | |
| 63 | def __init__(self, hook, args, kwargs, hookable=None): |
| 64 | |
| 65 | - assert(isinstance(hook, collections.Callable)) |
| 66 | + assert(isinstance(hook, collections.abc.Callable)) |
| 67 | assert(isinstance(hookable, Hookable)) |
| 68 | |
| 69 | for n, x in enumerate(args): |
| 70 | @@ -174,7 +174,7 @@ def add_hook_hookable(self, hook, *args, **kwargs): |
| 71 | self.__add_hook(hook, self, *args, **kwargs) |
| 72 | |
| 73 | def __add_hook(self, hook, _hookable, *args, **kwargs): |
| 74 | - assert isinstance(hook, collections.Callable) |
| 75 | + assert isinstance(hook, collections.abc.Callable) |
| 76 | assert isinstance(_hookable, Hookable) |
| 77 | hookentry = _HookEntry(hook, args, kwargs, hookable=_hookable) |
| 78 | self.__hooks__.add(hookentry) |