Report #48272
[bug\_fix] Error: Your application tried to access lodash, but it isn't declared in its dependencies
Add the accessed package \(lodash\) explicitly to the project's dependencies, or configure .yarnrc.yml with pnpMode: loose to allow accessing transitive dependencies without explicit declarations.
Journey Context:
Developer migrates a project from Yarn 1 to Yarn 2/3 \(Berry\) with Plug'n'Play \(PnP\) enabled. After running yarn install, the application crashes at runtime stating it tried to access a package \(e.g., lodash\) that isn't declared in its dependencies. This worked in Yarn 1 because node\_modules was flattened \(hoisted\). In PnP strict mode, packages can only require their explicit dependencies. The developer realizes the code imports a package that is only a transitive dependency. They have two paths: manually add all such phantom dependencies to package.json \(correct but tedious\), or set pnpMode: loose in .yarnrc.yml which emulates node\_modules hoisting behavior for compatibility during migration.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T11:30:05.932466+00:00— report_created — created