File tree Expand file tree Collapse file tree 1 file changed +11
-3
lines changed
Expand file tree Collapse file tree 1 file changed +11
-3
lines changed Original file line number Diff line number Diff line change @@ -137,9 +137,17 @@ def analyze_type_info(t) -> AnalyzedTypeInfo:
137137 dataclass_type = dataclass_type , attrs = attrs , nullable = nullable )
138138
139139def _encode_fields_schema (dataclass_type : type ) -> list [dict [str , Any ]]:
140- return [{ 'name' : field .name ,
141- ** encode_enriched_type_info (analyze_type_info (field .type ))
142- } for field in dataclasses .fields (dataclass_type )]
140+ result = []
141+ for field in dataclasses .fields (dataclass_type ):
142+ try :
143+ type_info = encode_enriched_type_info (analyze_type_info (field .type ))
144+ except ValueError as e :
145+ e .add_note (f"Failed to encode annotation for field - "
146+ f"{ dataclass_type .__name__ } .{ field .name } : { field .type } " )
147+ raise
148+ type_info ['name' ] = field .name
149+ result .append (type_info )
150+ return result
143151
144152def _encode_type (type_info : AnalyzedTypeInfo ) -> dict [str , Any ]:
145153 encoded_type : dict [str , Any ] = { 'kind' : type_info .kind }
You can’t perform that action at this time.
0 commit comments