Metro cannot resolve packages whose realpath is in the global virtual store #1294
SummaryIsolated aube with the default-on global virtual store links I first hit this in an Expo 56 app as This looks like the same GVS incompatibility that ExpectedAfter ActualNode resolves the package through the GVS realpath. Metro reports: Pointing Reprogit clone https://github.com/mwolson/tmp-aube-issues
cd tmp-aube-issues/metro-gvs-package-resolve
./repro.sh
Comparisons
So this is Metro's file map plus a virtual store that lives outside the project. aube turns that store on by default for local isolated installs. pnpm leaves it off. aubeshim is not required. I reproduced with Docs I checked
Metro's own note: symlink targets inside Related aube work: #32 and #101 added the auto-disable list. #117 later dropped names that had no concrete walk-up repro. #754 is isolated config-loader resolution, not this file-map miss. AskPlease add The matcher is exact and only looks at direct dependencies. A typical Expo app declares Until then, |
Replies: 2 comments
|
Confirmed and fixed in #1297. I reproduced this with aube 1.40.0, Node 24.19.0, and Metro 0.84.4. The GVS layout fails exactly as described, while per-project materialization, hoisted mode, and adding the realpath to The PR adds One caveat: explicit Thanks for the thorough repro and comparison matrix. AI-assisted — Tool: Codex; model: unavailable; version: unavailable. |
|
Confirmed fixed with aube |
Confirmed and fixed in #1297.
I reproduced this with aube 1.40.0, Node 24.19.0, and Metro 0.84.4. The GVS layout fails exactly as described, while per-project materialization, hoisted mode, and adding the realpath to
watchFoldersall succeed. Metro 0.87.0 also fails with the out-of-project realpath.The PR adds
expo,react-native, andmetroto the defaultdisableGlobalVirtualStoreForPackageslist, documents the Metro constraint, and adds regression coverage for all three direct-dependency triggers. I also verified that the expanded list materializes packages under the project and Metro resolves them successfully.One caveat: explicit
--enable-global-virtual-storeintentionally overrides t…