From 69a7b37c6bb16999df489a93bca3857c3375de09 Mon Sep 17 00:00:00 2001
From: Rhys Arkins <rhys@arkins.net>
Date: Sat, 10 Apr 2021 06:13:08 +0200
Subject: [PATCH] fix(yarn): use major range for v2 constraint (#9482)

---
 .../npm/extract/__snapshots__/locked-versions.spec.ts.snap    | 4 ++--
 lib/manager/npm/extract/locked-versions.ts                    | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/lib/manager/npm/extract/__snapshots__/locked-versions.spec.ts.snap b/lib/manager/npm/extract/__snapshots__/locked-versions.spec.ts.snap
index c9f8b48e2b..f1c51dbc74 100644
--- a/lib/manager/npm/extract/__snapshots__/locked-versions.spec.ts.snap
+++ b/lib/manager/npm/extract/__snapshots__/locked-versions.spec.ts.snap
@@ -126,7 +126,7 @@ exports[`manager/npm/extract/locked-versions .getLockedVersions() uses yarn.lock
 Array [
   Object {
     "constraints": Object {
-      "yarn": ">= 2.0.0",
+      "yarn": "^2.0.0",
     },
     "deps": Array [
       Object {
@@ -153,7 +153,7 @@ exports[`manager/npm/extract/locked-versions .getLockedVersions() uses yarn.lock
 Array [
   Object {
     "constraints": Object {
-      "yarn": ">= 2.2.0",
+      "yarn": "^2.2.0",
     },
     "deps": Array [
       Object {
diff --git a/lib/manager/npm/extract/locked-versions.ts b/lib/manager/npm/extract/locked-versions.ts
index 667a54746d..1982c9b979 100644
--- a/lib/manager/npm/extract/locked-versions.ts
+++ b/lib/manager/npm/extract/locked-versions.ts
@@ -24,9 +24,9 @@ export async function getLockedVersions(
       if (!isYarn1) {
         if (lockfileVersion >= 6) {
           // https://github.com/yarnpkg/berry/commit/f753790380cbda5b55d028ea84b199445129f9ba
-          packageFile.constraints.yarn = '>= 2.2.0';
+          packageFile.constraints.yarn = '^2.2.0';
         } else {
-          packageFile.constraints.yarn = '>= 2.0.0';
+          packageFile.constraints.yarn = '^2.0.0';
         }
       }
       for (const dep of packageFile.deps) {
-- 
GitLab