diff --git a/end_to_end_tests/golden-record/my_test_api_client/api/default/get_models_oneof_with_required_const.py b/end_to_end_tests/golden-record/my_test_api_client/api/default/get_models_oneof_with_required_const.py index 60b398bc9..3401cf323 100644 --- a/end_to_end_tests/golden-record/my_test_api_client/api/default/get_models_oneof_with_required_const.py +++ b/end_to_end_tests/golden-record/my_test_api_client/api/default/get_models_oneof_with_required_const.py @@ -37,7 +37,7 @@ def _parse_response_200( response_200_type_0 = GetModelsOneofWithRequiredConstResponse200Type0.from_dict(data) return response_200_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass if not isinstance(data, dict): raise TypeError() diff --git a/end_to_end_tests/golden-record/my_test_api_client/models/a_model.py b/end_to_end_tests/golden-record/my_test_api_client/models/a_model.py index 9110210cf..b9c2c362b 100644 --- a/end_to_end_tests/golden-record/my_test_api_client/models/a_model.py +++ b/end_to_end_tests/golden-record/my_test_api_client/models/a_model.py @@ -272,7 +272,7 @@ def _parse_a_camel_date_time(data: object) -> datetime.date | datetime.datetime: a_camel_date_time_type_0 = isoparse(data) return a_camel_date_time_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass if not isinstance(data, str): raise TypeError() @@ -293,7 +293,7 @@ def _parse_a_nullable_date(data: object) -> datetime.date | None: a_nullable_date_type_0 = isoparse(data).date() return a_nullable_date_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(datetime.date | None, data) @@ -310,7 +310,7 @@ def _parse_a_nullable_uuid(data: object) -> None | UUID: a_nullable_uuid_type_0 = UUID(data) return a_nullable_uuid_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(None | UUID, data) @@ -332,7 +332,7 @@ def _parse_one_of_models(data: object) -> Any | FreeFormModel | ModelWithUnionPr one_of_models_type_0 = FreeFormModel.from_dict(data) return one_of_models_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass try: if not isinstance(data, dict): @@ -340,7 +340,7 @@ def _parse_one_of_models(data: object) -> Any | FreeFormModel | ModelWithUnionPr one_of_models_type_1 = ModelWithUnionProperty.from_dict(data) return one_of_models_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(Any | FreeFormModel | ModelWithUnionProperty, data) @@ -355,7 +355,7 @@ def _parse_nullable_one_of_models(data: object) -> FreeFormModel | ModelWithUnio nullable_one_of_models_type_0 = FreeFormModel.from_dict(data) return nullable_one_of_models_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass try: if not isinstance(data, dict): @@ -363,7 +363,7 @@ def _parse_nullable_one_of_models(data: object) -> FreeFormModel | ModelWithUnio nullable_one_of_models_type_1 = ModelWithUnionProperty.from_dict(data) return nullable_one_of_models_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(FreeFormModel | ModelWithUnionProperty | None, data) @@ -380,7 +380,7 @@ def _parse_nullable_model(data: object) -> ModelWithUnionProperty | None: nullable_model_type_1 = ModelWithUnionProperty.from_dict(data) return nullable_model_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(ModelWithUnionProperty | None, data) @@ -447,7 +447,7 @@ def _parse_not_required_one_of_models(data: object) -> FreeFormModel | ModelWith not_required_one_of_models_type_0 = FreeFormModel.from_dict(data) return not_required_one_of_models_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass if not isinstance(data, dict): raise TypeError() @@ -470,7 +470,7 @@ def _parse_not_required_nullable_one_of_models( not_required_nullable_one_of_models_type_0 = FreeFormModel.from_dict(data) return not_required_nullable_one_of_models_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass try: if not isinstance(data, dict): @@ -478,7 +478,7 @@ def _parse_not_required_nullable_one_of_models( not_required_nullable_one_of_models_type_1 = ModelWithUnionProperty.from_dict(data) return not_required_nullable_one_of_models_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(FreeFormModel | ModelWithUnionProperty | None | str | Unset, data) @@ -504,7 +504,7 @@ def _parse_not_required_nullable_model(data: object) -> ModelWithUnionProperty | not_required_nullable_model_type_1 = ModelWithUnionProperty.from_dict(data) return not_required_nullable_model_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(ModelWithUnionProperty | None | Unset, data) diff --git a/end_to_end_tests/golden-record/my_test_api_client/models/body_upload_file_tests_upload_post.py b/end_to_end_tests/golden-record/my_test_api_client/models/body_upload_file_tests_upload_post.py index 20b4d96c2..959cdccc8 100644 --- a/end_to_end_tests/golden-record/my_test_api_client/models/body_upload_file_tests_upload_post.py +++ b/end_to_end_tests/golden-record/my_test_api_client/models/body_upload_file_tests_upload_post.py @@ -276,7 +276,7 @@ def _parse_some_nullable_object(data: object) -> BodyUploadFileTestsUploadPostSo some_nullable_object_type_0 = BodyUploadFileTestsUploadPostSomeNullableObject.from_dict(data) return some_nullable_object_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(BodyUploadFileTestsUploadPostSomeNullableObject | None, data) @@ -347,7 +347,7 @@ def _parse_some_array(data: object) -> list[AFormData] | None | Unset: some_array_type_0.append(some_array_type_0_item) return some_array_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(list[AFormData] | None | Unset, data) diff --git a/end_to_end_tests/golden-record/my_test_api_client/models/extended.py b/end_to_end_tests/golden-record/my_test_api_client/models/extended.py index 7208b276a..708aa4a90 100644 --- a/end_to_end_tests/golden-record/my_test_api_client/models/extended.py +++ b/end_to_end_tests/golden-record/my_test_api_client/models/extended.py @@ -279,7 +279,7 @@ def _parse_a_camel_date_time(data: object) -> datetime.date | datetime.datetime: a_camel_date_time_type_0 = isoparse(data) return a_camel_date_time_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass if not isinstance(data, str): raise TypeError() @@ -300,7 +300,7 @@ def _parse_a_nullable_date(data: object) -> datetime.date | None: a_nullable_date_type_0 = isoparse(data).date() return a_nullable_date_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(datetime.date | None, data) @@ -317,7 +317,7 @@ def _parse_a_nullable_uuid(data: object) -> None | UUID: a_nullable_uuid_type_0 = UUID(data) return a_nullable_uuid_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(None | UUID, data) @@ -339,7 +339,7 @@ def _parse_one_of_models(data: object) -> Any | FreeFormModel | ModelWithUnionPr one_of_models_type_0 = FreeFormModel.from_dict(data) return one_of_models_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass try: if not isinstance(data, dict): @@ -347,7 +347,7 @@ def _parse_one_of_models(data: object) -> Any | FreeFormModel | ModelWithUnionPr one_of_models_type_1 = ModelWithUnionProperty.from_dict(data) return one_of_models_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(Any | FreeFormModel | ModelWithUnionProperty, data) @@ -362,7 +362,7 @@ def _parse_nullable_one_of_models(data: object) -> FreeFormModel | ModelWithUnio nullable_one_of_models_type_0 = FreeFormModel.from_dict(data) return nullable_one_of_models_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass try: if not isinstance(data, dict): @@ -370,7 +370,7 @@ def _parse_nullable_one_of_models(data: object) -> FreeFormModel | ModelWithUnio nullable_one_of_models_type_1 = ModelWithUnionProperty.from_dict(data) return nullable_one_of_models_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(FreeFormModel | ModelWithUnionProperty | None, data) @@ -387,7 +387,7 @@ def _parse_nullable_model(data: object) -> ModelWithUnionProperty | None: nullable_model_type_1 = ModelWithUnionProperty.from_dict(data) return nullable_model_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(ModelWithUnionProperty | None, data) @@ -454,7 +454,7 @@ def _parse_not_required_one_of_models(data: object) -> FreeFormModel | ModelWith not_required_one_of_models_type_0 = FreeFormModel.from_dict(data) return not_required_one_of_models_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass if not isinstance(data, dict): raise TypeError() @@ -477,7 +477,7 @@ def _parse_not_required_nullable_one_of_models( not_required_nullable_one_of_models_type_0 = FreeFormModel.from_dict(data) return not_required_nullable_one_of_models_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass try: if not isinstance(data, dict): @@ -485,7 +485,7 @@ def _parse_not_required_nullable_one_of_models( not_required_nullable_one_of_models_type_1 = ModelWithUnionProperty.from_dict(data) return not_required_nullable_one_of_models_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(FreeFormModel | ModelWithUnionProperty | None | str | Unset, data) @@ -511,7 +511,7 @@ def _parse_not_required_nullable_model(data: object) -> ModelWithUnionProperty | not_required_nullable_model_type_1 = ModelWithUnionProperty.from_dict(data) return not_required_nullable_model_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(ModelWithUnionProperty | None | Unset, data) diff --git a/end_to_end_tests/golden-record/my_test_api_client/models/model_with_any_json_properties.py b/end_to_end_tests/golden-record/my_test_api_client/models/model_with_any_json_properties.py index eb15b3b03..7b59d8c2f 100644 --- a/end_to_end_tests/golden-record/my_test_api_client/models/model_with_any_json_properties.py +++ b/end_to_end_tests/golden-record/my_test_api_client/models/model_with_any_json_properties.py @@ -61,7 +61,7 @@ def _parse_additional_property( additional_property_type_0 = ModelWithAnyJsonPropertiesAdditionalPropertyType0.from_dict(data) return additional_property_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass try: if not isinstance(data, list): @@ -69,7 +69,7 @@ def _parse_additional_property( additional_property_type_1 = cast(list[str], data) return additional_property_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast( bool | float | int | list[str] | ModelWithAnyJsonPropertiesAdditionalPropertyType0 | str, data diff --git a/end_to_end_tests/golden-record/my_test_api_client/models/model_with_discriminated_union.py b/end_to_end_tests/golden-record/my_test_api_client/models/model_with_discriminated_union.py index bdde4d4ac..0e0021611 100644 --- a/end_to_end_tests/golden-record/my_test_api_client/models/model_with_discriminated_union.py +++ b/end_to_end_tests/golden-record/my_test_api_client/models/model_with_discriminated_union.py @@ -68,7 +68,7 @@ def _parse_discriminated_union( componentsschemas_a_discriminated_union_type_0 = ADiscriminatedUnionType1.from_dict(data) return componentsschemas_a_discriminated_union_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass try: if not isinstance(data, dict): @@ -76,7 +76,7 @@ def _parse_discriminated_union( componentsschemas_a_discriminated_union_type_1 = ADiscriminatedUnionType2.from_dict(data) return componentsschemas_a_discriminated_union_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(ADiscriminatedUnionType1 | ADiscriminatedUnionType2 | None | Unset, data) diff --git a/end_to_end_tests/golden-record/my_test_api_client/models/model_with_union_property.py b/end_to_end_tests/golden-record/my_test_api_client/models/model_with_union_property.py index 89a297c86..176b3eadc 100644 --- a/end_to_end_tests/golden-record/my_test_api_client/models/model_with_union_property.py +++ b/end_to_end_tests/golden-record/my_test_api_client/models/model_with_union_property.py @@ -51,7 +51,7 @@ def _parse_a_property(data: object) -> AnEnum | AnIntEnum | Unset: a_property_type_0 = AnEnum(data) return a_property_type_0 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass if not isinstance(data, int): raise TypeError() diff --git a/end_to_end_tests/golden-record/my_test_api_client/models/model_with_union_property_inlined.py b/end_to_end_tests/golden-record/my_test_api_client/models/model_with_union_property_inlined.py index 38c90970e..ab144ded1 100644 --- a/end_to_end_tests/golden-record/my_test_api_client/models/model_with_union_property_inlined.py +++ b/end_to_end_tests/golden-record/my_test_api_client/models/model_with_union_property_inlined.py @@ -61,7 +61,7 @@ def _parse_fruit( fruit_apples = ModelWithUnionPropertyInlinedApples.from_dict(data) return fruit_apples - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass if not isinstance(data, dict): raise TypeError() diff --git a/end_to_end_tests/golden-record/my_test_api_client/models/post_responses_unions_simple_before_complex_response_200.py b/end_to_end_tests/golden-record/my_test_api_client/models/post_responses_unions_simple_before_complex_response_200.py index 9b3e5a8b2..41685d494 100644 --- a/end_to_end_tests/golden-record/my_test_api_client/models/post_responses_unions_simple_before_complex_response_200.py +++ b/end_to_end_tests/golden-record/my_test_api_client/models/post_responses_unions_simple_before_complex_response_200.py @@ -61,7 +61,7 @@ def _parse_a(data: object) -> PostResponsesUnionsSimpleBeforeComplexResponse200A a_type_1 = PostResponsesUnionsSimpleBeforeComplexResponse200AType1.from_dict(data) return a_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(PostResponsesUnionsSimpleBeforeComplexResponse200AType1 | str, data) diff --git a/end_to_end_tests/literal-enums-golden-record/my_enum_api_client/models/post_user_list_body.py b/end_to_end_tests/literal-enums-golden-record/my_enum_api_client/models/post_user_list_body.py index f9c894131..7e8e93950 100644 --- a/end_to_end_tests/literal-enums-golden-record/my_enum_api_client/models/post_user_list_body.py +++ b/end_to_end_tests/literal-enums-golden-record/my_enum_api_client/models/post_user_list_body.py @@ -182,7 +182,7 @@ def _parse_an_enum_value_with_null_item(data: object) -> AnEnumWithNull | None: componentsschemas_an_enum_with_null_type_1 = check_an_enum_with_null(data) return componentsschemas_an_enum_with_null_type_1 - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass return cast(AnEnumWithNull | None, data) diff --git a/openapi_python_client/templates/property_templates/union_property.py.jinja b/openapi_python_client/templates/property_templates/union_property.py.jinja index 09b6e6e09..e21e08808 100644 --- a/openapi_python_client/templates/property_templates/union_property.py.jinja +++ b/openapi_python_client/templates/property_templates/union_property.py.jinja @@ -21,7 +21,7 @@ def _parse_{{ property.python_name }}(data: object) -> {{ property.get_type_stri raise TypeError() {{ inner_template.construct(inner_property, "data") | indent(8) }} return {{ inner_property.python_name }} - except: # noqa: E722 + except (TypeError, ValueError, AttributeError, KeyError): pass {% else %}{# Don't do try/except for the last one nor any properties with no type checking #} {% if inner_template.check_type_for_construct %}