Commit f415a30b authored by Benjamin Peterson's avatar Benjamin Peterson

revert r77790. it requires a new-style class change

parent 83fd451a
"""A more or less complete user-defined wrapper around dictionary objects.""" """A more or less complete user-defined wrapper around dictionary objects."""
class UserDict(object): class UserDict:
def __init__(self, dict=None, **kwargs): def __init__(self, dict=None, **kwargs):
self.data = {} self.data = {}
if dict is not None: if dict is not None:
......
...@@ -96,7 +96,7 @@ class ABCMeta(type): ...@@ -96,7 +96,7 @@ class ABCMeta(type):
def register(cls, subclass): def register(cls, subclass):
"""Register a virtual subclass of an ABC.""" """Register a virtual subclass of an ABC."""
if not isinstance(subclass, type): if not isinstance(cls, type):
raise TypeError("Can only register classes") raise TypeError("Can only register classes")
if issubclass(subclass, cls): if issubclass(subclass, cls):
return # Already a subclass return # Already a subclass
......
...@@ -149,11 +149,6 @@ class TestABC(unittest.TestCase): ...@@ -149,11 +149,6 @@ class TestABC(unittest.TestCase):
self.assertRaises(RuntimeError, C.register, A) # cycles not allowed self.assertRaises(RuntimeError, C.register, A) # cycles not allowed
C.register(B) # ok C.register(B) # ok
def test_register_non_class(self):
class A(object):
__metaclass__ = abc.ABCMeta
self.assertRaises(TypeError, A.register, 4)
def test_registration_transitiveness(self): def test_registration_transitiveness(self):
class A: class A:
__metaclass__ = abc.ABCMeta __metaclass__ = abc.ABCMeta
......
...@@ -58,8 +58,6 @@ Library ...@@ -58,8 +58,6 @@ Library
file position to the given argument, which goes against the tradition of file position to the given argument, which goes against the tradition of
ftruncate() and other truncation APIs. Patch by Pascal Chambon. ftruncate() and other truncation APIs. Patch by Pascal Chambon.
- Issue #7792: Registering non-classes to ABCs raised an obscure error.
- Issue #7773: Fix an UnboundLocalError in platform.linux_distribution() when - Issue #7773: Fix an UnboundLocalError in platform.linux_distribution() when
the release file is empty. the release file is empty.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment