Skip to content

Commit b58b327

Browse files
committed
Use __init__ instead of __new__ for our metaclass
1 parent 9d0b22e commit b58b327

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed

elasticsearch_dsl/utils.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -247,15 +247,14 @@ class DslMeta(type):
247247
For typical use see `QueryMeta` and `Query` in `elasticsearch_dsl.query`.
248248
"""
249249
_types = {}
250-
def __new__(cls, name, bases, attrs):
251-
new_class = super(DslMeta, cls).__new__(cls, name, bases, attrs)
252-
if new_class.name is None:
250+
def __init__(cls, name, bases, attrs):
251+
super(DslMeta, cls).__init__(name, bases, attrs)
252+
if cls.name is None:
253253
# abstract base class, register it's shortcut
254-
cls._types[new_class._type_name] = new_class._type_shortcut
254+
cls._types[cls._type_name] = cls._type_shortcut
255255
else:
256256
# normal class, register it
257-
cls._classes[new_class.name] = new_class
258-
return new_class
257+
cls._classes[cls.name] = cls
259258

260259
@classmethod
261260
def get_dsl_type(cls, name):

0 commit comments

Comments
 (0)