Try to make one class inherit another class. When using tojson or primitive on derived class get RecursionError.
What I Did
import typic
@typic.klass
class A:
a :int
@typic.klass
class B(A):
b:int
b = B(1,2)
try:
b.tojson()
except RecursionError as e:
print(e)
b.primitive()
Traceback:
/nix/store/6v5r9jyh7c96gh3j4bg8niakhk34dbrk-python3.8-typical-2.7.4/lib/python3.8/site-packages/typic/klass.py:236: UserWarning: Keyword `always` will default to `False` in a future version. You should update your code to either explicitly declare `always=True` or update your code to not assume values will be coerced when set.
return make_typedclass(
maximum recursion depth exceeded while calling a Python object
Traceback (most recent call last):
File "test.py", line 14, in <module>
b.tojson()
File "/nix/store/6v5r9jyh7c96gh3j4bg8niakhk34dbrk-python3.8-typical-2.7.4/lib/python3.8/site-packages/typic/ext/json.py", line 34, in tojson
return __dumps(__prim(o), **kwargs)
File "<typical generated serializer__5288976827520983837>", line 7, in serializer__5288976827520983837
File "/nix/store/6v5r9jyh7c96gh3j4bg8niakhk34dbrk-python3.8-typical-2.7.4/lib/python3.8/site-packages/typic/serde/resolver.py", line 670, in iterator
return __fields(o)
File "/nix/store/6v5r9jyh7c96gh3j4bg8niakhk34dbrk-python3.8-typical-2.7.4/lib/python3.8/site-packages/typic/serde/resolver.py", line 670, in iterator
return __fields(o)
File "/nix/store/6v5r9jyh7c96gh3j4bg8niakhk34dbrk-python3.8-typical-2.7.4/lib/python3.8/site-packages/typic/serde/resolver.py", line 670, in iterator
return __fields(o)
[Previous line repeated 496 more times]
RecursionError: maximum recursion depth exceeded while calling a Python object
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "test.py", line 17, in <module>
b.primitive()
File "<typical generated serializer__5288976827520983837>", line 7, in serializer__5288976827520983837
File "/nix/store/6v5r9jyh7c96gh3j4bg8niakhk34dbrk-python3.8-typical-2.7.4/lib/python3.8/site-packages/typic/serde/resolver.py", line 670, in iterator
return __fields(o)
File "/nix/store/6v5r9jyh7c96gh3j4bg8niakhk34dbrk-python3.8-typical-2.7.4/lib/python3.8/site-packages/typic/serde/resolver.py", line 670, in iterator
return __fields(o)
File "/nix/store/6v5r9jyh7c96gh3j4bg8niakhk34dbrk-python3.8-typical-2.7.4/lib/python3.8/site-packages/typic/serde/resolver.py", line 670, in iterator
return __fields(o)
[Previous line repeated 496 more times]
RecursionError: maximum recursion depth exceeded
Description
Try to make one class inherit another class. When using
tojson
orprimitive
on derived class getRecursionError
.What I Did
Traceback: