Make NodeResolver check realpath before resolving with source
entry
#7846
+126
−138
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
↪️ Pull Request
nodeLinker: pnpm
) save dependencies in their internal storage, and make symlinks to them innode_modules
directory.source
entry, becauseNodeResolver
thinks dependencies behind symlinks are actually links to workspaces in the same monorepo, which is a false assumption in this case.node_modules
, and if it does, ignoringsource
entry.source
of dependency instead ofmain
ormodule
even if it does not exist #7610package.json#source
field is used for npm packages with pnpm #5784💻 Examples
For example, in the case of pnpm with default settings:
When trying to import
compute-scroll-into-view
fromworkspace
,node_modules/compute-scroll-into-view/
is a symbolic link. So Parcel tries to readsource
field ofcompute-scroll-into-view
, which points to an non-existing file.🚨 Test instructions
I think the included test covers sufficient cases 🤔
✔️ PR Todo