Skip to content

fix: implement resolution of javascript non-pnpm dependencies#47

Open
zilosz wants to merge 2 commits into
SBOMit:masterfrom
zilosz:fix-js-resolution
Open

fix: implement resolution of javascript non-pnpm dependencies#47
zilosz wants to merge 2 commits into
SBOMit:masterfrom
zilosz:fix-js-resolution

Conversation

@zilosz
Copy link
Copy Markdown

@zilosz zilosz commented Apr 24, 2026

Fixes #39

Description

Projects using non-pnpm Javascript package managers, namely npm and yarn, had dependencies in node_modules reported as "remaining files" in the SBOM rather than as packages.

This PR makes it so such dependencies are accurately parsed as packages by the resolver. They now are reported as unversioned packages in the SBOM.

Changes Made

pkg/resolver/javascript.go:
Expanded regex matching to capture packages in non-pnpm node_modules layouts. If a file's information cannot be extracted when treated as a pnpm package, we use standard non-pnpm extraction as a fallback option.

Testing

I ran sbomit on two Javascript projects with the same dependency installed: one used npm, the other pnpm. I confirmed that the resulting SBOMs reflected the behavior described above.

zilosz added 2 commits April 23, 2026 18:22
Signed-off-by: zilosz <mfecko@purdue.edu>
Signed-off-by: zilosz <mfecko@purdue.edu>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bug: Incomplete JavaScript/NPM Dependency Resolution

1 participant