← back to Nineoh Guide
fix(mobile): pnpm 11 honors nodeLinker in pnpm-workspace.yaml, not .npmrc — move hoisted there so EAS cloud Bundle JavaScript resolves @babel/runtime
904b355d806fc23a37b22ff9f54bc21bda754add · 2026-07-27 10:24:13 -0700 · Steve Abrams
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Files touched
Diff
commit 904b355d806fc23a37b22ff9f54bc21bda754add
Author: Steve Abrams <steve@designerwallcoverings.com>
Date: Mon Jul 27 10:24:13 2026 -0700
fix(mobile): pnpm 11 honors nodeLinker in pnpm-workspace.yaml, not .npmrc — move hoisted there so EAS cloud Bundle JavaScript resolves @babel/runtime
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---
pnpm-workspace.yaml | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
index c19a8d5..d51fc27 100644
--- a/pnpm-workspace.yaml
+++ b/pnpm-workspace.yaml
@@ -3,3 +3,8 @@ packages:
- "packages/*"
allowBuilds:
sharp: true
+# React Native / Metro cannot traverse pnpm's isolated .pnpm symlink store to
+# resolve transitive deps (e.g. @babel/runtime), so the Expo/EAS "Bundle
+# JavaScript" phase fails. Hoist to a flat node_modules. (pnpm 11 reads this
+# from pnpm-workspace.yaml, NOT .npmrc.) Safe for Next.js web + Vercel + Turbo.
+nodeLinker: hoisted
← 8a2cd67 auto-save: 2026-07-27T10:19:40 (2 files) — .npmrc apps/mobil
·
back to Nineoh Guide
·
chore(mobile): add preview-sim profile (iOS simulator build, 877569a →