From 78d900242f4e9f79ac04e44b3565c1d3075702ad Mon Sep 17 00:00:00 2001 From: Burak Yigit Kaya Date: Fri, 29 Sep 2017 14:08:21 +0100 Subject: [PATCH] fix(resolver): Only optimize patterns in flat mode **Summary** Fixes #4550. The optimization introduced in #4488 should only apply to flat installations since even if a single pattern can satisfy all resolved versions, it is not guaranteed that it is strict enough for resolving correctly for all patterns under all circumstances. **Test plan** Manual verification. --- src/package-resolver.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/package-resolver.js b/src/package-resolver.js index cc4d979fa6..8a769877da 100644 --- a/src/package-resolver.js +++ b/src/package-resolver.js @@ -545,9 +545,11 @@ export default class PackageResolver { this.resolveToResolution(req); } - for (const dep of deps) { - const name = normalizePattern(dep.pattern).name; - this.optimizeResolutions(name); + if (isFlat) { + for (const dep of deps) { + const name = normalizePattern(dep.pattern).name; + this.optimizeResolutions(name); + } } activity.end();