Skip to content

Commit e76c4af

Browse files
authored
Merge pull request #260 from snyk/fix/OSM-2314/handle-codelab-references-pnpm
fix: [OSM-2314] handle codelab references in pnpm
2 parents 0c68f7f + 231f4cd commit e76c4af

File tree

14 files changed

+228
-3
lines changed

14 files changed

+228
-3
lines changed

lib/dep-graph-builders/pnpm/utils.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@ export const getPnpmChildNode = (
3131
if (lockfileParser.resolvedPackages[resolvedVersion]) {
3232
childNodeKey = lockfileParser.resolvedPackages[resolvedVersion];
3333
}
34+
if (lockfileParser.resolvedPackages[childNodeKey]) {
35+
childNodeKey = lockfileParser.resolvedPackages[childNodeKey];
36+
}
3437
if (!pkgs[childNodeKey]) {
3538
if (strictOutOfSync && !/^file:/.test(depInfo.version)) {
3639
const errMessage =
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
{
2+
"schemaVersion": "1.3.0",
3+
"pkgManager": {
4+
"name": "pnpm"
5+
},
6+
"pkgs": [
7+
{
8+
9+
"info": {
10+
"name": "codelab-ref-deps",
11+
"version": "0.1.0"
12+
}
13+
},
14+
{
15+
"id": "@snyk/[email protected]",
16+
"info": {
17+
"name": "@snyk/gemfile",
18+
"version": "0.0.0"
19+
}
20+
}
21+
],
22+
"graph": {
23+
"rootNodeId": "root-node",
24+
"nodes": [
25+
{
26+
"nodeId": "root-node",
27+
"pkgId": "[email protected]",
28+
"deps": [
29+
{
30+
"nodeId": "@snyk/[email protected]"
31+
}
32+
]
33+
},
34+
{
35+
"nodeId": "@snyk/[email protected]",
36+
"pkgId": "@snyk/[email protected]",
37+
"deps": [],
38+
"info": {
39+
"labels": {
40+
"scope": "prod"
41+
}
42+
}
43+
}
44+
]
45+
}
46+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"name": "codelab-ref-deps",
3+
"version": "0.1.0",
4+
"private": true,
5+
"dependencies": {
6+
"@snyk/gemfile": "https://codeload.github.com/snyk/gemfile/tar.gz/fff475b"
7+
}
8+
}

test/jest/dep-graph-builders/fixtures/pnpm-lock-v5/codelab-ref-deps/pnpm-lock.yaml

Lines changed: 16 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

test/jest/dep-graph-builders/fixtures/pnpm-lock-v5/git-protocol-peer-deps/expected.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -635,4 +635,4 @@
635635
}
636636
]
637637
}
638-
}
638+
}
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
{
2+
"schemaVersion": "1.3.0",
3+
"pkgManager": {
4+
"name": "pnpm"
5+
},
6+
"pkgs": [
7+
{
8+
9+
"info": {
10+
"name": "codelab-ref-deps",
11+
"version": "0.1.0"
12+
}
13+
},
14+
{
15+
"id": "@snyk/[email protected]",
16+
"info": {
17+
"name": "@snyk/gemfile",
18+
"version": "0.0.0"
19+
}
20+
}
21+
],
22+
"graph": {
23+
"rootNodeId": "root-node",
24+
"nodes": [
25+
{
26+
"nodeId": "root-node",
27+
"pkgId": "[email protected]",
28+
"deps": [
29+
{
30+
"nodeId": "@snyk/[email protected]"
31+
}
32+
]
33+
},
34+
{
35+
"nodeId": "@snyk/[email protected]",
36+
"pkgId": "@snyk/[email protected]",
37+
"deps": [],
38+
"info": {
39+
"labels": {
40+
"scope": "prod"
41+
}
42+
}
43+
}
44+
]
45+
}
46+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"name": "codelab-ref-deps",
3+
"version": "0.1.0",
4+
"private": true,
5+
"dependencies": {
6+
"@snyk/gemfile": "https://codeload.github.com/snyk/gemfile/tar.gz/fff475b"
7+
}
8+
}

test/jest/dep-graph-builders/fixtures/pnpm-lock-v6/codelab-ref-deps/pnpm-lock.yaml

Lines changed: 19 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

test/jest/dep-graph-builders/fixtures/pnpm-lock-v6/git-protocol-peer-deps/expected.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -635,4 +635,4 @@
635635
}
636636
]
637637
}
638-
}
638+
}
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
{
2+
"schemaVersion": "1.3.0",
3+
"pkgManager": {
4+
"name": "pnpm"
5+
},
6+
"pkgs": [
7+
{
8+
9+
"info": {
10+
"name": "codelab-ref-deps",
11+
"version": "0.1.0"
12+
}
13+
},
14+
{
15+
"id": "@snyk/[email protected]",
16+
"info": {
17+
"name": "@snyk/gemfile",
18+
"version": "0.0.0"
19+
}
20+
}
21+
],
22+
"graph": {
23+
"rootNodeId": "root-node",
24+
"nodes": [
25+
{
26+
"nodeId": "root-node",
27+
"pkgId": "[email protected]",
28+
"deps": [
29+
{
30+
"nodeId": "@snyk/[email protected]"
31+
}
32+
]
33+
},
34+
{
35+
"nodeId": "@snyk/[email protected]",
36+
"pkgId": "@snyk/[email protected]",
37+
"deps": [],
38+
"info": {
39+
"labels": {
40+
"scope": "prod"
41+
}
42+
}
43+
}
44+
]
45+
}
46+
}

0 commit comments

Comments
 (0)