Skip to content

Commit 067ee97

Browse files
committed
fix: update after review
1 parent 80c7920 commit 067ee97

2 files changed

Lines changed: 798 additions & 33 deletions

File tree

src/providers/rust_cargo.js

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -375,6 +375,12 @@ function addTransitiveDeps(sbom, metadata, packageId, ignoredDeps, visited) {
375375
if (!depPackage) {continue}
376376
if (isDepIgnored(depPackage.name, ignoredDeps)) {continue}
377377

378+
if (depPackage.source == null) {
379+
// Path dependency — don't add to SBOM, but still walk its deps
380+
addTransitiveDeps(sbom, metadata, depId, ignoredDeps, visited)
381+
continue
382+
}
383+
378384
let depPurl = toPurl(depPackage.name, depPackage.version)
379385
sbom.addDependency(sourcePurl, depPurl)
380386
addTransitiveDeps(sbom, metadata, depId, ignoredDeps, visited)
@@ -400,6 +406,7 @@ function addDirectDeps(sbom, metadata, packageId, parentPurl, ignoredDeps) {
400406
let depPackage = findPackageById(metadata, depId)
401407
if (!depPackage) {continue}
402408
if (isDepIgnored(depPackage.name, ignoredDeps)) {continue}
409+
if (depPackage.source == null) {continue}
403410

404411
let depPurl = toPurl(depPackage.name, depPackage.version)
405412
sbom.addDependency(parentPurl, depPurl)
@@ -454,13 +461,9 @@ function findResolveNode(metadata, packageId) {
454461
* @private
455462
*/
456463
function getWorkspaceDepsFromManifest(manifest) {
457-
try {
458-
let content = fs.readFileSync(manifest, 'utf-8')
459-
let parsed = parseToml(content)
460-
return Object.keys(parsed.workspace?.dependencies || {})
461-
} catch (_) {
462-
return []
463-
}
464+
let content = fs.readFileSync(manifest, 'utf-8')
465+
let parsed = parseToml(content)
466+
return Object.keys(parsed.workspace?.dependencies || {})
464467
}
465468

466469
/**

0 commit comments

Comments
 (0)