diff --git a/format b/format index d941a2a..f29e8a4 160000 --- a/format +++ b/format @@ -1 +1 @@ -Subproject commit d941a2aa883092411e57696dd2f1aeb8675bbc67 +Subproject commit f29e8a472e703b44b8cc64919f57a7b68eabbf2c diff --git a/generate_model.py b/generate_model.py index d7e78f9..8fc52ea 100755 --- a/generate_model.py +++ b/generate_model.py @@ -1,5 +1,6 @@ from glob import glob from pathlib import Path +from tempfile import NamedTemporaryFile from datamodel_code_generator import InputFileType, generate, DataModelType from datamodel_code_generator.model import PythonVersion @@ -10,18 +11,29 @@ # Ensure output directory exists OUTPUT_DIR.mkdir(parents=True, exist_ok=True) -generate( - input_=SCHEMA_DIR, - input_file_type=InputFileType.JsonSchema, - output=OUTPUT_DIR, - output_model_type=DataModelType.PydanticV2BaseModel, - target_python_version=PythonVersion.PY_312, - allow_extra_fields=False, - disable_timestamp=True, - reuse_model=True, - use_annotated=True, - field_constraints=True, - custom_class_name_generator=lambda x: x.title().replace("Ethdebug/Format/", "").replace("/", "_"), - use_exact_imports=True, - -) +# Temporarily rename LICENSE file so it doesn't cause parsing issues +license_path = SCHEMA_DIR / "LICENSE" + +with NamedTemporaryFile(delete=False) as tmp_file: + if license_path.exists(): + license_path.rename(tmp_file.name) + temp_license_path = Path(tmp_file.name) + try: + generate( + input_=SCHEMA_DIR, + input_file_type=InputFileType.JsonSchema, + output=OUTPUT_DIR, + output_model_type=DataModelType.PydanticV2BaseModel, + target_python_version=PythonVersion.PY_312, + allow_extra_fields=False, + disable_timestamp=True, + reuse_model=True, + use_annotated=True, + field_constraints=True, + custom_class_name_generator=lambda x: x.title().replace("Ethdebug/Format/", "").replace("/", "_"), + use_exact_imports=True + ) + finally: + # Restore LICENSE file + if temp_license_path.exists(): + temp_license_path.rename(license_path) \ No newline at end of file