Skip to content

Commit 9535d16

Browse files
authored
Merge pull request #1629 from henryiii/henryiii/refactor/schemaref
refactor: use refs instead of copies
2 parents 70fae8d + 5fee292 commit 9535d16

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
@@ -207,7 +207,10 @@
207207
"""
208208
)
209209

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

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

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

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

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

0 commit comments

Comments
 (0)