Skip to content

Commit e5ca10d

Browse files
committed
fix(reporter): Fix the creation of first level dependency relationships
As of [1] the SPDX document was changed to have separate entries for all projects and sub-projects instead of a single artificial root project containing all dependencies. While excluded packages are not included in the package, the implementation [1] accidentally creates (dangling) relationships to such excluded packages, see [2]. Fix the issue visible in [2] by the code change further up and an analog issue not visible in the expected result diff with the code change some lines further down. Fixes #7487. [1] b471544 [2] b471544#diff-6de35dd2aff1f92b7f5ea558d3f77e02d0d596dd4ce2a8199056cfb31b47fcabR181-R184 Signed-off-by: Frank Viernau <[email protected]>
1 parent 4f78499 commit e5ca10d

File tree

3 files changed

+4
-9
lines changed

3 files changed

+4
-9
lines changed

plugins/reporters/spdx/src/funTest/assets/spdx-document-reporter-expected-output.spdx.json

-4
Original file line numberDiff line numberDiff line change
@@ -240,10 +240,6 @@
240240
"spdxElementId" : "SPDXRef-Package-Maven-seventh-package-group-seventh-package-0.0.1",
241241
"relationshipType" : "GENERATED_FROM",
242242
"relatedSpdxElement" : "SPDXRef-Package-Maven-seventh-package-group-seventh-package-0.0.1-source-artifact"
243-
}, {
244-
"spdxElementId" : "SPDXRef-Project-Maven-first-project-group-first-project-name-0.0.1",
245-
"relationshipType" : "DEPENDS_ON",
246-
"relatedSpdxElement" : "SPDXRef-Package-Maven-fifth-package-group-fifth-package-0.0.1"
247243
}, {
248244
"spdxElementId" : "SPDXRef-Project-Maven-first-project-group-first-project-name-0.0.1",
249245
"relationshipType" : "DEPENDS_ON",

plugins/reporters/spdx/src/funTest/assets/spdx-document-reporter-expected-output.spdx.yml

-3
Original file line numberDiff line numberDiff line change
@@ -241,9 +241,6 @@ relationships:
241241
- spdxElementId: "SPDXRef-Package-Maven-seventh-package-group-seventh-package-0.0.1"
242242
relationshipType: "GENERATED_FROM"
243243
relatedSpdxElement: "SPDXRef-Package-Maven-seventh-package-group-seventh-package-0.0.1-source-artifact"
244-
- spdxElementId: "SPDXRef-Project-Maven-first-project-group-first-project-name-0.0.1"
245-
relationshipType: "DEPENDS_ON"
246-
relatedSpdxElement: "SPDXRef-Package-Maven-fifth-package-group-fifth-package-0.0.1"
247244
- spdxElementId: "SPDXRef-Project-Maven-first-project-group-first-project-name-0.0.1"
248245
relationshipType: "DEPENDS_ON"
249246
relatedSpdxElement: "SPDXRef-Package-Maven-first-package-group-first-package-0.0.1"

plugins/reporters/spdx/src/main/kotlin/SpdxDocumentModelMapper.kt

+4-2
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,8 @@ internal object SpdxDocumentModelMapper : Logging {
7272

7373
ortResult.getDependencies(
7474
id = project.id,
75-
maxLevel = 1
75+
maxLevel = 1,
76+
omitExcluded = true
7677
).mapTo(relationships) { dependency ->
7778
SpdxRelationship(
7879
spdxElementId = spdxProjectPackage.spdxId,
@@ -96,7 +97,8 @@ internal object SpdxDocumentModelMapper : Logging {
9697

9798
ortResult.getDependencies(
9899
id = pkg.id,
99-
maxLevel = 1
100+
maxLevel = 1,
101+
omitExcluded = true
100102
).mapTo(relationships) { dependency ->
101103
SpdxRelationship(
102104
spdxElementId = binaryPackage.spdxId,

0 commit comments

Comments
 (0)