Skip to content

Commit 2e1f281

Browse files
Strum355claude
andcommitted
fix(yarn-berry): add --all flag and regenerate listings from real CLI output
yarn info --recursive without --all only returns the workspace root, omitting workspace member dependencies entirely. Adding --all includes packages from all workspace members in the output. Test fixtures regenerated from actual yarn info output, including real virtual locators and follow-redirects resolving to 1.16.0. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 8b19678 commit 2e1f281

4 files changed

Lines changed: 35 additions & 31 deletions

File tree

src/providers/processors/yarn_berry_processor.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,10 @@ export default class Yarn_berry_processor extends Yarn_processor {
2020
* @returns {string[]} Command arguments for listing dependencies
2121
*/
2222
listCmdArgs(includeTransitive) {
23-
return ['info', includeTransitive ? '--recursive' : '--all', '--json'];
23+
// --all is needed to include workspace members in the output
24+
return includeTransitive
25+
? ['info', '--recursive', '--all', '--json']
26+
: ['info', '--all', '--json'];
2427
}
2528

2629
/**

test/providers/tst_manifests/yarn-berry/workspace_member/listing_component.json

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,25 @@
11
{
22
"value": "axios@npm:0.21.1",
33
"children": {
4-
"Version": "0.21.1"
4+
"Version": "0.21.1",
5+
"Dependencies": [
6+
{
7+
"descriptor": "follow-redirects@virtual:d192f6b3b31cd5d11a443145a3883a70c04cbd7c813c53085dbaf50263735f1162f10fdbddd53c24e162ec3bc37b90966413084323739b7cf942b8bfb4da8831#npm:^1.10.0",
8+
"locator": "follow-redirects@virtual:d192f6b3b31cd5d11a443145a3883a70c04cbd7c813c53085dbaf50263735f1162f10fdbddd53c24e162ec3bc37b90966413084323739b7cf942b8bfb4da8831#npm:1.16.0"
9+
}
10+
]
511
}
612
}
713
{
8-
"value": "follow-redirects@npm:1.15.6",
14+
"value": "member-a@workspace:packages/member-a",
915
"children": {
10-
"Version": "1.15.6"
16+
"Version": "1.0.0",
17+
"Dependencies": [
18+
{
19+
"descriptor": "axios@npm:0.21.1",
20+
"locator": "axios@npm:0.21.1"
21+
}
22+
]
1123
}
1224
}
1325
{
@@ -16,9 +28,3 @@
1628
"Version": "0.0.0"
1729
}
1830
}
19-
{
20-
"value": "member-a@workspace:packages/member-a",
21-
"children": {
22-
"Version": "1.0.0"
23-
}
24-
}

test/providers/tst_manifests/yarn-berry/workspace_member/listing_stack.json

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,39 +4,34 @@
44
"Version": "0.21.1",
55
"Dependencies": [
66
{
7-
"descriptor": "follow-redirects@npm:^1.14.0",
8-
"locator": "follow-redirects@npm:1.15.6"
7+
"descriptor": "follow-redirects@virtual:d192f6b3b31cd5d11a443145a3883a70c04cbd7c813c53085dbaf50263735f1162f10fdbddd53c24e162ec3bc37b90966413084323739b7cf942b8bfb4da8831#npm:^1.10.0",
8+
"locator": "follow-redirects@virtual:d192f6b3b31cd5d11a443145a3883a70c04cbd7c813c53085dbaf50263735f1162f10fdbddd53c24e162ec3bc37b90966413084323739b7cf942b8bfb4da8831#npm:1.16.0"
99
}
1010
]
1111
}
1212
}
1313
{
14-
"value": "follow-redirects@npm:1.15.6",
14+
"value": "follow-redirects@npm:1.16.0",
1515
"children": {
16-
"Version": "1.15.6"
16+
"Instances": 1,
17+
"Version": "1.16.0"
1718
}
1819
}
1920
{
20-
"value": "test-workspace-root@workspace:.",
21+
"value": "member-a@workspace:packages/member-a",
2122
"children": {
22-
"Version": "0.0.0",
23+
"Version": "1.0.0",
2324
"Dependencies": [
2425
{
25-
"descriptor": "member-a@workspace:packages/member-a",
26-
"locator": "member-a@workspace:packages/member-a"
26+
"descriptor": "axios@npm:0.21.1",
27+
"locator": "axios@npm:0.21.1"
2728
}
2829
]
2930
}
3031
}
3132
{
32-
"value": "member-a@workspace:packages/member-a",
33+
"value": "test-workspace-root@workspace:.",
3334
"children": {
34-
"Version": "1.0.0",
35-
"Dependencies": [
36-
{
37-
"descriptor": "axios@npm:^0.21.1",
38-
"locator": "axios@npm:0.21.1"
39-
}
40-
]
35+
"Version": "0.0.0"
4136
}
4237
}

test/providers/tst_manifests/yarn-berry/workspace_member/stack_expected_sbom.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,10 @@
2222
},
2323
{
2424
"name": "follow-redirects",
25-
"version": "1.15.6",
26-
"purl": "pkg:npm/follow-redirects@1.15.6",
25+
"version": "1.16.0",
26+
"purl": "pkg:npm/follow-redirects@1.16.0",
2727
"type": "library",
28-
"bom-ref": "pkg:npm/follow-redirects@1.15.6"
28+
"bom-ref": "pkg:npm/follow-redirects@1.16.0"
2929
}
3030
],
3131
"dependencies": [
@@ -38,11 +38,11 @@
3838
{
3939
"ref": "pkg:npm/axios@0.21.1",
4040
"dependsOn": [
41-
"pkg:npm/follow-redirects@1.15.6"
41+
"pkg:npm/follow-redirects@1.16.0"
4242
]
4343
},
4444
{
45-
"ref": "pkg:npm/follow-redirects@1.15.6",
45+
"ref": "pkg:npm/follow-redirects@1.16.0",
4646
"dependsOn": []
4747
}
4848
]

0 commit comments

Comments
 (0)