From c97d907051096fcef0d2148958b4b484da9cccd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateusz=20Burzy=C5=84ski?= Date: Thu, 11 Feb 2021 17:11:19 +0100 Subject: [PATCH] Sanitize package versions that contains metadata --- src/getPackageResolution.ts | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/getPackageResolution.ts b/src/getPackageResolution.ts index 08a952e6..ff34b178 100644 --- a/src/getPackageResolution.ts +++ b/src/getPackageResolution.ts @@ -5,6 +5,9 @@ import { readFileSync, existsSync } from "fs-extra" import { parse as parseYarnLockFile } from "@yarnpkg/lockfile" import findWorkspaceRoot from "find-yarn-workspace-root" +const sanitizeVersion = (version: string): string => + version.replace(/\+.+$/, "") + export function getPackageResolution({ packageDetails, packageManager, @@ -31,10 +34,10 @@ export function getPackageResolution({ throw new Error("Can't parse lock file") } - const installedVersion = require(join( - resolve(appPath, packageDetails.path), - "package.json", - )).version as string + const installedVersion = sanitizeVersion( + require(join(resolve(appPath, packageDetails.path), "package.json")) + .version, + ) const entries = Object.entries(appLockFile.object).filter( ([k, v]) =>