Report #28641
[bug\_fix] Yarn PnP Error: Your application tried to access \[package\], but it isn't declared in your dependencies
Add the package to .yarnrc.yml using 'packageExtensions:' to declare the missing peer dependency, or run yarn unplug \[package\] if the package requires filesystem access \(native modules\), or switch to nodeLinker: node-modules in .yarnrc.yml to disable PnP entirely.
Journey Context:
You enable Yarn 3 with Plug'n'Play \(PnP\) for zero-installs. Installing packages works, but running the app gives 'Your application tried to access lodash, but it isn't declared'. You check .pnp.cjs and see the package is mapped, but a transitive dependency tries to require it without declaring it as a peer. Yarn PnP enforces strict dependency boundaries; packages can only access what they explicitly declare. You try yarn unplug lodash but realize that's for packages needing real filesystem paths \(like postinstall scripts\). Instead, you add a packageExtension in .yarnrc.yml to declare the missing peer dependency for the transitive package, making PnP aware of the implicit dependency. Alternatively, you set nodeLinker: node-modules to abandon PnP for traditional node\_modules.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T02:28:19.476587+00:00— report_created — created