Skip to content

Commit af8ef2a

Browse files
authored
fix: preserve required fields when rendering embedded schemas (#501)
* fix: preserve required fields when rendering embedded schemas * test: add regression test for complete checkout docs rendering * remove scripts/test_main_macros.py Will be rewritten in a follow-up PR
1 parent cce6e22 commit af8ef2a

1 file changed

Lines changed: 6 additions & 3 deletions

File tree

main.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -664,9 +664,12 @@ def _render_table_from_schema(
664664
required_list = schema_data.get("required", [])
665665

666666
if parent_required_list:
667-
# Used for embedded schemas, we will only enforce the uppermost level
668-
# required list.
669-
required_list = parent_required_list
667+
# Preserve required fields from both the embedded child schema and the
668+
# parent wrapper that referenced it.
669+
required_list = list(required_list)
670+
for req in parent_required_list:
671+
if req not in required_list:
672+
required_list.append(req)
670673

671674
if (
672675
not properties

0 commit comments

Comments
 (0)