This repository has been archived by the owner on Jan 20, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 64
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
support resolvable partial intersecting peerSets
In cases where a peerSet _partially_ overlaps another, we were previously treating that as a conflict, because not everything in the peerSet was being replaced. So for example, ``` root -> (a) a -> PEER(w@1, x@1, y@1) b -> PEER(x@1.0, y@1.0, z@1.0) ``` First we install, and get `w@1.1.0`, `x@1.1.0` and `z@1.1.0`. Then, we try to install `b`, and need to install the `1.0.0` versions of `x` and `y`. We could replace `x` and `y`, but then `z` had no replacement, and was treated as an ERESOLVE mistakenly. Some work was required to make it still note when a not-replaced member of the peer set _is_ indicative of a conflict, because it depends on a version of a dep within the peer set that is not satisfied by the one being replaced. Fix: npm/cli#3152 PR-URL: #272 Credit: @isaacs Close: #272 Reviewed-by: @nlf
- Loading branch information
Showing
29 changed files
with
2,378 additions
and
79 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.