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.
Re: #1156 (comment).
Instead of taking at face value what pathResolution returns, we find package.json then see if the "browser"
conditionentry point is present and update pathResolution as a consequence. The spec indicates that there are two possibilities to cover:My tests use two modules that are already here by "chance", and will break if any of these modules gets updated (for example supports-color@9 does not use the browser field anymore), but we can fix that when it happens. (Alternatively, we could add these precise versions in devDependencies just for these tests?)
I checked what @rollup/plugin-node-resolve plugin does: it looks at the entry with the
conditionkey in resolvePackageTarget. The chain of calls: < resolvePackageImportsExports < resolvePackageImports < resolveImportSpecifiers < resolveImportSpecifiers