• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

npm / arborist / #386

Build:
Build:
LAST BUILD BRANCH:
DEFAULT BRANCH: master
Ran 03 Nov 2020 07:22PM UTC
Jobs 1
Files 34
Run time 7s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
#386

push

isaacs
Fix 3 related peerDep ideal tree edge cases

1. we should _never_ place a dep in a target where the target
has a peerDep on that dependency, even if it would be allowed or
conflicts with a higher level.  However, we _should_ continue walking up
the tree in this case, so the solution is to detect this in the walk-up,
and continue to the next spot if there's a peer edge present.

2. It's possible for the virtual root to not contain a peer node, if the
edge is a peerOptional edge.  In that case, we may still need to detect
and add the node, if the current dep version present is outside the
dependency range.  (We do not install peerOptionals by default, but we
DO ensure that they're valid if present, and install when necessary to
avoid loading an invalid version, if possible.)

3. In light of 1 and 2 above, it's important to _always_ attempt to
dedupe peer deps, even if that means downgrading the version in use, or
we find ourselves in many more ERESOLVE cases than we need to be.
Solution here is to effectively always place peerDeps in preferDedupe
mode, regardless of the option that is passed in to Arborist.

2373 of 2373 branches covered (100.0%)

Branch coverage included in aggregate %.

3364 of 3364 relevant lines covered (100.0%)

466.6 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #386.1 03 Nov 2020 07:22PM UTC 0
100.0
Source Files on build #386
Detailed source file information is not available for this build.
  • Back to Repo
  • 26513058 on github
  • Prev Build on
  • Next Build on
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc