From fc82aeeaee6baed65de8cf9403a14506fc3b5dd7 Mon Sep 17 00:00:00 2001 From: Aymeric Rabot Date: Thu, 6 Aug 2026 23:20:02 -0400 Subject: [PATCH] fix(cli): support flat standalone dependencies --- packages/cli/scripts/stage-runtime.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/cli/scripts/stage-runtime.ts b/packages/cli/scripts/stage-runtime.ts index 74df1cf5a..5f879b73b 100644 --- a/packages/cli/scripts/stage-runtime.ts +++ b/packages/cli/scripts/stage-runtime.ts @@ -74,7 +74,8 @@ async function removeUnusedSharp(root: string): Promise { let entries: string[] = [] try { entries = await readdir(bunModules) - } catch { + } catch (error) { + if ((error as NodeJS.ErrnoException).code !== 'ENOENT') throw error return } await Promise.all( @@ -89,7 +90,14 @@ async function removeUnusedSharp(root: string): Promise { async function flattenBunNodeModules(root: string): Promise { const nodeModules = path.join(root, 'node_modules') const bunNodeModules = path.join(nodeModules, '.bun/node_modules') - for (const entry of await readdir(bunNodeModules, { withFileTypes: true })) { + let entries + try { + entries = await readdir(bunNodeModules, { withFileTypes: true }) + } catch (error) { + if ((error as NodeJS.ErrnoException).code !== 'ENOENT') throw error + return + } + for (const entry of entries) { if (entry.name.startsWith('@') && entry.isDirectory()) { const scope = path.join(bunNodeModules, entry.name) for (const packageEntry of await readdir(scope, { withFileTypes: true })) {