snyk-nodejs-lockfile-parser 1.58.14 → 1.58.16
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/dep-graph-builders/pnpm/build-dep-graph-pnpm.js +2 -1
- package/dist/dep-graph-builders/pnpm/build-dep-graph-pnpm.js.map +1 -1
- package/dist/dep-graph-builders/pnpm/constants.d.ts +1 -0
- package/dist/dep-graph-builders/pnpm/constants.js +5 -0
- package/dist/dep-graph-builders/pnpm/constants.js.map +1 -0
- package/dist/dep-graph-builders/pnpm/lockfile-parser/lockfile-parser.js +7 -3
- package/dist/dep-graph-builders/pnpm/lockfile-parser/lockfile-parser.js.map +1 -1
- package/dist/dep-graph-builders/pnpm/lockfile-parser/lockfile-v5.js +10 -1
- package/dist/dep-graph-builders/pnpm/lockfile-parser/lockfile-v5.js.map +1 -1
- package/dist/dep-graph-builders/pnpm/lockfile-parser/lockfile-v6.js +17 -10
- package/dist/dep-graph-builders/pnpm/lockfile-parser/lockfile-v6.js.map +1 -1
- package/dist/dep-graph-builders/pnpm/parse-workspace.js +2 -1
- package/dist/dep-graph-builders/pnpm/parse-workspace.js.map +1 -1
- package/dist/dep-graph-builders/pnpm/utils.js +8 -13
- package/dist/dep-graph-builders/pnpm/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -9,11 +9,12 @@ const error_catalog_nodejs_public_1 = require("@snyk/error-catalog-nodejs-public
|
|
|
9
9
|
const out_of_sync_error_1 = require("../../errors/out-of-sync-error");
|
|
10
10
|
const __1 = require("../..");
|
|
11
11
|
const debugModule = require("debug");
|
|
12
|
+
const constants_1 = require("./constants");
|
|
12
13
|
const debug = debugModule('snyk-pnpm-workspaces');
|
|
13
14
|
const buildDepGraphPnpm = async (lockFileParser, pkgJson, options, importer) => {
|
|
14
15
|
var _a;
|
|
15
16
|
const { strictOutOfSync, includeOptionalDeps, includeDevDeps, pruneWithinTopLevelDeps, } = options;
|
|
16
|
-
const depGraphBuilder = new dep_graph_1.DepGraphBuilder({ name: 'pnpm' }, { name: pkgJson.name, version: pkgJson.version });
|
|
17
|
+
const depGraphBuilder = new dep_graph_1.DepGraphBuilder({ name: 'pnpm' }, { name: pkgJson.name, version: pkgJson.version || constants_1.UNDEFINED_VERSION });
|
|
17
18
|
lockFileParser.extractedPackages = lockFileParser.extractPackages();
|
|
18
19
|
const extractedPnpmPkgs = lockFileParser.extractedPackages;
|
|
19
20
|
const topLevelDeps = (0, util_1.getTopLevelDeps)(pkgJson, options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-dep-graph-pnpm.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/pnpm/build-dep-graph-pnpm.ts"],"names":[],"mappings":";;;AAAA,+CAAkD;AAClD,kCAA0C;AAG1C,mCAA2C;AAC3C,2DAAsD;AAGtD,mFAAyE;AACzE,sEAGwC;AACxC,6BAAqC;AACrC,qCAAqC;
|
|
1
|
+
{"version":3,"file":"build-dep-graph-pnpm.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/pnpm/build-dep-graph-pnpm.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const UNDEFINED_VERSION = "undefined";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/pnpm/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,iBAAiB,GAAG,WAAW,CAAC"}
|
|
@@ -5,6 +5,7 @@ const semver_1 = require("semver");
|
|
|
5
5
|
const pathUtil = require("path");
|
|
6
6
|
const lodash_1 = require("lodash");
|
|
7
7
|
const debugModule = require("debug");
|
|
8
|
+
const constants_1 = require("../constants");
|
|
8
9
|
const debug = debugModule('snyk-pnpm-workspaces');
|
|
9
10
|
class PnpmLockfileParser {
|
|
10
11
|
constructor(rawPnpmLock, workspaceArgs) {
|
|
@@ -30,6 +31,9 @@ class PnpmLockfileParser {
|
|
|
30
31
|
// name and version are optional in version data - if they don't show up in version data, they can be deducted from the dependency path
|
|
31
32
|
const { name, version } = versionData;
|
|
32
33
|
let parsedPath = {};
|
|
34
|
+
// Exclude transitive peer deps from depPath
|
|
35
|
+
// e.g. '/cdktf-cli@0.20.3(ink@3.2.0)(react@17.0.2)' -> cdktf-cli@0.20.3
|
|
36
|
+
depPath = this.excludeTransPeerDepsVersions(depPath);
|
|
33
37
|
if (!(version && name)) {
|
|
34
38
|
parsedPath = this.parseDepPath(depPath);
|
|
35
39
|
}
|
|
@@ -75,7 +79,7 @@ class PnpmLockfileParser {
|
|
|
75
79
|
const { name, version } = (_b = this.workspaceArgs) === null || _b === void 0 ? void 0 : _b.projectsVersionMap[importer];
|
|
76
80
|
this.extractedPackages[`${name}@${version}`] = {
|
|
77
81
|
id: `${name}@${version}`,
|
|
78
|
-
name:
|
|
82
|
+
name: name,
|
|
79
83
|
version: version,
|
|
80
84
|
dependencies: this.topLevelDepsToNormalizedPkgs(prodDeps),
|
|
81
85
|
devDependencies: this.topLevelDepsToNormalizedPkgs(devDeps),
|
|
@@ -141,13 +145,13 @@ class PnpmLockfileParser {
|
|
|
141
145
|
const mappedProjInfo = this.workspaceArgs.projectsVersionMap[resolvedPathDep];
|
|
142
146
|
if (!mappedProjInfo) {
|
|
143
147
|
debug(`Importer ${resolvedPathDep} discovered as a dependency of ${importerName} was not found in the lockfile`);
|
|
144
|
-
version =
|
|
148
|
+
version = constants_1.UNDEFINED_VERSION;
|
|
145
149
|
}
|
|
146
150
|
else {
|
|
147
151
|
version = mappedProjInfo.version;
|
|
148
152
|
}
|
|
149
153
|
if (!version) {
|
|
150
|
-
version =
|
|
154
|
+
version = constants_1.UNDEFINED_VERSION;
|
|
151
155
|
}
|
|
152
156
|
// Stop recursion here if this package was already normalized and stored in extractedPackages
|
|
153
157
|
if (this.extractedPackages[`${name}@${version}`]) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lockfile-parser.js","sourceRoot":"","sources":["../../../../lib/dep-graph-builders/pnpm/lockfile-parser/lockfile-parser.ts"],"names":[],"mappings":";;;AAUA,mCAA+B;AAC/B,iCAAiC;AACjC,mCAAiC;AACjC,qCAAqC;
|
|
1
|
+
{"version":3,"file":"lockfile-parser.js","sourceRoot":"","sources":["../../../../lib/dep-graph-builders/pnpm/lockfile-parser/lockfile-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,7 +51,16 @@ class LockfileV5Parser extends lockfile_parser_1.PnpmLockfileParser {
|
|
|
51
51
|
// '/@babel/preset-typescript/7.12.13_@babel+core@7.12.13'
|
|
52
52
|
// https://github.com/pnpm/spec/blob/master/dependency-path.md
|
|
53
53
|
excludeTransPeerDepsVersions(fullVersionStr) {
|
|
54
|
-
|
|
54
|
+
if (!fullVersionStr.includes('/')) {
|
|
55
|
+
return fullVersionStr.split('_')[0];
|
|
56
|
+
}
|
|
57
|
+
// When dealing with dependency paths, the dependency name can include '_'
|
|
58
|
+
// so we need to make sure the '_' we split by is after '/'
|
|
59
|
+
const splitSlashes = fullVersionStr.split('/');
|
|
60
|
+
const stringAfterLastSlash = splitSlashes[splitSlashes.length - 1];
|
|
61
|
+
const stringBeforeLastSlash = fullVersionStr.split(stringAfterLastSlash)[0];
|
|
62
|
+
const stringBetweenLastSlashAndUnderscore = stringAfterLastSlash.split('_')[0];
|
|
63
|
+
return `${stringBeforeLastSlash}${stringBetweenLastSlashAndUnderscore}`;
|
|
55
64
|
}
|
|
56
65
|
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
|
|
57
66
|
normaliseImporters(rawPnpmLock) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lockfile-v5.js","sourceRoot":"","sources":["../../../../lib/dep-graph-builders/pnpm/lockfile-parser/lockfile-v5.ts"],"names":[],"mappings":";;;AAAA,qDAAwC;AAExC,uDAAuD;AAGvD,MAAa,gBAAiB,SAAQ,oCAAkB;IACtD,YAAmB,WAAgB,EAAE,aAAiC;QACpE,yDAAyD;QACzD,+CAA+C;QAC/C,IAAI,CAAC,WAAW,EAAE;YAChB,WAAW,GAAG;gBACZ,eAAe,EAAE,GAAG;aACrB,CAAC;SACH;QACD,KAAK,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACpC,CAAC;IAEM,YAAY,CAAC,OAAe;QACjC,oEAAoE;QACpE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAA,uBAAK,EAAC,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,EAAE,IAAI,EAAE,CAAC;SACjB;QACD,OAAO;YACL,IAAI;YACJ,OAAO,EAAE,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC;SACpD,CAAC;IACJ,CAAC;IAEM,qBAAqB,CAC1B,YAAoC,EACpC,KAAc,EACd,YAAqB;QAErB,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,CACxC,CAAC,QAAkB,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE;YACtC,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;YACpE,QAAQ,CAAC,IAAI,CAAC,GAAG;gBACf,IAAI;gBACJ,OAAO;gBACP,KAAK;aACN,CAAC;YACF,OAAO,QAAQ,CAAC;QAClB,CAAC,EACD,EAAE,CACH,CAAC;IACJ,CAAC;IAEM,qBAAqB,CAC1B,YAAoC,EACpC,KAAc,EACd,YAAqB;QAErB,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,CACxC,CAAC,QAAgC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE;YACpD,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;YACpE,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;YACzB,OAAO,QAAQ,CAAC;QAClB,CAAC,EACD,EAAE,CACH,CAAC;IACJ,CAAC;IAED,qFAAqF;IACrF,uBAAuB;IACvB,gBAAgB;IAChB,kCAAkC;IAClC,yBAAyB;IACzB,0DAA0D;IAC1D,8DAA8D;IACvD,4BAA4B,CAAC,cAAsB;QACxD,OAAO,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"lockfile-v5.js","sourceRoot":"","sources":["../../../../lib/dep-graph-builders/pnpm/lockfile-parser/lockfile-v5.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,22 +8,29 @@ class LockfileV6Parser extends lockfile_parser_1.PnpmLockfileParser {
|
|
|
8
8
|
this.settings = rawPnpmLock.settings;
|
|
9
9
|
}
|
|
10
10
|
parseDepPath(depPath) {
|
|
11
|
-
// Exclude transitive peer deps from depPath
|
|
12
|
-
// e.g. '/cdktf-cli@0.20.3(ink@3.2.0)(react@17.0.2)' -> cdktf-cli@0.20.3
|
|
13
|
-
depPath = this.excludeTransPeerDepsVersions(depPath);
|
|
14
11
|
// Check if path is absolute (doesn't start with '/')
|
|
15
12
|
// If it's not absolute, omit first '/'
|
|
16
13
|
depPath = LockfileV6Parser.isAbsoluteDepenencyPath(depPath)
|
|
17
14
|
? depPath
|
|
18
15
|
: depPath.substring(1);
|
|
19
|
-
//
|
|
20
|
-
//
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
16
|
+
// This is the case for scoped packages, get version based on the last occurence of '@' separator
|
|
17
|
+
// to include the '@' in the name
|
|
18
|
+
if (depPath.startsWith('@')) {
|
|
19
|
+
// e.g. @babel/code-frame@7.24.2 -> name: @babel/code-frame and version: 7.24.2
|
|
20
|
+
const sepIndex = depPath.lastIndexOf('@');
|
|
21
|
+
if (sepIndex === -1) {
|
|
22
|
+
return {};
|
|
23
|
+
}
|
|
24
|
+
const name = depPath.substring(0, sepIndex);
|
|
25
|
+
const version = depPath.substring(sepIndex + 1);
|
|
26
|
+
return {
|
|
27
|
+
name,
|
|
28
|
+
version,
|
|
29
|
+
};
|
|
24
30
|
}
|
|
25
|
-
|
|
26
|
-
|
|
31
|
+
// For non-scoped packages, the dependency specifier should contain only
|
|
32
|
+
// one '@', separating the name and version
|
|
33
|
+
const [name, version] = depPath.split('@');
|
|
27
34
|
return {
|
|
28
35
|
name,
|
|
29
36
|
version,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lockfile-v6.js","sourceRoot":"","sources":["../../../../lib/dep-graph-builders/pnpm/lockfile-parser/lockfile-v6.ts"],"names":[],"mappings":";;;AAEA,uDAAuD;AAEvD,MAAa,gBAAiB,SAAQ,oCAAkB;IAGtD,YAAmB,WAAgB,EAAE,aAAiC;QACpE,KAAK,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC;IACvC,CAAC;IAEM,YAAY,CAAC,OAAe;QACjC,
|
|
1
|
+
{"version":3,"file":"lockfile-v6.js","sourceRoot":"","sources":["../../../../lib/dep-graph-builders/pnpm/lockfile-parser/lockfile-v6.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ const build_dep_graph_pnpm_1 = require("./build-dep-graph-pnpm");
|
|
|
8
8
|
const index_1 = require("./lockfile-parser/index");
|
|
9
9
|
const utils_1 = require("../../utils");
|
|
10
10
|
const utils_2 = require("./utils");
|
|
11
|
+
const constants_1 = require("./constants");
|
|
11
12
|
const debug = debugModule('snyk-pnpm-workspaces');
|
|
12
13
|
// Compute project versions map
|
|
13
14
|
// This is needed because the lockfile doesn't present the version of
|
|
@@ -22,7 +23,7 @@ function computeProjectVersionMaps(root, targets) {
|
|
|
22
23
|
try {
|
|
23
24
|
const parsedPkgJson = (0, util_1.parsePkgJson)(packageJson.content);
|
|
24
25
|
projectsVersionMap[target] = {
|
|
25
|
-
version: parsedPkgJson.version,
|
|
26
|
+
version: parsedPkgJson.version || constants_1.UNDEFINED_VERSION,
|
|
26
27
|
name: parsedPkgJson.name,
|
|
27
28
|
};
|
|
28
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-workspace.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/pnpm/parse-workspace.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AACrC,6BAA6B;AAC7B,kCAAuC;AAMvC,iEAA2D;AAE3D,mDAAgE;AAEhE,uCAAqD;AACrD,mCAA0C;
|
|
1
|
+
{"version":3,"file":"parse-workspace.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/pnpm/parse-workspace.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,23 +5,18 @@ const path = require("path");
|
|
|
5
5
|
const fs = require("fs");
|
|
6
6
|
const __1 = require("../..");
|
|
7
7
|
const util_1 = require("../util");
|
|
8
|
-
const semver_1 = require("semver");
|
|
9
8
|
const error_catalog_nodejs_public_1 = require("@snyk/error-catalog-nodejs-public");
|
|
10
9
|
const out_of_sync_error_1 = require("../../errors/out-of-sync-error");
|
|
11
10
|
const debugModule = require("debug");
|
|
11
|
+
const constants_1 = require("./constants");
|
|
12
12
|
const debug = debugModule('snyk-pnpm-workspaces');
|
|
13
13
|
const getPnpmChildNode = (name, depInfo, pkgs, strictOutOfSync, includeOptionalDeps, includeDevDeps, lockfileParser) => {
|
|
14
|
-
|
|
15
|
-
? depInfo.version
|
|
16
|
-
: lockfileParser.excludeTransPeerDepsVersions(depInfo.version);
|
|
14
|
+
const resolvedVersion = lockfileParser.excludeTransPeerDepsVersions(depInfo.version);
|
|
17
15
|
let childNodeKey = `${name}@${resolvedVersion}`;
|
|
18
16
|
// For aliases, the version is the dependency path that
|
|
19
17
|
// shows up in the packages section of lockfiles
|
|
20
|
-
if (lockfileParser.resolvedPackages[
|
|
21
|
-
childNodeKey = lockfileParser.resolvedPackages[
|
|
22
|
-
const pkgData = pkgs[childNodeKey];
|
|
23
|
-
name = pkgData.name;
|
|
24
|
-
resolvedVersion = pkgData.version;
|
|
18
|
+
if (lockfileParser.resolvedPackages[resolvedVersion]) {
|
|
19
|
+
childNodeKey = lockfileParser.resolvedPackages[resolvedVersion];
|
|
25
20
|
}
|
|
26
21
|
if (!pkgs[childNodeKey]) {
|
|
27
22
|
if (strictOutOfSync && !/^file:/.test(depInfo.version)) {
|
|
@@ -36,7 +31,7 @@ const getPnpmChildNode = (name, depInfo, pkgs, strictOutOfSync, includeOptionalD
|
|
|
36
31
|
return {
|
|
37
32
|
id: childNodeKey,
|
|
38
33
|
name: name,
|
|
39
|
-
version: resolvedVersion,
|
|
34
|
+
version: resolvedVersion || constants_1.UNDEFINED_VERSION,
|
|
40
35
|
dependencies: {},
|
|
41
36
|
isDev: depInfo.isDev,
|
|
42
37
|
missingLockFileEntry: true,
|
|
@@ -53,9 +48,9 @@ const getPnpmChildNode = (name, depInfo, pkgs, strictOutOfSync, includeOptionalD
|
|
|
53
48
|
? (0, util_1.getGraphDependencies)(depData.optionalDependencies || {}, depInfo.isDev)
|
|
54
49
|
: {};
|
|
55
50
|
return {
|
|
56
|
-
id: `${name}@${depData.version}`,
|
|
57
|
-
name: name,
|
|
58
|
-
version:
|
|
51
|
+
id: `${depData.name}@${depData.version}`,
|
|
52
|
+
name: depData.name,
|
|
53
|
+
version: depData.version || constants_1.UNDEFINED_VERSION,
|
|
59
54
|
dependencies: Object.assign(Object.assign(Object.assign({}, dependencies), optionalDependencies), devDependencies),
|
|
60
55
|
isDev: depInfo.isDev,
|
|
61
56
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/pnpm/utils.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;AAC7B,yBAAyB;AACzB,6BAAqC;AACrC,kCAA+C;AAG/C,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../lib/dep-graph-builders/pnpm/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED