From 891789aba05d6f1beec13955050169bce66ab089 Mon Sep 17 00:00:00 2001 From: JamesPatrickGill Date: Wed, 8 Nov 2023 09:31:39 +0000 Subject: [PATCH] fix: correctly pick npm-lock-v2 pkg version parsing lockfile --- lib/dep-graph-builders/npm-lock-v2/index.ts | 16 +- .../npm-lock-v2/bundled-deps/expected.json | 48 +- .../npm-lock-v2/deeply-scoped/expected.json | 1728 ++++++++++------- .../different-versions/expected.json | 485 +++++ .../different-versions/package-lock.json | 407 ++++ .../different-versions/package.json | 8 + .../fixtures/npm-lock-v2/goof/expected.json | 101 +- .../dep-graph-builders/npm-lock-v2.test.ts | 1 + 8 files changed, 2036 insertions(+), 758 deletions(-) create mode 100644 test/jest/dep-graph-builders/fixtures/npm-lock-v2/different-versions/expected.json create mode 100644 test/jest/dep-graph-builders/fixtures/npm-lock-v2/different-versions/package-lock.json create mode 100644 test/jest/dep-graph-builders/fixtures/npm-lock-v2/different-versions/package.json diff --git a/lib/dep-graph-builders/npm-lock-v2/index.ts b/lib/dep-graph-builders/npm-lock-v2/index.ts index cc4e3a23..2c90e03c 100644 --- a/lib/dep-graph-builders/npm-lock-v2/index.ts +++ b/lib/dep-graph-builders/npm-lock-v2/index.ts @@ -331,16 +331,14 @@ export const getChildNodeKey = ( return filteredCandidates[0]; } - const ancestry_names = ancestry.map((el) => el.name).concat(name); - while (ancestry_names.length > 0) { - const possible_key = `node_modules/${ancestry_names.join( - '/node_modules/', - )}`; - - if (pkgs[possible_key]) { - return possible_key; + const ancestryNames = ancestry.map((el) => el.name).concat(name); + while (ancestryNames.length > 0) { + const possibleKey = `node_modules/${ancestryNames.join('/node_modules/')}`; + + if (filteredCandidates.includes(possibleKey)) { + return possibleKey; } - ancestry_names.shift(); + ancestryNames.shift(); } // Here we go through th eancestry backwards to find the nearest diff --git a/test/jest/dep-graph-builders/fixtures/npm-lock-v2/bundled-deps/expected.json b/test/jest/dep-graph-builders/fixtures/npm-lock-v2/bundled-deps/expected.json index dff75ed0..9953c1f3 100644 --- a/test/jest/dep-graph-builders/fixtures/npm-lock-v2/bundled-deps/expected.json +++ b/test/jest/dep-graph-builders/fixtures/npm-lock-v2/bundled-deps/expected.json @@ -102,10 +102,10 @@ } }, { - "id": "tslib@2.6.0", + "id": "tslib@1.14.1", "info": { "name": "tslib", - "version": "2.6.0" + "version": "1.14.1" } }, { @@ -150,13 +150,6 @@ "version": "0.3.3" } }, - { - "id": "tslib@1.14.1", - "info": { - "name": "tslib", - "version": "1.14.1" - } - }, { "id": "@types/node-forge@1.3.0", "info": { @@ -3867,6 +3860,13 @@ "version": "2.0.2" } }, + { + "id": "tslib@2.6.0", + "info": { + "name": "tslib", + "version": "2.6.0" + } + }, { "id": "capital-case@1.0.4", "info": { @@ -4319,7 +4319,7 @@ "nodeId": "@sentry/utils@7.17.4" }, { - "nodeId": "tslib@2.6.0" + "nodeId": "tslib@1.14.1" } ], "info": { @@ -4346,7 +4346,7 @@ "nodeId": "@sentry/types@7.17.4" }, { - "nodeId": "tslib@2.6.0" + "nodeId": "tslib@1.14.1" } ], "info": { @@ -4356,8 +4356,8 @@ } }, { - "nodeId": "tslib@2.6.0", - "pkgId": "tslib@2.6.0", + "nodeId": "tslib@1.14.1", + "pkgId": "tslib@1.14.1", "deps": [], "info": { "labels": { @@ -4440,16 +4440,6 @@ } } }, - { - "nodeId": "tslib@1.14.1", - "pkgId": "tslib@1.14.1", - "deps": [], - "info": { - "labels": { - "scope": "prod" - } - } - }, { "nodeId": "@types/node-forge@1.3.0", "pkgId": "@types/node-forge@1.3.0", @@ -9918,7 +9908,7 @@ "pkgId": "widest-line@4.0.1", "deps": [ { - "nodeId": "string-width@4.2.3" + "nodeId": "string-width@5.1.2" } ], "info": { @@ -12836,6 +12826,16 @@ } } }, + { + "nodeId": "tslib@2.6.0", + "pkgId": "tslib@2.6.0", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "capital-case@1.0.4", "pkgId": "capital-case@1.0.4", diff --git a/test/jest/dep-graph-builders/fixtures/npm-lock-v2/deeply-scoped/expected.json b/test/jest/dep-graph-builders/fixtures/npm-lock-v2/deeply-scoped/expected.json index 4e563a96..83e2bf70 100644 --- a/test/jest/dep-graph-builders/fixtures/npm-lock-v2/deeply-scoped/expected.json +++ b/test/jest/dep-graph-builders/fixtures/npm-lock-v2/deeply-scoped/expected.json @@ -355,10 +355,10 @@ } }, { - "id": "ms@2.1.3", + "id": "ms@2.1.2", "info": { "name": "ms", - "version": "2.1.3" + "version": "2.1.2" } }, { @@ -4547,6 +4547,13 @@ "version": "3.2.7" } }, + { + "id": "ms@2.1.3", + "info": { + "name": "ms", + "version": "2.1.3" + } + }, { "id": "deepmerge@4.3.1", "info": { @@ -6808,6 +6815,13 @@ "version": "1.0.2" } }, + { + "id": "lowercase-keys@1.0.1", + "info": { + "name": "lowercase-keys", + "version": "1.0.1" + } + }, { "id": "decompress-response@3.3.0", "info": { @@ -6822,13 +6836,6 @@ "version": "0.1.5" } }, - { - "id": "lowercase-keys@1.0.1", - "info": { - "name": "lowercase-keys", - "version": "1.0.1" - } - }, { "id": "p-cancelable@1.1.0", "info": { @@ -11456,6 +11463,20 @@ "version": "8.7.0" } }, + { + "id": "tr46@2.1.0", + "info": { + "name": "tr46", + "version": "2.1.0" + } + }, + { + "id": "webidl-conversions@6.1.0", + "info": { + "name": "webidl-conversions", + "version": "6.1.0" + } + }, { "id": "decimal.js@10.4.3", "info": { @@ -11666,13 +11687,6 @@ "version": "3.0.0" } }, - { - "id": "webidl-conversions@6.1.0", - "info": { - "name": "webidl-conversions", - "version": "6.1.0" - } - }, { "id": "ws@7.5.9", "info": { @@ -11827,6 +11841,27 @@ "version": "13.2.3" } }, + { + "id": "@nrwl/tao@13.2.3", + "info": { + "name": "@nrwl/tao", + "version": "13.2.3" + } + }, + { + "id": "nx@13.2.3", + "info": { + "name": "nx", + "version": "13.2.3" + } + }, + { + "id": "yargs-parser@20.0.0", + "info": { + "name": "yargs-parser", + "version": "20.0.0" + } + }, { "id": "@nrwl/linter@13.2.3", "info": { @@ -11834,6 +11869,62 @@ "version": "13.2.3" } }, + { + "id": "@nrwl/jest@13.2.3", + "info": { + "name": "@nrwl/jest", + "version": "13.2.3" + } + }, + { + "id": "@jest/reporters@27.2.2", + "info": { + "name": "@jest/reporters", + "version": "27.2.2" + } + }, + { + "id": "istanbul-lib-instrument@4.0.3", + "info": { + "name": "istanbul-lib-instrument", + "version": "4.0.3" + } + }, + { + "id": "@jest/test-result@27.2.2", + "info": { + "name": "@jest/test-result", + "version": "27.2.2" + } + }, + { + "id": "jest-config@27.2.2", + "info": { + "name": "jest-config", + "version": "27.2.2" + } + }, + { + "id": "is-ci@3.0.1", + "info": { + "name": "is-ci", + "version": "3.0.1" + } + }, + { + "id": "jest-resolve@27.2.2", + "info": { + "name": "jest-resolve", + "version": "27.2.2" + } + }, + { + "id": "jest-util@27.2.0", + "info": { + "name": "jest-util", + "version": "27.2.0" + } + }, { "id": "@nrwl/workspace@13.2.3", "info": { @@ -11841,6 +11932,48 @@ "version": "13.2.3" } }, + { + "id": "@nrwl/cli@13.2.3", + "info": { + "name": "@nrwl/cli", + "version": "13.2.3" + } + }, + { + "id": "@parcel/watcher@2.0.0-alpha.11", + "info": { + "name": "@parcel/watcher", + "version": "2.0.0-alpha.11" + } + }, + { + "id": "cosmiconfig@4.0.0", + "info": { + "name": "cosmiconfig", + "version": "4.0.0" + } + }, + { + "id": "is-directory@0.3.1", + "info": { + "name": "is-directory", + "version": "0.3.1" + } + }, + { + "id": "parse-json@4.0.0", + "info": { + "name": "parse-json", + "version": "4.0.0" + } + }, + { + "id": "json-parse-better-errors@1.0.2", + "info": { + "name": "json-parse-better-errors", + "version": "1.0.2" + } + }, { "id": "npm-run-all@4.1.5", "info": { @@ -11876,20 +12009,6 @@ "version": "4.0.0" } }, - { - "id": "parse-json@4.0.0", - "info": { - "name": "parse-json", - "version": "4.0.0" - } - }, - { - "id": "json-parse-better-errors@1.0.2", - "info": { - "name": "json-parse-better-errors", - "version": "1.0.2" - } - }, { "id": "pify@3.0.0", "info": { @@ -11960,6 +12079,13 @@ "version": "3.1.4" } }, + { + "id": "strip-ansi@6.0.0", + "info": { + "name": "strip-ansi", + "version": "6.0.0" + } + }, { "id": "fork-ts-checker-webpack-plugin@6.2.10", "info": { @@ -11988,69 +12114,6 @@ "version": "3.0.0" } }, - { - "id": "yargs-parser@20.0.0", - "info": { - "name": "yargs-parser", - "version": "20.0.0" - } - }, - { - "id": "@nrwl/jest@13.2.3", - "info": { - "name": "@nrwl/jest", - "version": "13.2.3" - } - }, - { - "id": "@jest/reporters@27.2.2", - "info": { - "name": "@jest/reporters", - "version": "27.2.2" - } - }, - { - "id": "istanbul-lib-instrument@4.0.3", - "info": { - "name": "istanbul-lib-instrument", - "version": "4.0.3" - } - }, - { - "id": "@jest/test-result@27.2.2", - "info": { - "name": "@jest/test-result", - "version": "27.2.2" - } - }, - { - "id": "jest-config@27.2.2", - "info": { - "name": "jest-config", - "version": "27.2.2" - } - }, - { - "id": "is-ci@3.0.1", - "info": { - "name": "is-ci", - "version": "3.0.1" - } - }, - { - "id": "jest-resolve@27.2.2", - "info": { - "name": "jest-resolve", - "version": "27.2.2" - } - }, - { - "id": "jest-util@27.2.0", - "info": { - "name": "jest-util", - "version": "27.2.0" - } - }, { "id": "@nrwl/react@13.2.3", "info": { @@ -12261,6 +12324,27 @@ "version": "3.4.1" } }, + { + "id": "schema-utils@4.0.0", + "info": { + "name": "schema-utils", + "version": "4.0.0" + } + }, + { + "id": "ajv-formats@2.1.1", + "info": { + "name": "ajv-formats", + "version": "2.1.1" + } + }, + { + "id": "ajv-keywords@5.1.0", + "info": { + "name": "ajv-keywords", + "version": "5.1.0" + } + }, { "id": "http-server@0.12.3", "info": { @@ -12429,6 +12513,13 @@ "version": "1.2.3" } }, + { + "id": "emojis-list@2.1.0", + "info": { + "name": "emojis-list", + "version": "2.1.0" + } + }, { "id": "mini-css-extract-plugin@2.4.7", "info": { @@ -13052,20 +13143,6 @@ "version": "0.13.1" } }, - { - "id": "schema-utils@4.0.0", - "info": { - "name": "schema-utils", - "version": "4.0.0" - } - }, - { - "id": "ajv-formats@2.1.1", - "info": { - "name": "ajv-formats", - "version": "2.1.1" - } - }, { "id": "selfsigned@2.1.1", "info": { @@ -13822,6 +13899,13 @@ "version": "1.0.0" } }, + { + "id": "is-extendable@1.0.1", + "info": { + "name": "is-extendable", + "version": "1.0.1" + } + }, { "id": "to-object-path@0.3.0", "info": { @@ -13886,24 +13970,31 @@ } }, { - "id": "is-descriptor@1.0.2", + "id": "is-descriptor@0.1.6", "info": { "name": "is-descriptor", - "version": "1.0.2" + "version": "0.1.6" } }, { - "id": "is-accessor-descriptor@1.0.0", + "id": "is-accessor-descriptor@0.1.6", "info": { "name": "is-accessor-descriptor", - "version": "1.0.0" + "version": "0.1.6" } }, { - "id": "is-data-descriptor@1.0.0", + "id": "is-data-descriptor@0.1.4", "info": { "name": "is-data-descriptor", - "version": "1.0.0" + "version": "0.1.4" + } + }, + { + "id": "kind-of@5.1.0", + "info": { + "name": "kind-of", + "version": "5.1.0" } }, { @@ -13934,6 +14025,27 @@ "version": "1.0.0" } }, + { + "id": "is-descriptor@1.0.2", + "info": { + "name": "is-descriptor", + "version": "1.0.2" + } + }, + { + "id": "is-accessor-descriptor@1.0.0", + "info": { + "name": "is-accessor-descriptor", + "version": "1.0.0" + } + }, + { + "id": "is-data-descriptor@1.0.0", + "info": { + "name": "is-data-descriptor", + "version": "1.0.0" + } + }, { "id": "mixin-deep@1.3.2", "info": { @@ -13948,13 +14060,6 @@ "version": "1.0.2" } }, - { - "id": "is-extendable@1.0.1", - "info": { - "name": "is-extendable", - "version": "1.0.1" - } - }, { "id": "pascalcase@0.1.1", "info": { @@ -14397,38 +14502,38 @@ } }, { - "id": "jest-snapshot@28.1.3", + "id": "jest-matcher-utils@28.1.3", "info": { - "name": "jest-snapshot", + "name": "jest-matcher-utils", "version": "28.1.3" } }, { - "id": "jest-each@28.1.3", + "id": "jest-diff@28.1.3", "info": { - "name": "jest-each", + "name": "jest-diff", "version": "28.1.3" } }, { - "id": "jest-matcher-utils@28.1.3", + "id": "diff-sequences@28.1.1", "info": { - "name": "jest-matcher-utils", - "version": "28.1.3" + "name": "diff-sequences", + "version": "28.1.1" } }, { - "id": "jest-diff@28.1.3", + "id": "jest-snapshot@28.1.3", "info": { - "name": "jest-diff", + "name": "jest-snapshot", "version": "28.1.3" } }, { - "id": "diff-sequences@28.1.1", + "id": "jest-each@28.1.3", "info": { - "name": "diff-sequences", - "version": "28.1.1" + "name": "jest-each", + "version": "28.1.3" } }, { @@ -16254,7 +16359,7 @@ "pkgId": "debug@4.3.4", "deps": [ { - "nodeId": "ms@2.1.3" + "nodeId": "ms@2.1.2" } ], "info": { @@ -16264,8 +16369,8 @@ } }, { - "nodeId": "ms@2.1.3", - "pkgId": "ms@2.1.3", + "nodeId": "ms@2.1.2", + "pkgId": "ms@2.1.2", "deps": [], "info": { "labels": { @@ -25867,6 +25972,16 @@ } } }, + { + "nodeId": "ms@2.1.3", + "pkgId": "ms@2.1.3", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "deepmerge@4.3.1", "pkgId": "deepmerge@4.3.1", @@ -31346,7 +31461,7 @@ "pkgId": "responselike@1.0.2", "deps": [ { - "nodeId": "lowercase-keys@2.0.0" + "nodeId": "lowercase-keys@1.0.1" } ], "info": { @@ -31355,6 +31470,16 @@ } } }, + { + "nodeId": "lowercase-keys@1.0.1", + "pkgId": "lowercase-keys@1.0.1", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "decompress-response@3.3.0", "pkgId": "decompress-response@3.3.0", @@ -31379,16 +31504,6 @@ } } }, - { - "nodeId": "lowercase-keys@1.0.1", - "pkgId": "lowercase-keys@1.0.1", - "deps": [], - "info": { - "labels": { - "scope": "prod" - } - } - }, { "nodeId": "p-cancelable@1.1.0", "pkgId": "p-cancelable@1.1.0", @@ -42983,10 +43098,10 @@ "nodeId": "lodash@4.17.21" }, { - "nodeId": "tr46@0.0.3" + "nodeId": "tr46@2.1.0" }, { - "nodeId": "webidl-conversions@3.0.1" + "nodeId": "webidl-conversions@6.1.0" } ], "info": { @@ -42995,6 +43110,30 @@ } } }, + { + "nodeId": "tr46@2.1.0", + "pkgId": "tr46@2.1.0", + "deps": [ + { + "nodeId": "punycode@2.3.0" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "webidl-conversions@6.1.0", + "pkgId": "webidl-conversions@6.1.0", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "decimal.js@10.4.3", "pkgId": "decimal.js@10.4.3", @@ -43406,16 +43545,6 @@ } } }, - { - "nodeId": "webidl-conversions@6.1.0", - "pkgId": "webidl-conversions@6.1.0", - "deps": [], - "info": { - "labels": { - "scope": "prod" - } - } - }, { "nodeId": "ws@7.5.9", "pkgId": "ws@7.5.9", @@ -43934,7 +44063,7 @@ "pkgId": "@nrwl/devkit@13.2.3", "deps": [ { - "nodeId": "@nrwl/tao@14.0.5" + "nodeId": "@nrwl/tao@13.2.3" }, { "nodeId": "ejs@3.1.9" @@ -43958,15 +44087,83 @@ } } }, + { + "nodeId": "@nrwl/tao@13.2.3", + "pkgId": "@nrwl/tao@13.2.3", + "deps": [ + { + "nodeId": "chalk@4.1.0" + }, + { + "nodeId": "enquirer@2.3.6" + }, + { + "nodeId": "fs-extra@9.1.0" + }, + { + "nodeId": "jsonc-parser@3.0.0" + }, + { + "nodeId": "nx@13.2.3" + }, + { + "nodeId": "rxjs@6.6.7" + }, + { + "nodeId": "rxjs-for-await@0.0.2" + }, + { + "nodeId": "semver@7.3.4" + }, + { + "nodeId": "tmp@0.2.1" + }, + { + "nodeId": "tslib@2.4.1" + }, + { + "nodeId": "yargs-parser@20.0.0" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "nx@13.2.3", + "pkgId": "nx@13.2.3", + "deps": [ + { + "nodeId": "@nrwl/cli@14.0.5" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "yargs-parser@20.0.0", + "pkgId": "yargs-parser@20.0.0", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "@nrwl/linter@13.2.3", "pkgId": "@nrwl/linter@13.2.3", "deps": [ { - "nodeId": "@nrwl/devkit@14.0.5" + "nodeId": "@nrwl/devkit@13.2.3" }, { - "nodeId": "@nrwl/jest@14.0.5" + "nodeId": "@nrwl/jest@13.2.3" }, { "nodeId": "eslint@7.32.0" @@ -43975,7 +44172,7 @@ "nodeId": "glob@7.1.4" }, { - "nodeId": "minimatch@3.1.2" + "nodeId": "minimatch@3.0.4" }, { "nodeId": "tmp@0.2.1" @@ -43990,24 +44187,355 @@ } } }, + { + "nodeId": "@nrwl/jest@13.2.3", + "pkgId": "@nrwl/jest@13.2.3", + "deps": [ + { + "nodeId": "@jest/reporters@27.2.2" + }, + { + "nodeId": "@jest/test-result@27.2.2" + }, + { + "nodeId": "@nrwl/devkit@13.2.3" + }, + { + "nodeId": "chalk@4.1.0" + }, + { + "nodeId": "identity-obj-proxy@3.0.0" + }, + { + "nodeId": "jest-config@27.2.2" + }, + { + "nodeId": "jest-resolve@27.2.2" + }, + { + "nodeId": "jest-util@27.2.0" + }, + { + "nodeId": "resolve.exports@1.1.0" + }, + { + "nodeId": "rxjs@6.6.7" + }, + { + "nodeId": "tslib@2.4.1" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "@jest/reporters@27.2.2", + "pkgId": "@jest/reporters@27.2.2", + "deps": [ + { + "nodeId": "@bcoe/v8-coverage@0.2.3" + }, + { + "nodeId": "@jest/console@27.5.1" + }, + { + "nodeId": "@jest/test-result@27.5.1" + }, + { + "nodeId": "@jest/transform@27.5.1" + }, + { + "nodeId": "@jest/types@27.5.1" + }, + { + "nodeId": "chalk@4.1.2" + }, + { + "nodeId": "collect-v8-coverage@1.0.1" + }, + { + "nodeId": "exit@0.1.2" + }, + { + "nodeId": "glob@7.2.3" + }, + { + "nodeId": "graceful-fs@4.2.11" + }, + { + "nodeId": "istanbul-lib-coverage@3.2.0" + }, + { + "nodeId": "istanbul-lib-instrument@4.0.3" + }, + { + "nodeId": "istanbul-lib-report@3.0.0" + }, + { + "nodeId": "istanbul-lib-source-maps@4.0.1" + }, + { + "nodeId": "istanbul-reports@3.1.5" + }, + { + "nodeId": "jest-haste-map@27.5.1" + }, + { + "nodeId": "jest-resolve@27.5.1" + }, + { + "nodeId": "jest-util@27.5.1" + }, + { + "nodeId": "jest-worker@27.5.1" + }, + { + "nodeId": "slash@3.0.0" + }, + { + "nodeId": "source-map@0.6.1" + }, + { + "nodeId": "string-length@4.0.2" + }, + { + "nodeId": "terminal-link@2.1.1" + }, + { + "nodeId": "v8-to-istanbul@8.1.1" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "istanbul-lib-instrument@4.0.3", + "pkgId": "istanbul-lib-instrument@4.0.3", + "deps": [ + { + "nodeId": "@babel/core@7.12.13" + }, + { + "nodeId": "@istanbuljs/schema@0.1.3" + }, + { + "nodeId": "istanbul-lib-coverage@3.2.0" + }, + { + "nodeId": "semver@6.3.0" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "@jest/test-result@27.2.2", + "pkgId": "@jest/test-result@27.2.2", + "deps": [ + { + "nodeId": "@jest/console@27.5.1" + }, + { + "nodeId": "@jest/types@27.5.1" + }, + { + "nodeId": "@types/istanbul-lib-coverage@2.0.4" + }, + { + "nodeId": "collect-v8-coverage@1.0.1" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "jest-config@27.2.2", + "pkgId": "jest-config@27.2.2", + "deps": [ + { + "nodeId": "@babel/core@7.12.13" + }, + { + "nodeId": "@jest/test-sequencer@27.5.1" + }, + { + "nodeId": "@jest/types@27.5.1" + }, + { + "nodeId": "babel-jest@27.5.1" + }, + { + "nodeId": "chalk@4.1.2" + }, + { + "nodeId": "deepmerge@4.3.1" + }, + { + "nodeId": "glob@7.2.3" + }, + { + "nodeId": "graceful-fs@4.2.11" + }, + { + "nodeId": "is-ci@3.0.1" + }, + { + "nodeId": "jest-circus@27.5.1" + }, + { + "nodeId": "jest-environment-jsdom@27.5.1" + }, + { + "nodeId": "jest-environment-node@27.5.1" + }, + { + "nodeId": "jest-get-type@27.5.1" + }, + { + "nodeId": "jest-jasmine2@27.5.1" + }, + { + "nodeId": "jest-regex-util@27.5.1" + }, + { + "nodeId": "jest-resolve@27.5.1" + }, + { + "nodeId": "jest-runner@27.5.1" + }, + { + "nodeId": "jest-util@27.5.1" + }, + { + "nodeId": "jest-validate@27.5.1" + }, + { + "nodeId": "micromatch@4.0.5" + }, + { + "nodeId": "pretty-format@27.5.1" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "is-ci@3.0.1", + "pkgId": "is-ci@3.0.1", + "deps": [ + { + "nodeId": "ci-info@3.8.0" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "jest-resolve@27.2.2", + "pkgId": "jest-resolve@27.2.2", + "deps": [ + { + "nodeId": "@jest/types@27.5.1" + }, + { + "nodeId": "chalk@4.1.2" + }, + { + "nodeId": "escalade@3.1.1" + }, + { + "nodeId": "graceful-fs@4.2.11" + }, + { + "nodeId": "jest-haste-map@27.5.1" + }, + { + "nodeId": "jest-pnp-resolver@1.2.3" + }, + { + "nodeId": "jest-util@27.5.1" + }, + { + "nodeId": "jest-validate@27.5.1" + }, + { + "nodeId": "resolve@1.22.1" + }, + { + "nodeId": "slash@3.0.0" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "jest-util@27.2.0", + "pkgId": "jest-util@27.2.0", + "deps": [ + { + "nodeId": "@jest/types@27.5.1" + }, + { + "nodeId": "@types/node@18.15.10" + }, + { + "nodeId": "chalk@4.1.2" + }, + { + "nodeId": "graceful-fs@4.2.11" + }, + { + "nodeId": "is-ci@3.0.1" + }, + { + "nodeId": "picomatch@2.3.1" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "@nrwl/workspace@13.2.3", "pkgId": "@nrwl/workspace@13.2.3", "deps": [ { - "nodeId": "@nrwl/cli@14.0.5" + "nodeId": "@nrwl/cli@13.2.3" }, { - "nodeId": "@nrwl/devkit@14.0.5" + "nodeId": "@nrwl/devkit@13.2.3" }, { - "nodeId": "@nrwl/jest@14.0.5" + "nodeId": "@nrwl/jest@13.2.3" }, { - "nodeId": "@nrwl/linter@14.0.5" + "nodeId": "@nrwl/linter@13.2.3" }, { - "nodeId": "@parcel/watcher@2.0.4" + "nodeId": "@parcel/watcher@2.0.0-alpha.11" }, { "nodeId": "chalk@4.1.0" @@ -44016,7 +44544,7 @@ "nodeId": "chokidar@3.5.3" }, { - "nodeId": "cosmiconfig@7.1.0" + "nodeId": "cosmiconfig@4.0.0" }, { "nodeId": "dotenv@10.0.0" @@ -44055,7 +44583,7 @@ "nodeId": "semver@7.3.4" }, { - "nodeId": "strip-ansi@6.0.1" + "nodeId": "strip-ansi@6.0.0" }, { "nodeId": "tmp@0.2.1" @@ -44067,7 +44595,76 @@ "nodeId": "yargs@15.4.1" }, { - "nodeId": "yargs-parser@21.0.1" + "nodeId": "yargs-parser@20.0.0" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "@nrwl/cli@13.2.3", + "pkgId": "@nrwl/cli@13.2.3", + "deps": [ + { + "nodeId": "@nrwl/tao@13.2.3" + }, + { + "nodeId": "chalk@4.1.0" + }, + { + "nodeId": "enquirer@2.3.6" + }, + { + "nodeId": "v8-compile-cache@2.3.0" + }, + { + "nodeId": "yargs@15.4.1" + }, + { + "nodeId": "yargs-parser@20.0.0" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "@parcel/watcher@2.0.0-alpha.11", + "pkgId": "@parcel/watcher@2.0.0-alpha.11", + "deps": [ + { + "nodeId": "node-addon-api@3.2.1" + }, + { + "nodeId": "node-gyp-build@4.6.0" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "cosmiconfig@4.0.0", + "pkgId": "cosmiconfig@4.0.0", + "deps": [ + { + "nodeId": "is-directory@0.3.1" + }, + { + "nodeId": "js-yaml@3.14.1" + }, + { + "nodeId": "parse-json@4.0.0" + }, + { + "nodeId": "require-from-string@2.0.2" } ], "info": { @@ -44076,6 +44673,43 @@ } } }, + { + "nodeId": "is-directory@0.3.1", + "pkgId": "is-directory@0.3.1", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "parse-json@4.0.0", + "pkgId": "parse-json@4.0.0", + "deps": [ + { + "nodeId": "error-ex@1.3.2" + }, + { + "nodeId": "json-parse-better-errors@1.0.2" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "json-parse-better-errors@1.0.2", + "pkgId": "json-parse-better-errors@1.0.2", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "npm-run-all@4.1.5", "pkgId": "npm-run-all@4.1.5", @@ -44177,33 +44811,6 @@ } } }, - { - "nodeId": "parse-json@4.0.0", - "pkgId": "parse-json@4.0.0", - "deps": [ - { - "nodeId": "error-ex@1.3.2" - }, - { - "nodeId": "json-parse-better-errors@1.0.2" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, - { - "nodeId": "json-parse-better-errors@1.0.2", - "pkgId": "json-parse-better-errors@1.0.2", - "deps": [], - "info": { - "labels": { - "scope": "prod" - } - } - }, { "nodeId": "pify@3.0.0", "pkgId": "pify@3.0.0", @@ -44352,6 +44959,20 @@ } } }, + { + "nodeId": "strip-ansi@6.0.0", + "pkgId": "strip-ansi@6.0.0", + "deps": [ + { + "nodeId": "ansi-regex@5.0.1" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "fork-ts-checker-webpack-plugin@6.2.10", "pkgId": "fork-ts-checker-webpack-plugin@6.2.10", @@ -44455,347 +45076,6 @@ } } }, - { - "nodeId": "yargs-parser@20.0.0", - "pkgId": "yargs-parser@20.0.0", - "deps": [], - "info": { - "labels": { - "scope": "prod" - } - } - }, - { - "nodeId": "@nrwl/jest@13.2.3", - "pkgId": "@nrwl/jest@13.2.3", - "deps": [ - { - "nodeId": "@jest/reporters@27.2.2" - }, - { - "nodeId": "@jest/test-result@27.2.2" - }, - { - "nodeId": "@nrwl/devkit@13.2.3" - }, - { - "nodeId": "chalk@4.1.0" - }, - { - "nodeId": "identity-obj-proxy@3.0.0" - }, - { - "nodeId": "jest-config@27.2.2" - }, - { - "nodeId": "jest-resolve@27.2.2" - }, - { - "nodeId": "jest-util@27.2.0" - }, - { - "nodeId": "resolve.exports@1.1.0" - }, - { - "nodeId": "rxjs@6.6.7" - }, - { - "nodeId": "tslib@2.4.1" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, - { - "nodeId": "@jest/reporters@27.2.2", - "pkgId": "@jest/reporters@27.2.2", - "deps": [ - { - "nodeId": "@bcoe/v8-coverage@0.2.3" - }, - { - "nodeId": "@jest/console@27.5.1" - }, - { - "nodeId": "@jest/test-result@27.5.1" - }, - { - "nodeId": "@jest/transform@27.5.1" - }, - { - "nodeId": "@jest/types@27.5.1" - }, - { - "nodeId": "chalk@4.1.2" - }, - { - "nodeId": "collect-v8-coverage@1.0.1" - }, - { - "nodeId": "exit@0.1.2" - }, - { - "nodeId": "glob@7.2.3" - }, - { - "nodeId": "graceful-fs@4.2.11" - }, - { - "nodeId": "istanbul-lib-coverage@3.2.0" - }, - { - "nodeId": "istanbul-lib-instrument@4.0.3" - }, - { - "nodeId": "istanbul-lib-report@3.0.0" - }, - { - "nodeId": "istanbul-lib-source-maps@4.0.1" - }, - { - "nodeId": "istanbul-reports@3.1.5" - }, - { - "nodeId": "jest-haste-map@27.5.1" - }, - { - "nodeId": "jest-resolve@27.5.1" - }, - { - "nodeId": "jest-util@27.5.1" - }, - { - "nodeId": "jest-worker@27.5.1" - }, - { - "nodeId": "slash@3.0.0" - }, - { - "nodeId": "source-map@0.6.1" - }, - { - "nodeId": "string-length@4.0.2" - }, - { - "nodeId": "terminal-link@2.1.1" - }, - { - "nodeId": "v8-to-istanbul@8.1.1" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, - { - "nodeId": "istanbul-lib-instrument@4.0.3", - "pkgId": "istanbul-lib-instrument@4.0.3", - "deps": [ - { - "nodeId": "@babel/core@7.12.13" - }, - { - "nodeId": "@istanbuljs/schema@0.1.3" - }, - { - "nodeId": "istanbul-lib-coverage@3.2.0" - }, - { - "nodeId": "semver@6.3.0" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, - { - "nodeId": "@jest/test-result@27.2.2", - "pkgId": "@jest/test-result@27.2.2", - "deps": [ - { - "nodeId": "@jest/console@27.5.1" - }, - { - "nodeId": "@jest/types@27.5.1" - }, - { - "nodeId": "@types/istanbul-lib-coverage@2.0.4" - }, - { - "nodeId": "collect-v8-coverage@1.0.1" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, - { - "nodeId": "jest-config@27.2.2", - "pkgId": "jest-config@27.2.2", - "deps": [ - { - "nodeId": "@babel/core@7.12.13" - }, - { - "nodeId": "@jest/test-sequencer@27.5.1" - }, - { - "nodeId": "@jest/types@27.5.1" - }, - { - "nodeId": "babel-jest@27.5.1" - }, - { - "nodeId": "chalk@4.1.2" - }, - { - "nodeId": "deepmerge@4.3.1" - }, - { - "nodeId": "glob@7.2.3" - }, - { - "nodeId": "graceful-fs@4.2.11" - }, - { - "nodeId": "is-ci@3.0.1" - }, - { - "nodeId": "jest-circus@27.5.1" - }, - { - "nodeId": "jest-environment-jsdom@27.5.1" - }, - { - "nodeId": "jest-environment-node@27.5.1" - }, - { - "nodeId": "jest-get-type@27.5.1" - }, - { - "nodeId": "jest-jasmine2@27.5.1" - }, - { - "nodeId": "jest-regex-util@27.5.1" - }, - { - "nodeId": "jest-resolve@27.5.1" - }, - { - "nodeId": "jest-runner@27.5.1" - }, - { - "nodeId": "jest-util@27.5.1" - }, - { - "nodeId": "jest-validate@27.5.1" - }, - { - "nodeId": "micromatch@4.0.5" - }, - { - "nodeId": "pretty-format@27.5.1" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, - { - "nodeId": "is-ci@3.0.1", - "pkgId": "is-ci@3.0.1", - "deps": [ - { - "nodeId": "ci-info@2.0.0" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, - { - "nodeId": "jest-resolve@27.2.2", - "pkgId": "jest-resolve@27.2.2", - "deps": [ - { - "nodeId": "@jest/types@27.5.1" - }, - { - "nodeId": "chalk@4.1.2" - }, - { - "nodeId": "escalade@3.1.1" - }, - { - "nodeId": "graceful-fs@4.2.11" - }, - { - "nodeId": "jest-haste-map@27.5.1" - }, - { - "nodeId": "jest-pnp-resolver@1.2.3" - }, - { - "nodeId": "jest-util@27.5.1" - }, - { - "nodeId": "jest-validate@27.5.1" - }, - { - "nodeId": "resolve@1.22.1" - }, - { - "nodeId": "slash@3.0.0" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, - { - "nodeId": "jest-util@27.2.0", - "pkgId": "jest-util@27.2.0", - "deps": [ - { - "nodeId": "@jest/types@27.5.1" - }, - { - "nodeId": "@types/node@18.15.10" - }, - { - "nodeId": "chalk@4.1.2" - }, - { - "nodeId": "graceful-fs@4.2.11" - }, - { - "nodeId": "is-ci@3.0.1" - }, - { - "nodeId": "picomatch@2.3.1" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, { "nodeId": "@nrwl/react@13.2.3", "pkgId": "@nrwl/react@13.2.3", @@ -45613,16 +45893,16 @@ "nodeId": "cssnano@5.1.15" }, { - "nodeId": "jest-worker@26.6.2" + "nodeId": "jest-worker@27.5.1" }, { "nodeId": "postcss@8.4.21" }, { - "nodeId": "schema-utils@3.1.1" + "nodeId": "schema-utils@4.0.0" }, { - "nodeId": "serialize-javascript@5.0.1" + "nodeId": "serialize-javascript@6.0.1" }, { "nodeId": "source-map@0.6.1" @@ -45634,6 +45914,57 @@ } } }, + { + "nodeId": "schema-utils@4.0.0", + "pkgId": "schema-utils@4.0.0", + "deps": [ + { + "nodeId": "@types/json-schema@7.0.11" + }, + { + "nodeId": "ajv@8.12.0" + }, + { + "nodeId": "ajv-formats@2.1.1" + }, + { + "nodeId": "ajv-keywords@5.1.0" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "ajv-formats@2.1.1", + "pkgId": "ajv-formats@2.1.1", + "deps": [ + { + "nodeId": "ajv@8.12.0" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "ajv-keywords@5.1.0", + "pkgId": "ajv-keywords@5.1.0", + "deps": [ + { + "nodeId": "fast-deep-equal@3.1.3" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "http-server@0.12.3", "pkgId": "http-server@0.12.3", @@ -46001,7 +46332,7 @@ "nodeId": "big.js@5.2.2" }, { - "nodeId": "emojis-list@3.0.0" + "nodeId": "emojis-list@2.1.0" }, { "nodeId": "json5@1.0.2" @@ -46013,12 +46344,22 @@ } } }, + { + "nodeId": "emojis-list@2.1.0", + "pkgId": "emojis-list@2.1.0", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "mini-css-extract-plugin@2.4.7", "pkgId": "mini-css-extract-plugin@2.4.7", "deps": [ { - "nodeId": "schema-utils@3.1.1" + "nodeId": "schema-utils@4.0.0" } ], "info": { @@ -47469,43 +47810,6 @@ } } }, - { - "nodeId": "schema-utils@4.0.0", - "pkgId": "schema-utils@4.0.0", - "deps": [ - { - "nodeId": "@types/json-schema@7.0.11" - }, - { - "nodeId": "ajv@6.12.6" - }, - { - "nodeId": "ajv-formats@2.1.1" - }, - { - "nodeId": "ajv-keywords@3.5.2" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, - { - "nodeId": "ajv-formats@2.1.1", - "pkgId": "ajv-formats@2.1.1", - "deps": [ - { - "nodeId": "ajv@8.12.0" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, { "nodeId": "selfsigned@2.1.1", "pkgId": "selfsigned@2.1.1", @@ -47858,7 +48162,7 @@ "nodeId": "range-parser@1.2.1" }, { - "nodeId": "schema-utils@3.1.1" + "nodeId": "schema-utils@4.0.0" } ], "info": { @@ -48533,7 +48837,7 @@ "nodeId": "domelementtype@2.3.0" }, { - "nodeId": "entities@4.4.0" + "nodeId": "entities@2.2.0" } ], "info": { @@ -49351,7 +49655,7 @@ "pkgId": "kind-of@4.0.0", "deps": [ { - "nodeId": "is-buffer@2.0.5" + "nodeId": "is-buffer@1.1.6" } ], "info": { @@ -49405,7 +49709,7 @@ "nodeId": "assign-symbols@1.0.0" }, { - "nodeId": "is-extendable@0.1.1" + "nodeId": "is-extendable@1.0.1" } ], "info": { @@ -49424,6 +49728,20 @@ } } }, + { + "nodeId": "is-extendable@1.0.1", + "pkgId": "is-extendable@1.0.1", + "deps": [ + { + "nodeId": "is-plain-object@2.0.4" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "to-object-path@0.3.0", "pkgId": "to-object-path@0.3.0", @@ -49560,7 +49878,7 @@ "pkgId": "define-property@0.2.5", "deps": [ { - "nodeId": "is-descriptor@1.0.2" + "nodeId": "is-descriptor@0.1.6" } ], "info": { @@ -49570,17 +49888,17 @@ } }, { - "nodeId": "is-descriptor@1.0.2", - "pkgId": "is-descriptor@1.0.2", + "nodeId": "is-descriptor@0.1.6", + "pkgId": "is-descriptor@0.1.6", "deps": [ { - "nodeId": "is-accessor-descriptor@1.0.0" + "nodeId": "is-accessor-descriptor@0.1.6" }, { - "nodeId": "is-data-descriptor@1.0.0" + "nodeId": "is-data-descriptor@0.1.4" }, { - "nodeId": "kind-of@6.0.3" + "nodeId": "kind-of@5.1.0" } ], "info": { @@ -49590,11 +49908,11 @@ } }, { - "nodeId": "is-accessor-descriptor@1.0.0", - "pkgId": "is-accessor-descriptor@1.0.0", + "nodeId": "is-accessor-descriptor@0.1.6", + "pkgId": "is-accessor-descriptor@0.1.6", "deps": [ { - "nodeId": "kind-of@6.0.3" + "nodeId": "kind-of@3.2.2" } ], "info": { @@ -49604,11 +49922,11 @@ } }, { - "nodeId": "is-data-descriptor@1.0.0", - "pkgId": "is-data-descriptor@1.0.0", + "nodeId": "is-data-descriptor@0.1.4", + "pkgId": "is-data-descriptor@0.1.4", "deps": [ { - "nodeId": "kind-of@6.0.3" + "nodeId": "kind-of@3.2.2" } ], "info": { @@ -49617,6 +49935,16 @@ } } }, + { + "nodeId": "kind-of@5.1.0", + "pkgId": "kind-of@5.1.0", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "static-extend@0.1.2", "pkgId": "static-extend@0.1.2", @@ -49679,14 +50007,17 @@ } }, { - "nodeId": "mixin-deep@1.3.2", - "pkgId": "mixin-deep@1.3.2", + "nodeId": "is-descriptor@1.0.2", + "pkgId": "is-descriptor@1.0.2", "deps": [ { - "nodeId": "for-in@1.0.2" + "nodeId": "is-accessor-descriptor@1.0.0" }, { - "nodeId": "is-extendable@1.0.1" + "nodeId": "is-data-descriptor@1.0.0" + }, + { + "nodeId": "kind-of@6.0.3" } ], "info": { @@ -49696,9 +50027,13 @@ } }, { - "nodeId": "for-in@1.0.2", - "pkgId": "for-in@1.0.2", - "deps": [], + "nodeId": "is-accessor-descriptor@1.0.0", + "pkgId": "is-accessor-descriptor@1.0.0", + "deps": [ + { + "nodeId": "kind-of@6.0.3" + } + ], "info": { "labels": { "scope": "prod" @@ -49706,11 +50041,28 @@ } }, { - "nodeId": "is-extendable@1.0.1", - "pkgId": "is-extendable@1.0.1", + "nodeId": "is-data-descriptor@1.0.0", + "pkgId": "is-data-descriptor@1.0.0", "deps": [ { - "nodeId": "is-plain-object@2.0.4" + "nodeId": "kind-of@6.0.3" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "mixin-deep@1.3.2", + "pkgId": "mixin-deep@1.3.2", + "deps": [ + { + "nodeId": "for-in@1.0.2" + }, + { + "nodeId": "is-extendable@1.0.1" } ], "info": { @@ -49719,6 +50071,16 @@ } } }, + { + "nodeId": "for-in@1.0.2", + "pkgId": "for-in@1.0.2", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "pascalcase@0.1.1", "pkgId": "pascalcase@0.1.1", @@ -50714,7 +51076,7 @@ "nodeId": "jest-regex-util@28.0.2" }, { - "nodeId": "jest-util@27.5.1" + "nodeId": "jest-util@28.1.3" }, { "nodeId": "jest-worker@28.1.3" @@ -50756,7 +51118,7 @@ "nodeId": "merge-stream@2.0.0" }, { - "nodeId": "supports-color@7.2.0" + "nodeId": "supports-color@8.1.1" } ], "info": { @@ -51137,7 +51499,7 @@ "nodeId": "jest-mock@28.1.3" }, { - "nodeId": "jest-util@27.5.1" + "nodeId": "jest-util@28.1.3" } ], "info": { @@ -51202,16 +51564,16 @@ "nodeId": "@jest/expect-utils@28.1.3" }, { - "nodeId": "jest-get-type@27.5.1" + "nodeId": "jest-get-type@28.0.2" }, { - "nodeId": "jest-matcher-utils@27.5.1" + "nodeId": "jest-matcher-utils@28.1.3" }, { - "nodeId": "jest-message-util@27.5.1" + "nodeId": "jest-message-util@28.1.3" }, { - "nodeId": "jest-util@27.5.1" + "nodeId": "jest-util@28.1.3" } ], "info": { @@ -51244,6 +51606,62 @@ } } }, + { + "nodeId": "jest-matcher-utils@28.1.3", + "pkgId": "jest-matcher-utils@28.1.3", + "deps": [ + { + "nodeId": "chalk@4.1.2" + }, + { + "nodeId": "jest-diff@28.1.3" + }, + { + "nodeId": "jest-get-type@28.0.2" + }, + { + "nodeId": "pretty-format@28.1.3" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "jest-diff@28.1.3", + "pkgId": "jest-diff@28.1.3", + "deps": [ + { + "nodeId": "chalk@4.1.2" + }, + { + "nodeId": "diff-sequences@28.1.1" + }, + { + "nodeId": "jest-get-type@28.0.2" + }, + { + "nodeId": "pretty-format@28.1.3" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "diff-sequences@28.1.1", + "pkgId": "diff-sequences@28.1.1", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "jest-snapshot@28.1.3", "pkgId": "jest-snapshot@28.1.3", @@ -51267,10 +51685,10 @@ "nodeId": "@jest/expect-utils@28.1.3" }, { - "nodeId": "@jest/transform@27.5.1" + "nodeId": "@jest/transform@28.1.3" }, { - "nodeId": "@jest/types@27.5.1" + "nodeId": "@jest/types@28.1.3" }, { "nodeId": "@types/babel__traverse@7.18.3" @@ -51285,34 +51703,34 @@ "nodeId": "chalk@4.1.2" }, { - "nodeId": "expect@27.5.1" + "nodeId": "expect@28.1.3" }, { "nodeId": "graceful-fs@4.2.11" }, { - "nodeId": "jest-diff@27.5.1" + "nodeId": "jest-diff@28.1.3" }, { - "nodeId": "jest-get-type@27.5.1" + "nodeId": "jest-get-type@28.0.2" }, { - "nodeId": "jest-haste-map@27.5.1" + "nodeId": "jest-haste-map@28.1.3" }, { - "nodeId": "jest-matcher-utils@27.5.1" + "nodeId": "jest-matcher-utils@28.1.3" }, { - "nodeId": "jest-message-util@27.5.1" + "nodeId": "jest-message-util@28.1.3" }, { - "nodeId": "jest-util@27.5.1" + "nodeId": "jest-util@28.1.3" }, { "nodeId": "natural-compare@1.4.0" }, { - "nodeId": "pretty-format@27.5.1" + "nodeId": "pretty-format@28.1.3" }, { "nodeId": "semver@7.3.8" @@ -51338,53 +51756,7 @@ "nodeId": "jest-get-type@28.0.2" }, { - "nodeId": "jest-util@27.5.1" - }, - { - "nodeId": "pretty-format@28.1.3" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, - { - "nodeId": "jest-matcher-utils@28.1.3", - "pkgId": "jest-matcher-utils@28.1.3", - "deps": [ - { - "nodeId": "chalk@4.1.2" - }, - { - "nodeId": "jest-diff@28.1.3" - }, - { - "nodeId": "jest-get-type@28.0.2" - }, - { - "nodeId": "pretty-format@28.1.3" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, - { - "nodeId": "jest-diff@28.1.3", - "pkgId": "jest-diff@28.1.3", - "deps": [ - { - "nodeId": "chalk@4.1.2" - }, - { - "nodeId": "diff-sequences@28.1.1" - }, - { - "nodeId": "jest-get-type@28.0.2" + "nodeId": "jest-util@28.1.3" }, { "nodeId": "pretty-format@28.1.3" @@ -51396,16 +51768,6 @@ } } }, - { - "nodeId": "diff-sequences@28.1.1", - "pkgId": "diff-sequences@28.1.1", - "deps": [], - "info": { - "labels": { - "scope": "prod" - } - } - }, { "nodeId": "jest-runtime@28.1.3", "pkgId": "jest-runtime@28.1.3", @@ -51423,7 +51785,7 @@ "nodeId": "@jest/source-map@28.1.2" }, { - "nodeId": "@jest/test-result@27.5.1" + "nodeId": "@jest/test-result@28.1.3" }, { "nodeId": "@jest/transform@28.1.3" @@ -51468,7 +51830,7 @@ "nodeId": "jest-snapshot@28.1.3" }, { - "nodeId": "jest-util@27.5.1" + "nodeId": "jest-util@28.1.3" }, { "nodeId": "slash@3.0.0" @@ -51540,7 +51902,7 @@ "nodeId": "jest-pnp-resolver@1.2.3" }, { - "nodeId": "jest-util@27.5.1" + "nodeId": "jest-util@28.1.3" }, { "nodeId": "jest-validate@28.1.3" diff --git a/test/jest/dep-graph-builders/fixtures/npm-lock-v2/different-versions/expected.json b/test/jest/dep-graph-builders/fixtures/npm-lock-v2/different-versions/expected.json new file mode 100644 index 00000000..ffe29eff --- /dev/null +++ b/test/jest/dep-graph-builders/fixtures/npm-lock-v2/different-versions/expected.json @@ -0,0 +1,485 @@ +{ + "schemaVersion": "1.3.0", + "pkgManager": { + "name": "npm" + }, + "pkgs": [ + { + "id": "test-repo@1.0.0", + "info": { + "name": "test-repo", + "version": "1.0.0" + } + }, + { + "id": "gauge@2.7.4", + "info": { + "name": "gauge", + "version": "2.7.4" + } + }, + { + "id": "aproba@1.2.0", + "info": { + "name": "aproba", + "version": "1.2.0" + } + }, + { + "id": "console-control-strings@1.1.0", + "info": { + "name": "console-control-strings", + "version": "1.1.0" + } + }, + { + "id": "has-unicode@2.0.1", + "info": { + "name": "has-unicode", + "version": "2.0.1" + } + }, + { + "id": "object-assign@4.1.1", + "info": { + "name": "object-assign", + "version": "4.1.1" + } + }, + { + "id": "signal-exit@3.0.7", + "info": { + "name": "signal-exit", + "version": "3.0.7" + } + }, + { + "id": "string-width@1.0.2", + "info": { + "name": "string-width", + "version": "1.0.2" + } + }, + { + "id": "code-point-at@1.1.0", + "info": { + "name": "code-point-at", + "version": "1.1.0" + } + }, + { + "id": "is-fullwidth-code-point@1.0.0", + "info": { + "name": "is-fullwidth-code-point", + "version": "1.0.0" + } + }, + { + "id": "number-is-nan@1.0.1", + "info": { + "name": "number-is-nan", + "version": "1.0.1" + } + }, + { + "id": "strip-ansi@3.0.1", + "info": { + "name": "strip-ansi", + "version": "3.0.1" + } + }, + { + "id": "ansi-regex@2.1.1", + "info": { + "name": "ansi-regex", + "version": "2.1.1" + } + }, + { + "id": "wide-align@1.1.5", + "info": { + "name": "wide-align", + "version": "1.1.5" + } + }, + { + "id": "wrap-ansi@6.2.0", + "info": { + "name": "wrap-ansi", + "version": "6.2.0" + } + }, + { + "id": "ansi-styles@4.3.0", + "info": { + "name": "ansi-styles", + "version": "4.3.0" + } + }, + { + "id": "color-convert@2.0.1", + "info": { + "name": "color-convert", + "version": "2.0.1" + } + }, + { + "id": "color-name@1.1.4", + "info": { + "name": "color-name", + "version": "1.1.4" + } + }, + { + "id": "string-width@4.2.3", + "info": { + "name": "string-width", + "version": "4.2.3" + } + }, + { + "id": "emoji-regex@8.0.0", + "info": { + "name": "emoji-regex", + "version": "8.0.0" + } + }, + { + "id": "is-fullwidth-code-point@3.0.0", + "info": { + "name": "is-fullwidth-code-point", + "version": "3.0.0" + } + }, + { + "id": "strip-ansi@6.0.1", + "info": { + "name": "strip-ansi", + "version": "6.0.1" + } + }, + { + "id": "ansi-regex@5.0.1", + "info": { + "name": "ansi-regex", + "version": "5.0.1" + } + } + ], + "graph": { + "rootNodeId": "root-node", + "nodes": [ + { + "nodeId": "root-node", + "pkgId": "test-repo@1.0.0", + "deps": [ + { + "nodeId": "gauge@2.7.4" + }, + { + "nodeId": "wrap-ansi@6.2.0" + } + ] + }, + { + "nodeId": "gauge@2.7.4", + "pkgId": "gauge@2.7.4", + "deps": [ + { + "nodeId": "aproba@1.2.0" + }, + { + "nodeId": "console-control-strings@1.1.0" + }, + { + "nodeId": "has-unicode@2.0.1" + }, + { + "nodeId": "object-assign@4.1.1" + }, + { + "nodeId": "signal-exit@3.0.7" + }, + { + "nodeId": "string-width@1.0.2" + }, + { + "nodeId": "strip-ansi@3.0.1" + }, + { + "nodeId": "wide-align@1.1.5" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "aproba@1.2.0", + "pkgId": "aproba@1.2.0", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "console-control-strings@1.1.0", + "pkgId": "console-control-strings@1.1.0", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "has-unicode@2.0.1", + "pkgId": "has-unicode@2.0.1", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "object-assign@4.1.1", + "pkgId": "object-assign@4.1.1", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "signal-exit@3.0.7", + "pkgId": "signal-exit@3.0.7", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "string-width@1.0.2", + "pkgId": "string-width@1.0.2", + "deps": [ + { + "nodeId": "code-point-at@1.1.0" + }, + { + "nodeId": "is-fullwidth-code-point@1.0.0" + }, + { + "nodeId": "strip-ansi@3.0.1" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "code-point-at@1.1.0", + "pkgId": "code-point-at@1.1.0", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "is-fullwidth-code-point@1.0.0", + "pkgId": "is-fullwidth-code-point@1.0.0", + "deps": [ + { + "nodeId": "number-is-nan@1.0.1" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "number-is-nan@1.0.1", + "pkgId": "number-is-nan@1.0.1", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "strip-ansi@3.0.1", + "pkgId": "strip-ansi@3.0.1", + "deps": [ + { + "nodeId": "ansi-regex@2.1.1" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "ansi-regex@2.1.1", + "pkgId": "ansi-regex@2.1.1", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "wide-align@1.1.5", + "pkgId": "wide-align@1.1.5", + "deps": [ + { + "nodeId": "string-width@1.0.2" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "wrap-ansi@6.2.0", + "pkgId": "wrap-ansi@6.2.0", + "deps": [ + { + "nodeId": "ansi-styles@4.3.0" + }, + { + "nodeId": "string-width@4.2.3" + }, + { + "nodeId": "strip-ansi@6.0.1" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "ansi-styles@4.3.0", + "pkgId": "ansi-styles@4.3.0", + "deps": [ + { + "nodeId": "color-convert@2.0.1" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "color-convert@2.0.1", + "pkgId": "color-convert@2.0.1", + "deps": [ + { + "nodeId": "color-name@1.1.4" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "color-name@1.1.4", + "pkgId": "color-name@1.1.4", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "string-width@4.2.3", + "pkgId": "string-width@4.2.3", + "deps": [ + { + "nodeId": "emoji-regex@8.0.0" + }, + { + "nodeId": "is-fullwidth-code-point@3.0.0" + }, + { + "nodeId": "strip-ansi@6.0.1" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "emoji-regex@8.0.0", + "pkgId": "emoji-regex@8.0.0", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "is-fullwidth-code-point@3.0.0", + "pkgId": "is-fullwidth-code-point@3.0.0", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "strip-ansi@6.0.1", + "pkgId": "strip-ansi@6.0.1", + "deps": [ + { + "nodeId": "ansi-regex@5.0.1" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "ansi-regex@5.0.1", + "pkgId": "ansi-regex@5.0.1", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + } + ] + } +} diff --git a/test/jest/dep-graph-builders/fixtures/npm-lock-v2/different-versions/package-lock.json b/test/jest/dep-graph-builders/fixtures/npm-lock-v2/different-versions/package-lock.json new file mode 100644 index 00000000..693fa036 --- /dev/null +++ b/test/jest/dep-graph-builders/fixtures/npm-lock-v2/different-versions/package-lock.json @@ -0,0 +1,407 @@ +{ + "name": "test-repo", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "test-repo", + "version": "1.0.0", + "dependencies": { + "gauge": "2.7.4", + "wrap-ansi": "6.2.0" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "node_modules/code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==", + "dependencies": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "node_modules/gauge/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gauge/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" + }, + "node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + } + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==" + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==", + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" + }, + "signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "requires": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + } + } +} diff --git a/test/jest/dep-graph-builders/fixtures/npm-lock-v2/different-versions/package.json b/test/jest/dep-graph-builders/fixtures/npm-lock-v2/different-versions/package.json new file mode 100644 index 00000000..9e499c2e --- /dev/null +++ b/test/jest/dep-graph-builders/fixtures/npm-lock-v2/different-versions/package.json @@ -0,0 +1,8 @@ +{ + "name": "test-repo", + "version": "1.0.0", + "dependencies": { + "gauge": "2.7.4", + "wrap-ansi": "6.2.0" + } +} diff --git a/test/jest/dep-graph-builders/fixtures/npm-lock-v2/goof/expected.json b/test/jest/dep-graph-builders/fixtures/npm-lock-v2/goof/expected.json index 0fa2edf4..8b822229 100644 --- a/test/jest/dep-graph-builders/fixtures/npm-lock-v2/goof/expected.json +++ b/test/jest/dep-graph-builders/fixtures/npm-lock-v2/goof/expected.json @@ -326,6 +326,13 @@ "version": "2.2.1" } }, + { + "id": "ee-first@1.1.0", + "info": { + "name": "ee-first", + "version": "1.1.0" + } + }, { "id": "fresh@0.2.4", "info": { @@ -1334,6 +1341,20 @@ "version": "3.6.1" } }, + { + "id": "argparse@1.0.10", + "info": { + "name": "argparse", + "version": "1.0.10" + } + }, + { + "id": "sprintf-js@1.0.3", + "info": { + "name": "sprintf-js", + "version": "1.0.3" + } + }, { "id": "esprima@2.7.3", "info": { @@ -1838,20 +1859,6 @@ "version": "3.14.1" } }, - { - "id": "argparse@1.0.10", - "info": { - "name": "argparse", - "version": "1.0.10" - } - }, - { - "id": "sprintf-js@1.0.3", - "info": { - "name": "sprintf-js", - "version": "1.0.3" - } - }, { "id": "esprima@4.0.1", "info": { @@ -3830,7 +3837,7 @@ "pkgId": "on-finished@2.2.1", "deps": [ { - "nodeId": "ee-first@1.0.5" + "nodeId": "ee-first@1.1.0" } ], "info": { @@ -3839,6 +3846,16 @@ } } }, + { + "nodeId": "ee-first@1.1.0", + "pkgId": "ee-first@1.1.0", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "fresh@0.2.4", "pkgId": "fresh@0.2.4", @@ -5852,7 +5869,7 @@ "pkgId": "js-yaml@3.6.1", "deps": [ { - "nodeId": "argparse@2.0.1" + "nodeId": "argparse@1.0.10" }, { "nodeId": "esprima@2.7.3" @@ -5864,6 +5881,30 @@ } } }, + { + "nodeId": "argparse@1.0.10", + "pkgId": "argparse@1.0.10", + "deps": [ + { + "nodeId": "sprintf-js@1.0.3" + } + ], + "info": { + "labels": { + "scope": "prod" + } + } + }, + { + "nodeId": "sprintf-js@1.0.3", + "pkgId": "sprintf-js@1.0.3", + "deps": [], + "info": { + "labels": { + "scope": "prod" + } + } + }, { "nodeId": "esprima@2.7.3", "pkgId": "esprima@2.7.3", @@ -6869,30 +6910,6 @@ } } }, - { - "nodeId": "argparse@1.0.10", - "pkgId": "argparse@1.0.10", - "deps": [ - { - "nodeId": "sprintf-js@1.0.3" - } - ], - "info": { - "labels": { - "scope": "prod" - } - } - }, - { - "nodeId": "sprintf-js@1.0.3", - "pkgId": "sprintf-js@1.0.3", - "deps": [], - "info": { - "labels": { - "scope": "prod" - } - } - }, { "nodeId": "esprima@4.0.1", "pkgId": "esprima@4.0.1", @@ -7729,10 +7746,10 @@ "nodeId": "inherits@2.0.1" }, { - "nodeId": "minimatch@3.1.2" + "nodeId": "minimatch@3.0.0" }, { - "nodeId": "once@1.4.0" + "nodeId": "once@1.3.3" }, { "nodeId": "path-is-absolute@1.0.0" diff --git a/test/jest/dep-graph-builders/npm-lock-v2.test.ts b/test/jest/dep-graph-builders/npm-lock-v2.test.ts index 5f8c7f7c..30bed379 100644 --- a/test/jest/dep-graph-builders/npm-lock-v2.test.ts +++ b/test/jest/dep-graph-builders/npm-lock-v2.test.ts @@ -12,6 +12,7 @@ describe('dep-graph-builder npm-lock-v2', () => { 'cyclic-dep', 'deeply-nested-packages', 'deeply-scoped', + 'different-versions', ])('[simple tests] project: %s ', (fixtureName) => { test('matches expected', async () => { const pkgJsonContent = readFileSync(