snyk-nodejs-lockfile-parser 1.43.1 → 1.45.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli-parsers/cli-parser-utils.js +3 -3
- package/dist/cli-parsers/cli-parser-utils.js.map +1 -1
- package/dist/cli-parsers/index.js +4 -4
- package/dist/cli-parsers/index.js.map +1 -1
- package/dist/cli-parsers/yarn-info-parser.js.map +1 -1
- package/dist/cli-parsers/yarn-list-parser.js +2 -2
- package/dist/cli-parsers/yarn-list-parser.js.map +1 -1
- package/dist/config.js +1 -1
- package/dist/config.js.map +1 -1
- package/dist/dep-graph-builders/index.d.ts +2 -1
- package/dist/dep-graph-builders/index.js +5 -1
- package/dist/dep-graph-builders/index.js.map +1 -1
- package/dist/dep-graph-builders/types.d.ts +18 -0
- package/dist/dep-graph-builders/util.d.ts +2 -6
- package/dist/dep-graph-builders/util.js +5 -28
- package/dist/dep-graph-builders/util.js.map +1 -1
- package/dist/dep-graph-builders/yarn-lock-v1/build-depgraph-simple-pruned.d.ts +3 -3
- package/dist/dep-graph-builders/yarn-lock-v1/build-depgraph-simple-pruned.js +4 -4
- package/dist/dep-graph-builders/yarn-lock-v1/build-depgraph-simple-pruned.js.map +1 -1
- package/dist/dep-graph-builders/yarn-lock-v1/build-depgraph-simple.d.ts +3 -3
- package/dist/dep-graph-builders/yarn-lock-v1/build-depgraph-simple.js +3 -3
- package/dist/dep-graph-builders/yarn-lock-v1/build-depgraph-simple.js.map +1 -1
- package/dist/dep-graph-builders/yarn-lock-v1/build-depgraph-workspace-package-pruned.d.ts +3 -3
- package/dist/dep-graph-builders/yarn-lock-v1/build-depgraph-workspace-package-pruned.js +5 -4
- package/dist/dep-graph-builders/yarn-lock-v1/build-depgraph-workspace-package-pruned.js.map +1 -1
- package/dist/dep-graph-builders/yarn-lock-v1/build-depgraph-workspace-package.d.ts +3 -3
- package/dist/dep-graph-builders/yarn-lock-v1/build-depgraph-workspace-package.js +4 -3
- package/dist/dep-graph-builders/yarn-lock-v1/build-depgraph-workspace-package.js.map +1 -1
- package/dist/dep-graph-builders/yarn-lock-v1/extract-yarnlock-v1-pkgs.d.ts +2 -2
- package/dist/dep-graph-builders/yarn-lock-v1/extract-yarnlock-v1-pkgs.js.map +1 -1
- package/dist/dep-graph-builders/yarn-lock-v1/simple.d.ts +1 -1
- package/dist/dep-graph-builders/yarn-lock-v1/simple.js +4 -4
- package/dist/dep-graph-builders/yarn-lock-v1/simple.js.map +1 -1
- package/dist/dep-graph-builders/yarn-lock-v1/util.d.ts +6 -0
- package/dist/dep-graph-builders/yarn-lock-v1/util.js +30 -0
- package/dist/dep-graph-builders/yarn-lock-v1/util.js.map +1 -0
- package/dist/dep-graph-builders/yarn-lock-v1/workspaces.d.ts +1 -1
- package/dist/dep-graph-builders/yarn-lock-v1/workspaces.js +4 -4
- package/dist/dep-graph-builders/yarn-lock-v1/workspaces.js.map +1 -1
- package/dist/dep-graph-builders/yarn-lock-v2/build-depgraph-simple.d.ts +3 -0
- package/dist/dep-graph-builders/yarn-lock-v2/build-depgraph-simple.js +40 -0
- package/dist/dep-graph-builders/yarn-lock-v2/build-depgraph-simple.js.map +1 -0
- package/dist/dep-graph-builders/yarn-lock-v2/extract-yarnlock-v2-pkgs.d.ts +2 -0
- package/dist/dep-graph-builders/yarn-lock-v2/extract-yarnlock-v2-pkgs.js +26 -0
- package/dist/dep-graph-builders/yarn-lock-v2/extract-yarnlock-v2-pkgs.js.map +1 -0
- package/dist/dep-graph-builders/yarn-lock-v2/index.d.ts +4 -0
- package/dist/dep-graph-builders/yarn-lock-v2/index.js +10 -0
- package/dist/dep-graph-builders/yarn-lock-v2/index.js.map +1 -0
- package/dist/dep-graph-builders/yarn-lock-v2/simple.d.ts +2 -0
- package/dist/dep-graph-builders/yarn-lock-v2/simple.js +19 -0
- package/dist/dep-graph-builders/yarn-lock-v2/simple.js.map +1 -0
- package/dist/dep-graph-builders/yarn-lock-v2/utils.d.ts +30 -0
- package/dist/dep-graph-builders/yarn-lock-v2/utils.js +138 -0
- package/dist/dep-graph-builders/yarn-lock-v2/utils.js.map +1 -0
- package/dist/index.d.ts +6 -4
- package/dist/index.js +11 -3
- package/dist/index.js.map +1 -1
- package/dist/parsers/index.js.map +1 -1
- package/dist/parsers/lock-parser-base.js +8 -11
- package/dist/parsers/lock-parser-base.js.map +1 -1
- package/dist/parsers/package-lock-parser.js +2 -1
- package/dist/parsers/package-lock-parser.js.map +1 -1
- package/dist/parsers/yarn-lock-parser.js.map +1 -1
- package/dist/parsers/yarn2-lock-parser.js +2 -2
- package/dist/parsers/yarn2-lock-parser.js.map +1 -1
- package/dist/utils.d.ts +10 -0
- package/dist/utils.js +56 -0
- package/dist/utils.js.map +1 -0
- package/package.json +12 -12
- package/dist/dep-graph-builders/yarn-lock-v1/types.d.ts +0 -16
- package/dist/dep-graph-builders/yarn-lock-v1/types.js +0 -3
- package/dist/dep-graph-builders/yarn-lock-v1/types.js.map +0 -1
|
@@ -21,7 +21,7 @@ exports.extractNameAndIdentifier = extractNameAndIdentifier;
|
|
|
21
21
|
// will result in debug@2.2.6 - This is required as yarn list does not have the resolved semver
|
|
22
22
|
// in dependencies.
|
|
23
23
|
const extractCorrectIdentifierBySemver = (possibleMatches, versionToMatch) => {
|
|
24
|
-
const { name: nameToMatch, identifier: identifierToMatch } = exports.extractNameAndIdentifier(versionToMatch);
|
|
24
|
+
const { name: nameToMatch, identifier: identifierToMatch } = (0, exports.extractNameAndIdentifier)(versionToMatch);
|
|
25
25
|
const hasQualifiers = isNaN(parseInt(identifierToMatch[0]));
|
|
26
26
|
if (!hasQualifiers) {
|
|
27
27
|
return versionToMatch;
|
|
@@ -29,10 +29,10 @@ const extractCorrectIdentifierBySemver = (possibleMatches, versionToMatch) => {
|
|
|
29
29
|
// Check for matching name, if only one found shortcircuit
|
|
30
30
|
const match = possibleMatches
|
|
31
31
|
.filter((name) => name.startsWith(nameToMatch))
|
|
32
|
-
.filter((name) => semver.satisfies(exports.extractNameAndIdentifier(name).identifier, identifierToMatch))
|
|
32
|
+
.filter((name) => semver.satisfies((0, exports.extractNameAndIdentifier)(name).identifier, identifierToMatch))
|
|
33
33
|
.map((name) => ({
|
|
34
34
|
name,
|
|
35
|
-
identifier: exports.extractNameAndIdentifier(name).identifier,
|
|
35
|
+
identifier: (0, exports.extractNameAndIdentifier)(name).identifier,
|
|
36
36
|
}))
|
|
37
37
|
.reduce((acc, item) => semver.gt(item.identifier, acc.identifier) ? item : acc);
|
|
38
38
|
return match.name;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-parser-utils.js","sourceRoot":"","sources":["../../lib/cli-parsers/cli-parser-utils.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AAE1B,MAAM,wBAAwB,GAAG,CACtC,SAAiB,EACqB,EAAE;IACxC,IAAI,IAAI,EAAE,UAAU,CAAC;IAErB,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QAC3B,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACxC,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACjC,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;KACzC;SAAM;QACL,IAAI,GAAG,SAAS,CAAC;QACjB,UAAU,GAAG,SAAS,CAAC;KACxB;IAED,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC;AAfW,QAAA,wBAAwB,4BAenC;AAEF,4FAA4F;AAC5F,sFAAsF;AACtF,+FAA+F;AAC/F,mBAAmB;AACZ,MAAM,gCAAgC,GAAG,CAC9C,eAAyB,EACzB,cAAsB,EACd,EAAE;IACV,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,iBAAiB,EAAE,GACxD,gCAAwB,
|
|
1
|
+
{"version":3,"file":"cli-parser-utils.js","sourceRoot":"","sources":["../../lib/cli-parsers/cli-parser-utils.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AAE1B,MAAM,wBAAwB,GAAG,CACtC,SAAiB,EACqB,EAAE;IACxC,IAAI,IAAI,EAAE,UAAU,CAAC;IAErB,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QAC3B,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACxC,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACjC,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;KACzC;SAAM;QACL,IAAI,GAAG,SAAS,CAAC;QACjB,UAAU,GAAG,SAAS,CAAC;KACxB;IAED,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC;AAfW,QAAA,wBAAwB,4BAenC;AAEF,4FAA4F;AAC5F,sFAAsF;AACtF,+FAA+F;AAC/F,mBAAmB;AACZ,MAAM,gCAAgC,GAAG,CAC9C,eAAyB,EACzB,cAAsB,EACd,EAAE;IACV,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,iBAAiB,EAAE,GACxD,IAAA,gCAAwB,EAAC,cAAc,CAAC,CAAC;IAE3C,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,IAAI,CAAC,aAAa,EAAE;QAClB,OAAO,cAAc,CAAC;KACvB;IACD,0DAA0D;IAC1D,MAAM,KAAK,GAAG,eAAe;SAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;SAC9C,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CACf,MAAM,CAAC,SAAS,CACd,IAAA,gCAAwB,EAAC,IAAI,CAAC,CAAC,UAAU,EACzC,iBAAiB,CAClB,CACF;SACA,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACd,IAAI;QACJ,UAAU,EAAE,IAAA,gCAAwB,EAAC,IAAI,CAAC,CAAC,UAAU;KACtD,CAAC,CAAC;SACF,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CACpB,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CACxD,CAAC;IAEJ,OAAO,KAAK,CAAC,IAAI,CAAC;AACpB,CAAC,CAAC;AA7BW,QAAA,gCAAgC,oCA6B3C"}
|
|
@@ -9,13 +9,13 @@ const yarn_info_parser_1 = require("./yarn-info-parser");
|
|
|
9
9
|
const yarn_list_parser_1 = require("./yarn-list-parser");
|
|
10
10
|
const buildDepGraphFromCliOutput = (rawCliOutput, lockfileContent, manifestFileContent) => {
|
|
11
11
|
const manifestDependencies = JSON.parse(manifestFileContent).dependencies || {};
|
|
12
|
-
const lockfileType = __1.getYarnLockfileType(lockfileContent);
|
|
12
|
+
const lockfileType = (0, __1.getYarnLockfileType)(lockfileContent);
|
|
13
13
|
const { name: rootName, version: rootVersion } = JSON.parse(manifestFileContent);
|
|
14
14
|
const pkgManagerVersion = lockfileType === parsers_1.LockfileType.yarn ? '1' : '2';
|
|
15
15
|
// Build depMap object from the cli output
|
|
16
16
|
const formattedCliOutput = pkgManagerVersion === '1'
|
|
17
|
-
? yarn_list_parser_1.parseYarnListOutput(rawCliOutput, manifestDependencies)
|
|
18
|
-
: yarn_info_parser_1.parseYarnInfoOutput(rawCliOutput);
|
|
17
|
+
? (0, yarn_list_parser_1.parseYarnListOutput)(rawCliOutput, manifestDependencies)
|
|
18
|
+
: (0, yarn_info_parser_1.parseYarnInfoOutput)(rawCliOutput);
|
|
19
19
|
const rootPkgInfo = rootName
|
|
20
20
|
? Object.assign({ name: rootName }, (rootVersion && { version: rootVersion })) : undefined;
|
|
21
21
|
const pkgManager = {
|
|
@@ -26,7 +26,7 @@ const buildDepGraphFromCliOutput = (rawCliOutput, lockfileContent, manifestFileC
|
|
|
26
26
|
const { topLevelDeps, dependencies: depMap } = formattedCliOutput;
|
|
27
27
|
// Add all nodes
|
|
28
28
|
[...depMap.keys()].forEach((name) => {
|
|
29
|
-
const { name: pkgName, identifier: pkgVersion } = cli_parser_utils_1.extractNameAndIdentifier(name);
|
|
29
|
+
const { name: pkgName, identifier: pkgVersion } = (0, cli_parser_utils_1.extractNameAndIdentifier)(name);
|
|
30
30
|
builder.addPkgNode({ name: pkgName, version: pkgVersion.split(':').pop() }, name);
|
|
31
31
|
});
|
|
32
32
|
// Deal with root special case first
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/cli-parsers/index.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,0BAAyC;AACzC,wCAA0C;AAE1C,yDAA8D;AAC9D,yDAAyD;AACzD,yDAAyD;AAElD,MAAM,0BAA0B,GAAG,CACxC,YAAoB,EACpB,eAAuB,EACvB,mBAA2B,EACjB,EAAE;IACZ,MAAM,oBAAoB,GACxB,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC;IAErD,MAAM,YAAY,GAAG,uBAAmB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/cli-parsers/index.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,0BAAyC;AACzC,wCAA0C;AAE1C,yDAA8D;AAC9D,yDAAyD;AACzD,yDAAyD;AAElD,MAAM,0BAA0B,GAAG,CACxC,YAAoB,EACpB,eAAuB,EACvB,mBAA2B,EACjB,EAAE;IACZ,MAAM,oBAAoB,GACxB,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC;IAErD,MAAM,YAAY,GAAG,IAAA,uBAAmB,EAAC,eAAe,CAAC,CAAC;IAE1D,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,GAC5C,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAElC,MAAM,iBAAiB,GACrB,YAAY,KAAK,sBAAY,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAEjD,0CAA0C;IAC1C,MAAM,kBAAkB,GACtB,iBAAiB,KAAK,GAAG;QACvB,CAAC,CAAC,IAAA,sCAAmB,EAAC,YAAY,EAAE,oBAAoB,CAAC;QACzD,CAAC,CAAC,IAAA,sCAAmB,EAAC,YAAY,CAAC,CAAC;IAExC,MAAM,WAAW,GAAuC,QAAQ;QAC9D,CAAC,iBAAG,IAAI,EAAE,QAAQ,IAAK,CAAC,WAAW,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,EAChE,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,UAAU,GAAG;QACjB,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,iBAAiB;KAC3B,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,2BAAe,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAE7D,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC;IAElE,gBAAgB;IAChB,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAClC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,GAC7C,IAAA,2CAAwB,EAAC,IAAI,CAAC,CAAC;QACjC,OAAO,CAAC,UAAU,CAChB,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAY,EAAE,EACjE,IAAI,CACL,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,oCAAoC;IACpC,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IACtC,YAAY,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;IAEnE,mBAAmB;IACnB,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE;QAC/C,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACnB,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC;AACzB,CAAC,CAAC;AAzDW,QAAA,0BAA0B,8BAyDrC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yarn-info-parser.js","sourceRoot":"","sources":["../../lib/cli-parsers/yarn-info-parser.ts"],"names":[],"mappings":";;;AAMO,MAAM,mBAAmB,GAAG,CACjC,iBAAyB,EACL,EAAE;IACtB,MAAM,iBAAiB,GAAmB,iBAAiB;SACxD,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAE/B,MAAM,mBAAmB,GAAwB,iBAAiB,CAAC,MAAM,CACvE,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;;QAC9B,MAAM,YAAY,GAChB,
|
|
1
|
+
{"version":3,"file":"yarn-info-parser.js","sourceRoot":"","sources":["../../lib/cli-parsers/yarn-info-parser.ts"],"names":[],"mappings":";;;AAMO,MAAM,mBAAmB,GAAG,CACjC,iBAAyB,EACL,EAAE;IACtB,MAAM,iBAAiB,GAAmB,iBAAiB;SACxD,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAE/B,MAAM,mBAAmB,GAAwB,iBAAiB,CAAC,MAAM,CACvE,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;;QAC9B,MAAM,YAAY,GAChB,CAAA,MAAA,QAAQ,CAAC,YAAY,0CAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAChC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC,CACxC,KAAI,EAAE,CAAC;QAEV,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IACzC,CAAC,EACD,IAAI,GAAG,EAAoB,CAC5B,CAAC;IAEF,MAAM,gBAAgB,GAAG,CAAC,GAAG,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CACnE,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAClB,CAAC;IACZ,MAAM,YAAY,GAChB,mBAAmB,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;IAElD,yCAAyC;IACzC,mBAAmB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAE7C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAC7D,CAAC,CAAC;AA9BW,QAAA,mBAAmB,uBA8B9B"}
|
|
@@ -7,7 +7,7 @@ const parseYarnListOutput = (rawYarnListOutput, manifestDependencies) => {
|
|
|
7
7
|
// Reference to all (resolved) dep names to help cleanup in next step
|
|
8
8
|
const names = formattedYarnList.map((tree) => tree.name);
|
|
9
9
|
const formattedListOutput = formattedYarnList.reduce((result, tree) => {
|
|
10
|
-
const dependencies = tree.children.map((child) => cli_parser_utils_1.extractCorrectIdentifierBySemver(names, child.name));
|
|
10
|
+
const dependencies = tree.children.map((child) => (0, cli_parser_utils_1.extractCorrectIdentifierBySemver)(names, child.name));
|
|
11
11
|
return result.set(tree.name, dependencies);
|
|
12
12
|
}, new Map());
|
|
13
13
|
const topLevelDeps = getTopLevelDependencies(formattedListOutput, manifestDependencies);
|
|
@@ -18,6 +18,6 @@ const getTopLevelDependencies = (formattedListOutput, topLevelDeps) => {
|
|
|
18
18
|
// This logic is to construct an item for the rootPkg because
|
|
19
19
|
// we are dealing with a flat map so far so can't tell
|
|
20
20
|
const names = [...formattedListOutput.keys()];
|
|
21
|
-
return Object.entries(topLevelDeps).map(([name, version]) => cli_parser_utils_1.extractCorrectIdentifierBySemver(names, `${name}@${version}`));
|
|
21
|
+
return Object.entries(topLevelDeps).map(([name, version]) => (0, cli_parser_utils_1.extractCorrectIdentifierBySemver)(names, `${name}@${version}`));
|
|
22
22
|
};
|
|
23
23
|
//# sourceMappingURL=yarn-list-parser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yarn-list-parser.js","sourceRoot":"","sources":["../../lib/cli-parsers/yarn-list-parser.ts"],"names":[],"mappings":";;;AAKA,yDAAsE;AAE/D,MAAM,mBAAmB,GAAG,CACjC,iBAAyB,EACzB,oBAA4C,EACxB,EAAE;IACtB,MAAM,iBAAiB,GACrB,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;IAE3C,qEAAqE;IACrE,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEzD,MAAM,mBAAmB,GAAwB,iBAAiB,CAAC,MAAM,CACvE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QACf,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAC/C,mDAAgC,
|
|
1
|
+
{"version":3,"file":"yarn-list-parser.js","sourceRoot":"","sources":["../../lib/cli-parsers/yarn-list-parser.ts"],"names":[],"mappings":";;;AAKA,yDAAsE;AAE/D,MAAM,mBAAmB,GAAG,CACjC,iBAAyB,EACzB,oBAA4C,EACxB,EAAE;IACtB,MAAM,iBAAiB,GACrB,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;IAE3C,qEAAqE;IACrE,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEzD,MAAM,mBAAmB,GAAwB,iBAAiB,CAAC,MAAM,CACvE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QACf,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAC/C,IAAA,mDAAgC,EAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CACpD,CAAC;QAEF,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAC7C,CAAC,EACD,IAAI,GAAG,EAAoB,CAC5B,CAAC;IAEF,MAAM,YAAY,GAAG,uBAAuB,CAC1C,mBAAmB,EACnB,oBAAoB,CACrB,CAAC;IAEF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAC7D,CAAC,CAAC;AA3BW,QAAA,mBAAmB,uBA2B9B;AAEF,MAAM,uBAAuB,GAAG,CAC9B,mBAAwC,EACxC,YAAoC,EACpC,EAAE;IACF,6DAA6D;IAC7D,sDAAsD;IACtD,MAAM,KAAK,GAAG,CAAC,GAAG,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9C,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CAC1D,IAAA,mDAAgC,EAAC,KAAK,EAAE,GAAG,IAAI,IAAI,OAAO,EAAE,CAAC,CAC9D,CAAC;AACJ,CAAC,CAAC"}
|
package/dist/config.js
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.config = void 0;
|
|
4
4
|
const snyk_config_1 = require("snyk-config");
|
|
5
|
-
exports.config = snyk_config_1.loadConfig(__dirname + '../..');
|
|
5
|
+
exports.config = (0, snyk_config_1.loadConfig)(__dirname + '../..');
|
|
6
6
|
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../lib/config.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AAC5B,QAAA,MAAM,GAAQ,wBAAU,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../lib/config.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AAC5B,QAAA,MAAM,GAAQ,IAAA,wBAAU,EAAC,SAAS,GAAG,OAAO,CAAC,CAAC"}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import { parseYarnLockV1Project, parseYarnLockV1WorkspaceProject, buildDepGraphYarnLockV1SimpleCyclesPruned, buildDepGraphYarnLockV1Simple, buildDepGraphYarnLockV1WorkspaceCyclesPruned, buildDepGraphYarnLockV1Workspace, extractPkgsFromYarnLockV1 } from './yarn-lock-v1';
|
|
2
|
-
|
|
2
|
+
import { buildDepGraphYarnLockV2Simple, parseYarnLockV2Project, extractPkgsFromYarnLockV2 } from './yarn-lock-v2';
|
|
3
|
+
export { parseYarnLockV1Project, buildDepGraphYarnLockV1Workspace, buildDepGraphYarnLockV1SimpleCyclesPruned, buildDepGraphYarnLockV1Simple, buildDepGraphYarnLockV1WorkspaceCyclesPruned, parseYarnLockV1WorkspaceProject, extractPkgsFromYarnLockV1, buildDepGraphYarnLockV2Simple, parseYarnLockV2Project, extractPkgsFromYarnLockV2, };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.extractPkgsFromYarnLockV1 = exports.parseYarnLockV1WorkspaceProject = exports.buildDepGraphYarnLockV1WorkspaceCyclesPruned = exports.buildDepGraphYarnLockV1Simple = exports.buildDepGraphYarnLockV1SimpleCyclesPruned = exports.buildDepGraphYarnLockV1Workspace = exports.parseYarnLockV1Project = void 0;
|
|
3
|
+
exports.extractPkgsFromYarnLockV2 = exports.parseYarnLockV2Project = exports.buildDepGraphYarnLockV2Simple = exports.extractPkgsFromYarnLockV1 = exports.parseYarnLockV1WorkspaceProject = exports.buildDepGraphYarnLockV1WorkspaceCyclesPruned = exports.buildDepGraphYarnLockV1Simple = exports.buildDepGraphYarnLockV1SimpleCyclesPruned = exports.buildDepGraphYarnLockV1Workspace = exports.parseYarnLockV1Project = void 0;
|
|
4
4
|
const yarn_lock_v1_1 = require("./yarn-lock-v1");
|
|
5
5
|
Object.defineProperty(exports, "parseYarnLockV1Project", { enumerable: true, get: function () { return yarn_lock_v1_1.parseYarnLockV1Project; } });
|
|
6
6
|
Object.defineProperty(exports, "parseYarnLockV1WorkspaceProject", { enumerable: true, get: function () { return yarn_lock_v1_1.parseYarnLockV1WorkspaceProject; } });
|
|
@@ -9,4 +9,8 @@ Object.defineProperty(exports, "buildDepGraphYarnLockV1Simple", { enumerable: tr
|
|
|
9
9
|
Object.defineProperty(exports, "buildDepGraphYarnLockV1WorkspaceCyclesPruned", { enumerable: true, get: function () { return yarn_lock_v1_1.buildDepGraphYarnLockV1WorkspaceCyclesPruned; } });
|
|
10
10
|
Object.defineProperty(exports, "buildDepGraphYarnLockV1Workspace", { enumerable: true, get: function () { return yarn_lock_v1_1.buildDepGraphYarnLockV1Workspace; } });
|
|
11
11
|
Object.defineProperty(exports, "extractPkgsFromYarnLockV1", { enumerable: true, get: function () { return yarn_lock_v1_1.extractPkgsFromYarnLockV1; } });
|
|
12
|
+
const yarn_lock_v2_1 = require("./yarn-lock-v2");
|
|
13
|
+
Object.defineProperty(exports, "buildDepGraphYarnLockV2Simple", { enumerable: true, get: function () { return yarn_lock_v2_1.buildDepGraphYarnLockV2Simple; } });
|
|
14
|
+
Object.defineProperty(exports, "parseYarnLockV2Project", { enumerable: true, get: function () { return yarn_lock_v2_1.parseYarnLockV2Project; } });
|
|
15
|
+
Object.defineProperty(exports, "extractPkgsFromYarnLockV2", { enumerable: true, get: function () { return yarn_lock_v2_1.extractPkgsFromYarnLockV2; } });
|
|
12
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/dep-graph-builders/index.ts"],"names":[],"mappings":";;;AAAA,iDAQwB;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/dep-graph-builders/index.ts"],"names":[],"mappings":";;;AAAA,iDAQwB;AAQtB,uGAfA,qCAAsB,OAeA;AAKtB,gHAnBA,8CAA+B,OAmBA;AAH/B,0HAfA,wDAAyC,OAeA;AACzC,8GAfA,4CAA6B,OAeA;AAC7B,6HAfA,2DAA4C,OAeA;AAH5C,iHAXA,+CAAgC,OAWA;AAKhC,0GAfA,wCAAyB,OAeA;AAb3B,iDAIwB;AAUtB,8GAbA,4CAA6B,OAaA;AAC7B,uGAbA,qCAAsB,OAaA;AACtB,0GAbA,wCAAyB,OAaA"}
|
|
@@ -3,6 +3,7 @@ export declare type PackageJsonBase = {
|
|
|
3
3
|
version: string;
|
|
4
4
|
dependencies?: Record<string, string>;
|
|
5
5
|
devDependencies?: Record<string, string>;
|
|
6
|
+
resolutions?: Record<string, string>;
|
|
6
7
|
};
|
|
7
8
|
export declare type NpmLockfileV2 = {
|
|
8
9
|
name: string;
|
|
@@ -26,3 +27,20 @@ export declare type NpmLockfileV2Package = {
|
|
|
26
27
|
version: string;
|
|
27
28
|
dependencies?: Record<string, string>;
|
|
28
29
|
};
|
|
30
|
+
export declare type PkgIdentifier = string;
|
|
31
|
+
export declare type NormalisedPkgs = Record<PkgIdentifier, {
|
|
32
|
+
version: string;
|
|
33
|
+
dependencies: Record<string, string>;
|
|
34
|
+
optionalDependencies: Record<string, string>;
|
|
35
|
+
}>;
|
|
36
|
+
export declare type DepGraphBuildOptions = {
|
|
37
|
+
includeDevDeps: boolean;
|
|
38
|
+
includeOptionalDeps: boolean;
|
|
39
|
+
strictOutOfSync: boolean;
|
|
40
|
+
};
|
|
41
|
+
export declare type LockFileParseOptions = {
|
|
42
|
+
includeOptionalDeps: boolean;
|
|
43
|
+
};
|
|
44
|
+
export declare type ProjectParseOptions = DepGraphBuildOptions & LockFileParseOptions & {
|
|
45
|
+
pruneCycles: boolean;
|
|
46
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { PackageJsonBase } from './types';
|
|
2
2
|
import { DepGraphBuilder } from '@snyk/dep-graph';
|
|
3
|
-
import {
|
|
3
|
+
import { NormalisedPkgs } from './types';
|
|
4
4
|
export declare type Dependencies = Record<string, {
|
|
5
5
|
version: string;
|
|
6
6
|
isDev: boolean;
|
|
@@ -33,8 +33,4 @@ export declare function parsePkgJson(pkgJsonContent: string): PackageJsonBase;
|
|
|
33
33
|
export declare const getChildNode: (name: string, depInfo: {
|
|
34
34
|
version: string;
|
|
35
35
|
isDev: boolean;
|
|
36
|
-
}, pkgs:
|
|
37
|
-
export declare const getChildNodeWorkspace: (name: string, depInfo: {
|
|
38
|
-
version: string;
|
|
39
|
-
isDev: boolean;
|
|
40
|
-
}, workspacePkgNameToVersion: Record<string, string>, pkgs: YarnLockPackages, strictOutOfSync: boolean, includeOptionalDeps: boolean) => PkgNode;
|
|
36
|
+
}, pkgs: NormalisedPkgs, strictOutOfSync: boolean, includeOptionalDeps: boolean) => PkgNode;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.getChildNode = exports.parsePkgJson = exports.getGraphDependencies = exports.getTopLevelDeps = exports.addPkgNodeToGraph = void 0;
|
|
4
4
|
const errors_1 = require("../errors");
|
|
5
5
|
const errors_2 = require("../errors");
|
|
6
6
|
const parsers_1 = require("../parsers");
|
|
@@ -15,9 +15,9 @@ exports.addPkgNodeToGraph = addPkgNodeToGraph;
|
|
|
15
15
|
* This includes both prod dependencies and dev dependencies supposing includeDevDeps is supported.
|
|
16
16
|
*/
|
|
17
17
|
const getTopLevelDeps = (pkgJson, options) => {
|
|
18
|
-
const prodDeps = exports.getGraphDependencies(pkgJson.dependencies || {}, false);
|
|
18
|
+
const prodDeps = (0, exports.getGraphDependencies)(pkgJson.dependencies || {}, false);
|
|
19
19
|
const devDeps = options.includeDevDeps
|
|
20
|
-
? exports.getGraphDependencies(pkgJson.devDependencies || {}, true)
|
|
20
|
+
? (0, exports.getGraphDependencies)(pkgJson.devDependencies || {}, true)
|
|
21
21
|
: {};
|
|
22
22
|
return Object.assign(Object.assign({}, prodDeps), devDeps);
|
|
23
23
|
};
|
|
@@ -66,9 +66,9 @@ const getChildNode = (name, depInfo, pkgs, strictOutOfSync, includeOptionalDeps)
|
|
|
66
66
|
}
|
|
67
67
|
else {
|
|
68
68
|
const depData = pkgs[childNodeKey];
|
|
69
|
-
const dependencies = exports.getGraphDependencies(depData.dependencies || {}, depInfo.isDev);
|
|
69
|
+
const dependencies = (0, exports.getGraphDependencies)(depData.dependencies || {}, depInfo.isDev);
|
|
70
70
|
const optionalDependencies = includeOptionalDeps
|
|
71
|
-
? exports.getGraphDependencies(depData.optionalDependencies || {}, depInfo.isDev)
|
|
71
|
+
? (0, exports.getGraphDependencies)(depData.optionalDependencies || {}, depInfo.isDev)
|
|
72
72
|
: {};
|
|
73
73
|
childNode = {
|
|
74
74
|
id: `${name}@${depData.version}`,
|
|
@@ -81,27 +81,4 @@ const getChildNode = (name, depInfo, pkgs, strictOutOfSync, includeOptionalDeps)
|
|
|
81
81
|
return childNode;
|
|
82
82
|
};
|
|
83
83
|
exports.getChildNode = getChildNode;
|
|
84
|
-
const getChildNodeWorkspace = (name, depInfo, workspacePkgNameToVersion, pkgs, strictOutOfSync, includeOptionalDeps) => {
|
|
85
|
-
let childNode;
|
|
86
|
-
if (workspacePkgNameToVersion[name]) {
|
|
87
|
-
const version = workspacePkgNameToVersion[name];
|
|
88
|
-
// This is just to mimic old behavior where when StrictOutOfSync is turned on,
|
|
89
|
-
// any cross referencing between workspace packages will lead to a throw
|
|
90
|
-
if (strictOutOfSync) {
|
|
91
|
-
throw new errors_2.OutOfSyncError(`${name}@${version}`, parsers_1.LockfileType.yarn);
|
|
92
|
-
}
|
|
93
|
-
childNode = {
|
|
94
|
-
id: `${name}@${version}`,
|
|
95
|
-
name: name,
|
|
96
|
-
version: version,
|
|
97
|
-
dependencies: {},
|
|
98
|
-
isDev: depInfo.isDev,
|
|
99
|
-
};
|
|
100
|
-
}
|
|
101
|
-
else {
|
|
102
|
-
childNode = exports.getChildNode(name, depInfo, pkgs, strictOutOfSync, includeOptionalDeps);
|
|
103
|
-
}
|
|
104
|
-
return childNode;
|
|
105
|
-
};
|
|
106
|
-
exports.getChildNodeWorkspace = getChildNodeWorkspace;
|
|
107
84
|
//# sourceMappingURL=util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../lib/dep-graph-builders/util.ts"],"names":[],"mappings":";;;AAEA,sCAAkD;AAElD,sCAA2C;AAC3C,wCAA0C;AAanC,MAAM,iBAAiB,GAAG,CAC/B,eAAgC,EAChC,IAAa,EACb,OAGC,EACgB,EAAE;IACnB,OAAO,eAAe,CAAC,UAAU,CAC/B,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAC1C,IAAI,CAAC,EAAE,EACP;QACE,MAAM,8CACJ,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,IAC/B,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAC1C,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GAC9C,CAAC,IAAI,CAAC,oBAAoB,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC,CACnE;KACF,CACF,CAAC;AACJ,CAAC,CAAC;AApBW,QAAA,iBAAiB,qBAoB5B;AAEF;;;GAGG;AACI,MAAM,eAAe,GAAG,CAC7B,OAAwB,EACxB,OAAoC,EACtB,EAAE;IAChB,MAAM,QAAQ,GAAG,4BAAoB,
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../lib/dep-graph-builders/util.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { PackageJsonBase } from '../types';
|
|
2
|
-
import type { DepGraphBuildOptions
|
|
3
|
-
export declare const buildDepGraphYarnLockV1SimpleCyclesPruned: (extractedYarnLockV1Pkgs:
|
|
1
|
+
import type { NormalisedPkgs, PackageJsonBase } from '../types';
|
|
2
|
+
import type { DepGraphBuildOptions } from '../types';
|
|
3
|
+
export declare const buildDepGraphYarnLockV1SimpleCyclesPruned: (extractedYarnLockV1Pkgs: NormalisedPkgs, pkgJson: PackageJsonBase, options: DepGraphBuildOptions) => import("@snyk/dep-graph").DepGraph;
|
|
@@ -12,7 +12,7 @@ const buildDepGraphYarnLockV1SimpleCyclesPruned = (extractedYarnLockV1Pkgs, pkgJ
|
|
|
12
12
|
const { includeDevDeps, strictOutOfSync, includeOptionalDeps } = options;
|
|
13
13
|
const depGraphBuilder = new dep_graph_1.DepGraphBuilder({ name: 'yarn' }, { name: pkgJson.name, version: pkgJson.version });
|
|
14
14
|
const colorMap = {};
|
|
15
|
-
const topLevelDeps = util_1.getTopLevelDeps(pkgJson, { includeDevDeps });
|
|
15
|
+
const topLevelDeps = (0, util_1.getTopLevelDeps)(pkgJson, { includeDevDeps });
|
|
16
16
|
const rootNode = {
|
|
17
17
|
id: 'root-node',
|
|
18
18
|
name: pkgJson.name,
|
|
@@ -36,15 +36,15 @@ exports.buildDepGraphYarnLockV1SimpleCyclesPruned = buildDepGraphYarnLockV1Simpl
|
|
|
36
36
|
const dfsVisit = (depGraphBuilder, node, colorMap, extractedYarnLockV1Pkgs, strictOutOfSync, includeOptionalDeps) => {
|
|
37
37
|
colorMap[node.id] = Color.GRAY;
|
|
38
38
|
for (const [name, depInfo] of Object.entries(node.dependencies || {})) {
|
|
39
|
-
const childNode = util_1.getChildNode(name, depInfo, extractedYarnLockV1Pkgs, strictOutOfSync, includeOptionalDeps);
|
|
39
|
+
const childNode = (0, util_1.getChildNode)(name, depInfo, extractedYarnLockV1Pkgs, strictOutOfSync, includeOptionalDeps);
|
|
40
40
|
if (!colorMap.hasOwnProperty(childNode.id)) {
|
|
41
|
-
util_1.addPkgNodeToGraph(depGraphBuilder, childNode, {});
|
|
41
|
+
(0, util_1.addPkgNodeToGraph)(depGraphBuilder, childNode, {});
|
|
42
42
|
dfsVisit(depGraphBuilder, childNode, colorMap, extractedYarnLockV1Pkgs, strictOutOfSync, includeOptionalDeps);
|
|
43
43
|
}
|
|
44
44
|
else if (colorMap[childNode.id] === Color.GRAY) {
|
|
45
45
|
// cycle detected
|
|
46
46
|
childNode.id = `${childNode.id}|1`;
|
|
47
|
-
util_1.addPkgNodeToGraph(depGraphBuilder, childNode, { isCyclic: true });
|
|
47
|
+
(0, util_1.addPkgNodeToGraph)(depGraphBuilder, childNode, { isCyclic: true });
|
|
48
48
|
}
|
|
49
49
|
depGraphBuilder.connectDep(node.id, childNode.id);
|
|
50
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-depgraph-simple-pruned.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/yarn-lock-v1/build-depgraph-simple-pruned.ts"],"names":[],"mappings":";;;AAAA,+CAAkD;AAClD,kCAKiB;AAIjB,IAAK,KAGJ;AAHD,WAAK,KAAK;IACR,iCAAI,CAAA;IACJ,mCAAK,CAAA;AACP,CAAC,EAHI,KAAK,KAAL,KAAK,QAGT;AAEM,MAAM,yCAAyC,GAAG,CACvD,
|
|
1
|
+
{"version":3,"file":"build-depgraph-simple-pruned.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/yarn-lock-v1/build-depgraph-simple-pruned.ts"],"names":[],"mappings":";;;AAAA,+CAAkD;AAClD,kCAKiB;AAIjB,IAAK,KAGJ;AAHD,WAAK,KAAK;IACR,iCAAI,CAAA;IACJ,mCAAK,CAAA;AACP,CAAC,EAHI,KAAK,KAAL,KAAK,QAGT;AAEM,MAAM,yCAAyC,GAAG,CACvD,uBAAuC,EACvC,OAAwB,EACxB,OAA6B,EAC7B,EAAE;IACF,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC;IAEzE,MAAM,eAAe,GAAG,IAAI,2BAAe,CACzC,EAAE,IAAI,EAAE,MAAM,EAAE,EAChB,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CACjD,CAAC;IAEF,MAAM,QAAQ,GAA0B,EAAE,CAAC;IAE3C,MAAM,YAAY,GAAG,IAAA,sBAAe,EAAC,OAAO,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;IAElE,MAAM,QAAQ,GAAY;QACxB,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,YAAY,EAAE,YAAY;QAC1B,KAAK,EAAE,KAAK;KACb,CAAC;IAEF,QAAQ,CACN,eAAe,EACf,QAAQ,EACR,QAAQ,EACR,uBAAuB,EACvB,eAAe,EACf,mBAAmB,CACpB,CAAC;IAEF,OAAO,eAAe,CAAC,KAAK,EAAE,CAAC;AACjC,CAAC,CAAC;AAlCW,QAAA,yCAAyC,6CAkCpD;AAEF;;;;;;;;GAQG;AACH,MAAM,QAAQ,GAAG,CACf,eAAgC,EAChC,IAAa,EACb,QAA+B,EAC/B,uBAAuC,EACvC,eAAwB,EACxB,mBAA4B,EACtB,EAAE;IACR,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC;IAE/B,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE;QACrE,MAAM,SAAS,GAAG,IAAA,mBAAY,EAC5B,IAAI,EACJ,OAAO,EACP,uBAAuB,EACvB,eAAe,EAEf,mBAAmB,CACpB,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE;YAC1C,IAAA,wBAAiB,EAAC,eAAe,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;YAClD,QAAQ,CACN,eAAe,EACf,SAAS,EACT,QAAQ,EACR,uBAAuB,EACvB,eAAe,EACf,mBAAmB,CACpB,CAAC;SACH;aAAM,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,IAAI,EAAE;YAChD,iBAAiB;YACjB,SAAS,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC,EAAE,IAAI,CAAC;YACnC,IAAA,wBAAiB,EAAC,eAAe,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;SACnE;QAED,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;KACnD;IAED,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;AAClC,CAAC,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { DepGraphBuildOptions
|
|
2
|
-
import type { PackageJsonBase } from '../types';
|
|
3
|
-
export declare const buildDepGraphYarnLockV1Simple: (extractedYarnLockV1Pkgs:
|
|
1
|
+
import type { DepGraphBuildOptions } from '../types';
|
|
2
|
+
import type { NormalisedPkgs, PackageJsonBase } from '../types';
|
|
3
|
+
export declare const buildDepGraphYarnLockV1Simple: (extractedYarnLockV1Pkgs: NormalisedPkgs, pkgJson: PackageJsonBase, options: DepGraphBuildOptions) => import("@snyk/dep-graph").DepGraph;
|
|
@@ -7,7 +7,7 @@ const buildDepGraphYarnLockV1Simple = (extractedYarnLockV1Pkgs, pkgJson, options
|
|
|
7
7
|
const { includeDevDeps, strictOutOfSync, includeOptionalDeps } = options;
|
|
8
8
|
const depGraphBuilder = new dep_graph_1.DepGraphBuilder({ name: 'yarn' }, { name: pkgJson.name, version: pkgJson.version });
|
|
9
9
|
const visitedMap = new Set();
|
|
10
|
-
const topLevelDeps = util_1.getTopLevelDeps(pkgJson, { includeDevDeps });
|
|
10
|
+
const topLevelDeps = (0, util_1.getTopLevelDeps)(pkgJson, { includeDevDeps });
|
|
11
11
|
const rootNode = {
|
|
12
12
|
id: 'root-node',
|
|
13
13
|
name: pkgJson.name,
|
|
@@ -28,9 +28,9 @@ exports.buildDepGraphYarnLockV1Simple = buildDepGraphYarnLockV1Simple;
|
|
|
28
28
|
const dfsVisit = (depGraphBuilder, node, visitedMap, extractedYarnLockV1Pkgs, strictOutOfSync, includeOptionalDeps) => {
|
|
29
29
|
visitedMap.add(node.id);
|
|
30
30
|
for (const [name, depInfo] of Object.entries(node.dependencies || {})) {
|
|
31
|
-
const childNode = util_1.getChildNode(name, depInfo, extractedYarnLockV1Pkgs, strictOutOfSync, includeOptionalDeps);
|
|
31
|
+
const childNode = (0, util_1.getChildNode)(name, depInfo, extractedYarnLockV1Pkgs, strictOutOfSync, includeOptionalDeps);
|
|
32
32
|
if (!visitedMap.has(childNode.id)) {
|
|
33
|
-
util_1.addPkgNodeToGraph(depGraphBuilder, childNode, {});
|
|
33
|
+
(0, util_1.addPkgNodeToGraph)(depGraphBuilder, childNode, {});
|
|
34
34
|
dfsVisit(depGraphBuilder, childNode, visitedMap, extractedYarnLockV1Pkgs, strictOutOfSync, includeOptionalDeps);
|
|
35
35
|
}
|
|
36
36
|
depGraphBuilder.connectDep(node.id, childNode.id);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-depgraph-simple.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/yarn-lock-v1/build-depgraph-simple.ts"],"names":[],"mappings":";;;AAAA,+CAAkD;AAClD,kCAKiB;AAIV,MAAM,6BAA6B,GAAG,CAC3C,
|
|
1
|
+
{"version":3,"file":"build-depgraph-simple.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/yarn-lock-v1/build-depgraph-simple.ts"],"names":[],"mappings":";;;AAAA,+CAAkD;AAClD,kCAKiB;AAIV,MAAM,6BAA6B,GAAG,CAC3C,uBAAuC,EACvC,OAAwB,EACxB,OAA6B,EAC7B,EAAE;IACF,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC;IAEzE,MAAM,eAAe,GAAG,IAAI,2BAAe,CACzC,EAAE,IAAI,EAAE,MAAM,EAAE,EAChB,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CACjD,CAAC;IAEF,MAAM,UAAU,GAAgB,IAAI,GAAG,EAAE,CAAC;IAE1C,MAAM,YAAY,GAAG,IAAA,sBAAe,EAAC,OAAO,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;IAElE,MAAM,QAAQ,GAAY;QACxB,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,YAAY,EAAE,YAAY;QAC1B,KAAK,EAAE,KAAK;KACb,CAAC;IAEF,QAAQ,CACN,eAAe,EACf,QAAQ,EACR,UAAU,EACV,uBAAuB,EACvB,eAAe,EACf,mBAAmB,CACpB,CAAC;IAEF,OAAO,eAAe,CAAC,KAAK,EAAE,CAAC;AACjC,CAAC,CAAC;AAlCW,QAAA,6BAA6B,iCAkCxC;AAEF;;;;;GAKG;AACH,MAAM,QAAQ,GAAG,CACf,eAAgC,EAChC,IAAa,EACb,UAAuB,EACvB,uBAAuC,EACvC,eAAwB,EACxB,mBAA4B,EACtB,EAAE;IACR,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAExB,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE;QACrE,MAAM,SAAS,GAAG,IAAA,mBAAY,EAC5B,IAAI,EACJ,OAAO,EACP,uBAAuB,EACvB,eAAe,EACf,mBAAmB,CACpB,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE;YACjC,IAAA,wBAAiB,EAAC,eAAe,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;YAClD,QAAQ,CACN,eAAe,EACf,SAAS,EACT,UAAU,EACV,uBAAuB,EACvB,eAAe,EACf,mBAAmB,CACpB,CAAC;SACH;QAED,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;KACnD;AACH,CAAC,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { PackageJsonBase } from '../types';
|
|
2
|
-
import type { DepGraphBuildOptions
|
|
3
|
-
export declare const buildDepGraphYarnLockV1WorkspaceCyclesPruned: (extractedYarnLockV1Pkgs:
|
|
1
|
+
import type { NormalisedPkgs, PackageJsonBase } from '../types';
|
|
2
|
+
import type { DepGraphBuildOptions } from '../types';
|
|
3
|
+
export declare const buildDepGraphYarnLockV1WorkspaceCyclesPruned: (extractedYarnLockV1Pkgs: NormalisedPkgs, pkgJson: PackageJsonBase, workspacePkgNameToVersion: Record<string, string>, options: DepGraphBuildOptions) => import("@snyk/dep-graph").DepGraph;
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.buildDepGraphYarnLockV1WorkspaceCyclesPruned = void 0;
|
|
4
4
|
const dep_graph_1 = require("@snyk/dep-graph");
|
|
5
5
|
const util_1 = require("../util");
|
|
6
|
+
const util_2 = require("./util");
|
|
6
7
|
var Color;
|
|
7
8
|
(function (Color) {
|
|
8
9
|
Color[Color["GRAY"] = 0] = "GRAY";
|
|
@@ -14,7 +15,7 @@ const buildDepGraphYarnLockV1WorkspaceCyclesPruned = (extractedYarnLockV1Pkgs, p
|
|
|
14
15
|
const { includeDevDeps, strictOutOfSync, includeOptionalDeps } = options;
|
|
15
16
|
const depGraphBuilder = new dep_graph_1.DepGraphBuilder({ name: 'yarn' }, { name: pkgJson.name, version: pkgJson.version });
|
|
16
17
|
const colorMap = {};
|
|
17
|
-
const topLevelDeps = util_1.getTopLevelDeps(pkgJson, { includeDevDeps });
|
|
18
|
+
const topLevelDeps = (0, util_1.getTopLevelDeps)(pkgJson, { includeDevDeps });
|
|
18
19
|
const rootNode = {
|
|
19
20
|
id: 'root-node',
|
|
20
21
|
name: pkgJson.name,
|
|
@@ -40,9 +41,9 @@ const dfsVisit = (depGraphBuilder, node, colorMap, extractedYarnLockV1Pkgs, work
|
|
|
40
41
|
colorMap[node.id] = Color.GRAY;
|
|
41
42
|
for (const [name, depInfo] of Object.entries(node.dependencies || {})) {
|
|
42
43
|
const isWorkspacePkg = !!workspacePkgNameToVersion[name];
|
|
43
|
-
const childNode =
|
|
44
|
+
const childNode = (0, util_2.getChildNodeYarnLockV1Workspace)(name, depInfo, workspacePkgNameToVersion, extractedYarnLockV1Pkgs, strictOutOfSync, includeOptionalDeps);
|
|
44
45
|
if (!colorMap.hasOwnProperty(childNode.id)) {
|
|
45
|
-
util_1.addPkgNodeToGraph(depGraphBuilder, childNode, {
|
|
46
|
+
(0, util_1.addPkgNodeToGraph)(depGraphBuilder, childNode, {
|
|
46
47
|
isCyclic: false,
|
|
47
48
|
isWorkspacePkg,
|
|
48
49
|
});
|
|
@@ -56,7 +57,7 @@ const dfsVisit = (depGraphBuilder, node, colorMap, extractedYarnLockV1Pkgs, work
|
|
|
56
57
|
else if (colorMap[childNode.id] === Color.GRAY) {
|
|
57
58
|
// cycle detected
|
|
58
59
|
childNode.id = `${childNode.id}|1`;
|
|
59
|
-
util_1.addPkgNodeToGraph(depGraphBuilder, childNode, {
|
|
60
|
+
(0, util_1.addPkgNodeToGraph)(depGraphBuilder, childNode, {
|
|
60
61
|
isCyclic: true,
|
|
61
62
|
isWorkspacePkg,
|
|
62
63
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-depgraph-workspace-package-pruned.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/yarn-lock-v1/build-depgraph-workspace-package-pruned.ts"],"names":[],"mappings":";;;AAAA,+CAAkD;AAClD,
|
|
1
|
+
{"version":3,"file":"build-depgraph-workspace-package-pruned.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/yarn-lock-v1/build-depgraph-workspace-package-pruned.ts"],"names":[],"mappings":";;;AAAA,+CAAkD;AAClD,kCAAsE;AAItE,iCAAyD;AAEzD,IAAK,KAGJ;AAHD,WAAK,KAAK;IACR,iCAAI,CAAA;IACJ,mCAAK,CAAA;AACP,CAAC,EAHI,KAAK,KAAL,KAAK,QAGT;AAED,sDAAsD;AACtD,qBAAqB;AACd,MAAM,4CAA4C,GAAG,CAC1D,uBAAuC,EACvC,OAAwB,EACxB,yBAAiD,EACjD,OAA6B,EAC7B,EAAE;IACF,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC;IAEzE,MAAM,eAAe,GAAG,IAAI,2BAAe,CACzC,EAAE,IAAI,EAAE,MAAM,EAAE,EAChB,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CACjD,CAAC;IAEF,MAAM,QAAQ,GAA0B,EAAE,CAAC;IAE3C,MAAM,YAAY,GAAG,IAAA,sBAAe,EAAC,OAAO,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;IAElE,MAAM,QAAQ,GAAY;QACxB,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,YAAY,EAAE,YAAY;QAC1B,KAAK,EAAE,KAAK;KACb,CAAC;IAEF,QAAQ,CACN,eAAe,EACf,QAAQ,EACR,QAAQ,EACR,uBAAuB,EACvB,yBAAyB,EACzB,eAAe,EACf,mBAAmB,CACpB,CAAC;IAEF,OAAO,eAAe,CAAC,KAAK,EAAE,CAAC;AACjC,CAAC,CAAC;AApCW,QAAA,4CAA4C,gDAoCvD;AAEF;;;;;;;;;GASG;AACH,MAAM,QAAQ,GAAG,CACf,eAAgC,EAChC,IAAa,EACb,QAA+B,EAC/B,uBAAuC,EACvC,yBAAiD,EACjD,eAAwB,EACxB,mBAA4B,EACtB,EAAE;IACR,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC;IAE/B,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE;QACrE,MAAM,cAAc,GAAG,CAAC,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;QAEzD,MAAM,SAAS,GAAG,IAAA,sCAA+B,EAC/C,IAAI,EACJ,OAAO,EACP,yBAAyB,EACzB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,CACpB,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE;YAC1C,IAAA,wBAAiB,EAAC,eAAe,EAAE,SAAS,EAAE;gBAC5C,QAAQ,EAAE,KAAK;gBACf,cAAc;aACf,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,EAAE;gBACnB,QAAQ,CACN,eAAe,EACf,SAAS,EACT,QAAQ,EACR,uBAAuB,EACvB,yBAAyB,EACzB,eAAe,EACf,mBAAmB,CACpB,CAAC;aACH;iBAAM;gBACL,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;aACtC;SACF;aAAM,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,IAAI,EAAE;YAChD,iBAAiB;YACjB,SAAS,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC,EAAE,IAAI,CAAC;YACnC,IAAA,wBAAiB,EAAC,eAAe,EAAE,SAAS,EAAE;gBAC5C,QAAQ,EAAE,IAAI;gBACd,cAAc;aACf,CAAC,CAAC;SACJ;QAED,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;KACnD;IAED,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;AAClC,CAAC,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { PackageJsonBase } from '../types';
|
|
2
|
-
import type { DepGraphBuildOptions
|
|
3
|
-
export declare const buildDepGraphYarnLockV1Workspace: (extractedYarnLockV1Pkgs:
|
|
1
|
+
import type { NormalisedPkgs, PackageJsonBase } from '../types';
|
|
2
|
+
import type { DepGraphBuildOptions } from '../types';
|
|
3
|
+
export declare const buildDepGraphYarnLockV1Workspace: (extractedYarnLockV1Pkgs: NormalisedPkgs, pkgJson: PackageJsonBase, workspacePkgNameToVersion: Record<string, string>, options: DepGraphBuildOptions) => import("@snyk/dep-graph").DepGraph;
|
|
@@ -3,11 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.buildDepGraphYarnLockV1Workspace = void 0;
|
|
4
4
|
const dep_graph_1 = require("@snyk/dep-graph");
|
|
5
5
|
const util_1 = require("../util");
|
|
6
|
+
const util_2 = require("./util");
|
|
6
7
|
const buildDepGraphYarnLockV1Workspace = (extractedYarnLockV1Pkgs, pkgJson, workspacePkgNameToVersion, options) => {
|
|
7
8
|
const { includeDevDeps, strictOutOfSync, includeOptionalDeps } = options;
|
|
8
9
|
const depGraphBuilder = new dep_graph_1.DepGraphBuilder({ name: 'yarn' }, { name: pkgJson.name, version: pkgJson.version });
|
|
9
10
|
const visitedMap = new Set();
|
|
10
|
-
const topLevelDeps = util_1.getTopLevelDeps(pkgJson, { includeDevDeps });
|
|
11
|
+
const topLevelDeps = (0, util_1.getTopLevelDeps)(pkgJson, { includeDevDeps });
|
|
11
12
|
const rootNode = {
|
|
12
13
|
id: 'root-node',
|
|
13
14
|
name: pkgJson.name,
|
|
@@ -33,9 +34,9 @@ const dfsVisit = (depGraphBuilder, node, visitedMap, extractedYarnLockV1Pkgs, wo
|
|
|
33
34
|
visitedMap.add(node.id);
|
|
34
35
|
for (const [name, depInfo] of Object.entries(node.dependencies || {})) {
|
|
35
36
|
const isWorkspacePkg = !!workspacePkgNameToVersion[name];
|
|
36
|
-
const childNode =
|
|
37
|
+
const childNode = (0, util_2.getChildNodeYarnLockV1Workspace)(name, depInfo, workspacePkgNameToVersion, extractedYarnLockV1Pkgs, strictOutOfSync, includeOptionalDeps);
|
|
37
38
|
if (!visitedMap.has(childNode.id)) {
|
|
38
|
-
util_1.addPkgNodeToGraph(depGraphBuilder, childNode, {
|
|
39
|
+
(0, util_1.addPkgNodeToGraph)(depGraphBuilder, childNode, {
|
|
39
40
|
isCyclic: false,
|
|
40
41
|
isWorkspacePkg,
|
|
41
42
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-depgraph-workspace-package.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/yarn-lock-v1/build-depgraph-workspace-package.ts"],"names":[],"mappings":";;;AAAA,+CAAkD;AAClD,
|
|
1
|
+
{"version":3,"file":"build-depgraph-workspace-package.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/yarn-lock-v1/build-depgraph-workspace-package.ts"],"names":[],"mappings":";;;AAAA,+CAAkD;AAClD,kCAAsE;AAGtE,iCAAyD;AAElD,MAAM,gCAAgC,GAAG,CAC9C,uBAAuC,EACvC,OAAwB,EACxB,yBAAiD,EACjD,OAA6B,EAC7B,EAAE;IACF,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC;IAEzE,MAAM,eAAe,GAAG,IAAI,2BAAe,CACzC,EAAE,IAAI,EAAE,MAAM,EAAE,EAChB,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CACjD,CAAC;IAEF,MAAM,UAAU,GAAgB,IAAI,GAAG,EAAE,CAAC;IAE1C,MAAM,YAAY,GAAG,IAAA,sBAAe,EAAC,OAAO,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;IAElE,MAAM,QAAQ,GAAY;QACxB,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,YAAY,EAAE,YAAY;QAC1B,KAAK,EAAE,KAAK;KACb,CAAC;IAEF,QAAQ,CACN,eAAe,EACf,QAAQ,EACR,UAAU,EACV,uBAAuB,EACvB,yBAAyB,EACzB,eAAe,EACf,mBAAmB,CACpB,CAAC;IAEF,OAAO,eAAe,CAAC,KAAK,EAAE,CAAC;AACjC,CAAC,CAAC;AApCW,QAAA,gCAAgC,oCAoC3C;AAEF;;;;;;;;;GASG;AACH,MAAM,QAAQ,GAAG,CACf,eAAgC,EAChC,IAAa,EACb,UAAuB,EACvB,uBAAuC,EACvC,yBAAiD,EACjD,eAAwB,EACxB,mBAA4B,EACtB,EAAE;IACR,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAExB,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE;QACrE,MAAM,cAAc,GAAG,CAAC,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;QAEzD,MAAM,SAAS,GAAG,IAAA,sCAA+B,EAC/C,IAAI,EACJ,OAAO,EACP,yBAAyB,EACzB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,CACpB,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE;YACjC,IAAA,wBAAiB,EAAC,eAAe,EAAE,SAAS,EAAE;gBAC5C,QAAQ,EAAE,KAAK;gBACf,cAAc;aACf,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,EAAE;gBACnB,QAAQ,CACN,eAAe,EACf,SAAS,EACT,UAAU,EACV,uBAAuB,EACvB,yBAAyB,EACzB,eAAe,EACf,mBAAmB,CACpB,CAAC;aACH;SACF;QAED,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;KACnD;AACH,CAAC,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
export declare const extractPkgsFromYarnLockV1: (yarnLockContent: string) =>
|
|
1
|
+
import { NormalisedPkgs } from '../types';
|
|
2
|
+
export declare const extractPkgsFromYarnLockV1: (yarnLockContent: string) => NormalisedPkgs;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract-yarnlock-v1-pkgs.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/yarn-lock-v1/extract-yarnlock-v1-pkgs.ts"],"names":[],"mappings":";;;AAAA,wDAAwD;AAGjD,MAAM,yBAAyB,GAAG,CACvC,eAAuB,
|
|
1
|
+
{"version":3,"file":"extract-yarnlock-v1-pkgs.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/yarn-lock-v1/extract-yarnlock-v1-pkgs.ts"],"names":[],"mappings":";;;AAAA,wDAAwD;AAGjD,MAAM,yBAAyB,GAAG,CACvC,eAAuB,EACP,EAAE;IAClB,OAAO,kBAAkB,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC;AAC1D,CAAC,CAAC;AAJW,QAAA,yBAAyB,6BAIpC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { ProjectParseOptions } from '
|
|
1
|
+
import { ProjectParseOptions } from '../types';
|
|
2
2
|
export declare const parseYarnLockV1Project: (pkgJsonContent: string, yarnLockContent: string, options: ProjectParseOptions) => Promise<import("@snyk/dep-graph").DepGraph>;
|
|
@@ -7,15 +7,15 @@ const build_depgraph_simple_pruned_1 = require("./build-depgraph-simple-pruned")
|
|
|
7
7
|
const extract_yarnlock_v1_pkgs_1 = require("./extract-yarnlock-v1-pkgs");
|
|
8
8
|
const parseYarnLockV1Project = async (pkgJsonContent, yarnLockContent, options) => {
|
|
9
9
|
const { includeDevDeps, includeOptionalDeps, pruneCycles, strictOutOfSync } = options;
|
|
10
|
-
const pkgs = extract_yarnlock_v1_pkgs_1.extractPkgsFromYarnLockV1(yarnLockContent);
|
|
11
|
-
const pkgJson = util_1.parsePkgJson(pkgJsonContent);
|
|
10
|
+
const pkgs = (0, extract_yarnlock_v1_pkgs_1.extractPkgsFromYarnLockV1)(yarnLockContent);
|
|
11
|
+
const pkgJson = (0, util_1.parsePkgJson)(pkgJsonContent);
|
|
12
12
|
const depGraph = pruneCycles
|
|
13
|
-
? build_depgraph_simple_pruned_1.buildDepGraphYarnLockV1SimpleCyclesPruned(pkgs, pkgJson, {
|
|
13
|
+
? (0, build_depgraph_simple_pruned_1.buildDepGraphYarnLockV1SimpleCyclesPruned)(pkgs, pkgJson, {
|
|
14
14
|
includeDevDeps,
|
|
15
15
|
strictOutOfSync,
|
|
16
16
|
includeOptionalDeps,
|
|
17
17
|
})
|
|
18
|
-
: _1.buildDepGraphYarnLockV1Simple(pkgs, pkgJson, {
|
|
18
|
+
: (0, _1.buildDepGraphYarnLockV1Simple)(pkgs, pkgJson, {
|
|
19
19
|
includeDevDeps,
|
|
20
20
|
strictOutOfSync,
|
|
21
21
|
includeOptionalDeps,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simple.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/yarn-lock-v1/simple.ts"],"names":[],"mappings":";;;AAAA,wBAAkD;AAElD,kCAAuC;AACvC,iFAA2F;AAC3F,yEAAuE;AAGhE,MAAM,sBAAsB,GAAG,KAAK,EACzC,cAAsB,EACtB,eAAuB,EACvB,OAA4B,EAC5B,EAAE;IACF,MAAM,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,EAAE,eAAe,EAAE,GACzE,OAAO,CAAC;IAEV,MAAM,IAAI,GAAG,oDAAyB,
|
|
1
|
+
{"version":3,"file":"simple.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/yarn-lock-v1/simple.ts"],"names":[],"mappings":";;;AAAA,wBAAkD;AAElD,kCAAuC;AACvC,iFAA2F;AAC3F,yEAAuE;AAGhE,MAAM,sBAAsB,GAAG,KAAK,EACzC,cAAsB,EACtB,eAAuB,EACvB,OAA4B,EAC5B,EAAE;IACF,MAAM,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,EAAE,eAAe,EAAE,GACzE,OAAO,CAAC;IAEV,MAAM,IAAI,GAAG,IAAA,oDAAyB,EAAC,eAAe,CAAC,CAAC;IAExD,MAAM,OAAO,GAAoB,IAAA,mBAAY,EAAC,cAAc,CAAC,CAAC;IAE9D,MAAM,QAAQ,GAAG,WAAW;QAC1B,CAAC,CAAC,IAAA,wEAAyC,EAAC,IAAI,EAAE,OAAO,EAAE;YACvD,cAAc;YACd,eAAe;YACf,mBAAmB;SACpB,CAAC;QACJ,CAAC,CAAC,IAAA,gCAA6B,EAAC,IAAI,EAAE,OAAO,EAAE;YAC3C,cAAc;YACd,eAAe;YACf,mBAAmB;SACpB,CAAC,CAAC;IAEP,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAzBW,QAAA,sBAAsB,0BAyBjC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { NormalisedPkgs } from '../types';
|
|
2
|
+
import { PkgNode } from '../util';
|
|
3
|
+
export declare const getChildNodeYarnLockV1Workspace: (name: string, depInfo: {
|
|
4
|
+
version: string;
|
|
5
|
+
isDev: boolean;
|
|
6
|
+
}, workspacePkgNameToVersion: Record<string, string>, pkgs: NormalisedPkgs, strictOutOfSync: boolean, includeOptionalDeps: boolean) => PkgNode;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getChildNodeYarnLockV1Workspace = void 0;
|
|
4
|
+
const errors_1 = require("../../errors");
|
|
5
|
+
const parsers_1 = require("../../parsers");
|
|
6
|
+
const util_1 = require("../util");
|
|
7
|
+
const getChildNodeYarnLockV1Workspace = (name, depInfo, workspacePkgNameToVersion, pkgs, strictOutOfSync, includeOptionalDeps) => {
|
|
8
|
+
let childNode;
|
|
9
|
+
if (workspacePkgNameToVersion[name]) {
|
|
10
|
+
const version = workspacePkgNameToVersion[name];
|
|
11
|
+
// This is just to mimic old behavior where when StrictOutOfSync is turned on,
|
|
12
|
+
// any cross referencing between workspace packages will lead to a throw
|
|
13
|
+
if (strictOutOfSync) {
|
|
14
|
+
throw new errors_1.OutOfSyncError(`${name}@${version}`, parsers_1.LockfileType.yarn);
|
|
15
|
+
}
|
|
16
|
+
childNode = {
|
|
17
|
+
id: `${name}@${version}`,
|
|
18
|
+
name: name,
|
|
19
|
+
version: version,
|
|
20
|
+
dependencies: {},
|
|
21
|
+
isDev: depInfo.isDev,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
childNode = (0, util_1.getChildNode)(name, depInfo, pkgs, strictOutOfSync, includeOptionalDeps);
|
|
26
|
+
}
|
|
27
|
+
return childNode;
|
|
28
|
+
};
|
|
29
|
+
exports.getChildNodeYarnLockV1Workspace = getChildNodeYarnLockV1Workspace;
|
|
30
|
+
//# sourceMappingURL=util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/yarn-lock-v1/util.ts"],"names":[],"mappings":";;;AAAA,yCAA8C;AAC9C,2CAA6C;AAE7C,kCAAgD;AAEzC,MAAM,+BAA+B,GAAG,CAC7C,IAAY,EACZ,OAA4C,EAC5C,yBAAiD,EACjD,IAAoB,EACpB,eAAwB,EACxB,mBAA4B,EAC5B,EAAE;IACF,IAAI,SAAkB,CAAC;IAEvB,IAAI,yBAAyB,CAAC,IAAI,CAAC,EAAE;QACnC,MAAM,OAAO,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC;QAEhD,8EAA8E;QAC9E,wEAAwE;QACxE,IAAI,eAAe,EAAE;YACnB,MAAM,IAAI,uBAAc,CAAC,GAAG,IAAI,IAAI,OAAO,EAAE,EAAE,sBAAY,CAAC,IAAI,CAAC,CAAC;SACnE;QAED,SAAS,GAAG;YACV,EAAE,EAAE,GAAG,IAAI,IAAI,OAAO,EAAE;YACxB,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,OAAO;YAChB,YAAY,EAAE,EAAE;YAChB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC;KACH;SAAM;QACL,SAAS,GAAG,IAAA,mBAAY,EACtB,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,eAAe,EACf,mBAAmB,CACpB,CAAC;KACH;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AArCW,QAAA,+BAA+B,mCAqC1C"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { DepGraph } from '@snyk/dep-graph';
|
|
2
|
-
import { ProjectParseOptions } from '
|
|
2
|
+
import { ProjectParseOptions } from '../types';
|
|
3
3
|
export declare const parseYarnLockV1WorkspaceProject: (yarnLockContent: string, workspacePackagesPkgJsons: string[], options: ProjectParseOptions) => Promise<DepGraph[]>;
|