From 896ec52bb1a1f9489cf531bd245c0f6b4c2e2773 Mon Sep 17 00:00:00 2001 From: Kali Kaneko Date: Thu, 28 Sep 2017 18:39:46 +0200 Subject: [bug] fix incompatibility with six==1.11.0 add the version of with_metaclass found in six==1.10.0 See https://github.com/SecurityInnovation/PGPy/issues/217 - Resolves: #8672 --- CHANGELOG.rst | 9 ++++++++- debian/changelog | 8 +++++++- src/leap/mx/vendor/pgpy/types.py | 19 ++++++++++++++++--- 3 files changed, 31 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 08bf1a8..34c17be 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,8 +1,15 @@ -0.10.1 - `master`_ +0.10.2 - `master`_ ------------------------------- .. note:: This version is not yet released and is under active development. +0.10.1 - 28 Sep, 2017 ++++++++++++++++++++++++++++++++ + +Bugfixes +~~~~~~~~ +- `#8672 Thu, 28 Sep 2017 18:36:00 +0200 + leap-mx (0.10.0) unstable; urgency=medium *Update to 0.10.0 release. - -- Kali Kaneko Thu, 28 Sep 2017 13:36:41 +0200 + -- Kali Kaneko Thu, 28 Sep 2017 13:36:41 +0200 leap-mx (0.9.1) unstable; urgency=medium diff --git a/src/leap/mx/vendor/pgpy/types.py b/src/leap/mx/vendor/pgpy/types.py index b549434..af03e31 100644 --- a/src/leap/mx/vendor/pgpy/types.py +++ b/src/leap/mx/vendor/pgpy/types.py @@ -38,12 +38,25 @@ __all__ = ['Armorable', 'Fingerprint', 'SorteDeque'] +# XXX port of six's with_metaclass in 1.10.0, see PGPy/issues/217 + +def with_metaclass(meta, *bases): + """Create a base class with a metaclass.""" + # This requires a bit of explanation: the basic idea is to make a dummy + # metaclass for one level of class instantiation that replaces itself with + # the actual metaclass. + class metaclass(meta): + + def __new__(cls, name, this_bases, d): + return meta(name, bases, d) + return type.__new__(metaclass, 'temporary_class', (), {}) + if six.PY2: FileNotFoundError = IOError re.ASCII = 0 -class Armorable(six.with_metaclass(abc.ABCMeta)): +class Armorable(with_metaclass(abc.ABCMeta)): __crc24_init__ = 0x0B704CE __crc24_poly__ = 0x1864CFB @@ -241,7 +254,7 @@ class ParentRef(object): self._parent = None -class PGPObject(six.with_metaclass(abc.ABCMeta, object)): +class PGPObject(with_metaclass(abc.ABCMeta, object)): __metaclass__ = abc.ABCMeta @staticmethod @@ -543,7 +556,7 @@ class MetaDispatchable(abc.ABCMeta): return obj -class Dispatchable(six.with_metaclass(MetaDispatchable, PGPObject)): +class Dispatchable(with_metaclass(MetaDispatchable, PGPObject)): __metaclass__ = MetaDispatchable @abc.abstractproperty -- cgit v1.2.3