Skip to content

Commit 5fee292

Browse files
committed
refactor: use refs instead of copies
Signed-off-by: Henry Schreiner <[email protected]>
1 parent d4af0ac commit 5fee292

File tree

2 files changed

+96
-859
lines changed

2 files changed

+96
-859
lines changed

bin/generate_schema.py

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,10 @@
206206
"""
207207
)
208208

209-
non_global_options = copy.deepcopy(schema["properties"])
209+
for key, value in schema["properties"].items():
210+
value["title"] = f'CIBW_{key.replace("-", "_").upper()}'
211+
212+
non_global_options = {k: {"$ref": f"#/properties/{k}"} for k in schema["properties"]}
210213
del non_global_options["build"]
211214
del non_global_options["skip"]
212215
del non_global_options["container-engine"]
@@ -239,25 +242,18 @@ def as_object(d: dict[str, Any]) -> dict[str, Any]:
239242
"macos": as_object(not_linux),
240243
}
241244

242-
oses["linux"]["properties"]["repair-wheel-command"][
243-
"default"
244-
] = "auditwheel repair -w {dest_dir} {wheel}"
245-
oses["macos"]["properties"]["repair-wheel-command"][
246-
"default"
247-
] = "delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}"
245+
oses["linux"]["properties"]["repair-wheel-command"] = {
246+
**schema["properties"]["repair-wheel-command"],
247+
"default": "auditwheel repair -w {dest_dir} {wheel}",
248+
}
249+
oses["macos"]["properties"]["repair-wheel-command"] = {
250+
**schema["properties"]["repair-wheel-command"],
251+
"default": "delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}",
252+
}
248253

249254
del oses["linux"]["properties"]["dependency-versions"]
250255

251256
schema["properties"]["overrides"] = overrides
252257
schema["properties"] |= oses
253258

254-
for key, value in schema["properties"].items():
255-
value["title"] = f'CIBW_{key.replace("-", "_").upper()}'
256-
for key, value in schema["properties"]["linux"]["properties"].items():
257-
value["title"] = f'CIBW_{key.replace("-", "_").upper()}_LINUX'
258-
for key, value in schema["properties"]["macos"]["properties"].items():
259-
value["title"] = f'CIBW_{key.replace("-", "_").upper()}_MACOS'
260-
for key, value in schema["properties"]["windows"]["properties"].items():
261-
value["title"] = f'CIBW_{key.replace("-", "_").upper()}_WINDOWS'
262-
263259
print(json.dumps(schema, indent=2))

0 commit comments

Comments
 (0)