Skip to content

Commit 87923a1

Browse files
fix: Improve error message for _sort_summary_list failures (#243)
1 parent 461be30 commit 87923a1

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

sphinxcontrib/autodoc_pydantic/directives/autodocumenters.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -569,15 +569,15 @@ def sort_func(name: str) -> int:
569569
# catch cases where field is not found in tagorder
570570
msg = f'Field {name} in {self.object_name} not found in tagorder'
571571
raise ValueError(msg)
572-
else:
572+
573+
try:
574+
return sorted(names, key=sort_func)
575+
except TypeError as e:
573576
msg = (
574-
f'Invalid value `{sort_order}` provided for '
575-
f'`summary_list_order`. Valid options are: '
576-
f'{OptionsSummaryListOrder.values()}'
577+
f'Uncaught exception while sorting fields for model'
578+
f'{self.object_name} with sort order {sort_order}.'
577579
)
578-
raise ValueError(msg)
579-
580-
return sorted(names, key=sort_func)
580+
raise ValueError(msg).with_traceback(e.__traceback__) from e
581581

582582
def _get_field_summary_line(self, field_name: str) -> str:
583583
"""Get reST for field summary for given `member_name`."""

0 commit comments

Comments
 (0)