summaryrefslogtreecommitdiffhomepage
path: root/packages
diff options
context:
space:
mode:
authorTyler Gannon <[email protected]>2025-11-03 14:05:48 -0600
committerGitHub <[email protected]>2025-11-03 14:05:48 -0600
commit7652a9606413f0d6e9af2c65aeee692c44996006 (patch)
treed105167aa184b0800a68ed1668da2f3a3ecb9175 /packages
parent901aae09f7330403d87b6ed2145f88467a082572 (diff)
downloadopencode-7652a9606413f0d6e9af2c65aeee692c44996006.tar.gz
opencode-7652a9606413f0d6e9af2c65aeee692c44996006.zip
fix: wait for stdout to flush in generate command (#3821)
Diffstat (limited to 'packages')
-rw-r--r--packages/opencode/src/cli/cmd/generate.ts10
1 files changed, 9 insertions, 1 deletions
diff --git a/packages/opencode/src/cli/cmd/generate.ts b/packages/opencode/src/cli/cmd/generate.ts
index 562dc84e5..0cefb2533 100644
--- a/packages/opencode/src/cli/cmd/generate.ts
+++ b/packages/opencode/src/cli/cmd/generate.ts
@@ -5,6 +5,14 @@ export const GenerateCommand = {
command: "generate",
handler: async () => {
const specs = await Server.openapi()
- process.stdout.write(JSON.stringify(specs, null, 2))
+ const json = JSON.stringify(specs, null, 2)
+
+ // Wait for stdout to finish writing before process.exit() is called
+ await new Promise<void>((resolve, reject) => {
+ process.stdout.write(json, (err) => {
+ if (err) reject(err)
+ else resolve()
+ })
+ })
},
} satisfies CommandModule