fix(generate): make openapi output deterministic by formatting in-place (#23228)

This commit is contained in:
Kit Langton 2026-04-17 22:31:21 -04:00 committed by GitHub
parent fc5b353144
commit 3573019916
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -25,7 +25,19 @@ export const GenerateCommand = {
]
}
}
const json = JSON.stringify(specs, null, 2)
const raw = JSON.stringify(specs, null, 2)
// Format through prettier so output is byte-identical to committed file
// regardless of whether ./script/format.ts runs afterward.
const prettier = await import("prettier")
const babel = await import("prettier/plugins/babel")
const estree = await import("prettier/plugins/estree")
const format = prettier.format ?? prettier.default?.format
const json = await format(raw, {
parser: "json",
plugins: [babel.default ?? babel, estree.default ?? estree],
printWidth: 120,
})
// Wait for stdout to finish writing before process.exit() is called
await new Promise<void>((resolve, reject) => {