@@ -106,7 +106,7 @@ def _extract_field_docstring(cls: type, field_name: str) -> str:
106106def _get_field_type_name (field_info : Any ) -> str :
107107 """Get a user-friendly type name from a field."""
108108 annotation = field_info .annotation
109-
109+
110110 # Handle Optional types
111111 if get_origin (annotation ) is Union and type (None ) in get_args (annotation ):
112112 args = get_args (annotation )
@@ -115,48 +115,29 @@ def _get_field_type_name(field_info: Any) -> str:
115115 # Remove Optional wrapper, we handle optionality separately
116116 annotation = arg
117117 break
118-
118+
119119 # Handle basic types
120120 if isinstance (annotation , type ):
121121 return annotation .__name__
122-
122+
123123 # Handle parameterized generics
124124 origin = get_origin (annotation )
125125 if origin is not None :
126126 args = get_args (annotation )
127-
127+
128128 # Handle list types
129129 if origin is list or str (origin ).endswith ("list" ):
130- arg_type = args [0 ]
131- # Get simple name for the argument type
132- if hasattr (arg_type , "__name__" ):
133- arg_name = arg_type .__name__
134- else :
135- arg_name = str (arg_type ).replace ("typing." , "" )
136- return f"list[{ arg_name } ]"
137-
130+ # Just return "list" for simplicity and cross-version compatibility
131+ return "list"
132+
138133 # Handle dict types
139134 if origin is dict or str (origin ).endswith ("dict" ):
140- key_type = args [0 ]
141- val_type = args [1 ]
142- key_name = (
143- key_type .__name__ if hasattr (key_type , "__name__" ) else str (key_type )
144- )
145- val_name = (
146- val_type .__name__ if hasattr (val_type , "__name__" ) else str (val_type )
147- )
148- return f"dict[{ key_name } , { val_name } ]"
149-
135+ return "dict"
136+
150137 # Handle other generic types
151138 origin_name = origin .__name__ if hasattr (origin , "__name__" ) else str (origin )
152139 origin_name = origin_name .lower () # Convert List to list, etc.
153- arg_strs = []
154- for arg in args :
155- if hasattr (arg , "__name__" ):
156- arg_strs .append (arg .__name__ )
157- else :
158- arg_strs .append (str (arg ).replace ("typing." , "" ))
159- return f"{ origin_name } [{ ', ' .join (arg_strs )} ]"
160-
140+ return origin_name
141+
161142 # For any other types
162- return str (annotation ).replace ("typing." , "" )
143+ return str (annotation ).replace ("typing." , "" )
0 commit comments