Attempting to dump the JSONschema from the pydantic class generated by xsdata-pydantic results in a type error due to field ordering: "TypeError: non-default argument 'name_identifier' follows default argument"
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "pydantic/tools.py", line 92, in pydantic.tools.schema_json_of
File "pydantic/tools.py", line 30, in pydantic.tools._get_parsing_type
File "pydantic/main.py", line 1026, in pydantic.main.create_model
File "pydantic/main.py", line 198, in pydantic.main.ModelMetaclass.__new__
File "pydantic/fields.py", line 506, in pydantic.fields.ModelField.infer
File "pydantic/fields.py", line 436, in pydantic.fields.ModelField.__init__
File "pydantic/fields.py", line 557, in pydantic.fields.ModelField.prepare
File "pydantic/fields.py", line 831, in pydantic.fields.ModelField.populate_validators
File "pydantic/validators.py", line 725, in find_validators
File "pydantic/dataclasses.py", line 479, in make_dataclass_validator
value = f'{default_name}()'
File "pydantic/dataclasses.py", line 231, in pydantic.dataclasses.dataclass
def __repr__(self):
File "pydantic/dataclasses.py", line 224, in pydantic.dataclasses.dataclass.wrap
File "pydantic/dataclasses.py", line 336, in pydantic.dataclasses._add_pydantic_validation_attributes
f'eq={self.eq!r},'
File "pydantic/dataclasses.py", line 391, in pydantic.dataclasses.create_pydantic_model_from_dataclass
# This function's logic is copied from "recursive_repr" function in
File "pydantic/main.py", line 1026, in pydantic.main.create_model
File "pydantic/main.py", line 198, in pydantic.main.ModelMetaclass.__new__
File "pydantic/fields.py", line 506, in pydantic.fields.ModelField.infer
File "pydantic/fields.py", line 436, in pydantic.fields.ModelField.__init__
File "pydantic/fields.py", line 557, in pydantic.fields.ModelField.prepare
File "pydantic/fields.py", line 831, in pydantic.fields.ModelField.populate_validators
File "pydantic/validators.py", line 725, in find_validators
File "pydantic/dataclasses.py", line 479, in make_dataclass_validator
value = f'{default_name}()'
File "pydantic/dataclasses.py", line 231, in pydantic.dataclasses.dataclass
def __repr__(self):
File "pydantic/dataclasses.py", line 224, in pydantic.dataclasses.dataclass.wrap
File "pydantic/dataclasses.py", line 336, in pydantic.dataclasses._add_pydantic_validation_attributes
f'eq={self.eq!r},'
File "pydantic/dataclasses.py", line 391, in pydantic.dataclasses.create_pydantic_model_from_dataclass
# This function's logic is copied from "recursive_repr" function in
File "pydantic/main.py", line 1026, in pydantic.main.create_model
File "pydantic/main.py", line 198, in pydantic.main.ModelMetaclass.__new__
File "pydantic/fields.py", line 506, in pydantic.fields.ModelField.infer
File "pydantic/fields.py", line 436, in pydantic.fields.ModelField.__init__
File "pydantic/fields.py", line 552, in pydantic.fields.ModelField.prepare
File "pydantic/fields.py", line 758, in pydantic.fields.ModelField._type_analysis
File "pydantic/fields.py", line 808, in pydantic.fields.ModelField._create_sub_type
File "pydantic/fields.py", line 436, in pydantic.fields.ModelField.__init__
File "pydantic/fields.py", line 557, in pydantic.fields.ModelField.prepare
File "pydantic/fields.py", line 831, in pydantic.fields.ModelField.populate_validators
File "pydantic/validators.py", line 725, in find_validators
File "pydantic/dataclasses.py", line 479, in make_dataclass_validator
value = f'{default_name}()'
File "pydantic/dataclasses.py", line 231, in pydantic.dataclasses.dataclass
def __repr__(self):
File "pydantic/dataclasses.py", line 207, in pydantic.dataclasses.dataclass.wrap
File "/usr/local/Cellar/[email protected]/3.10.6_2/Frameworks/Python.framework/Versions/3.10/lib/python3.10/dataclasses.py", line 1185, in dataclass
return wrap(cls)
File "/usr/local/Cellar/[email protected]/3.10.6_2/Frameworks/Python.framework/Versions/3.10/lib/python3.10/dataclasses.py", line 1176, in wrap
return _process_class(cls, init, repr, eq, order, unsafe_hash,
File "/usr/local/Cellar/[email protected]/3.10.6_2/Frameworks/Python.framework/Versions/3.10/lib/python3.10/dataclasses.py", line 1025, in _process_class
_init_fn(all_init_fields,
File "/usr/local/Cellar/[email protected]/3.10.6_2/Frameworks/Python.framework/Versions/3.10/lib/python3.10/dataclasses.py", line 546, in _init_fn
raise TypeError(f'non-default argument {f.name!r} '
TypeError: non-default argument 'name_identifier' follows default argument