mirror of
https://github.com/anchore/syft.git
synced 2026-10-30 14:02:26 +01:00
this PR makes the following changes to update the underlying license model to have more expressive capabilities it also provides some guarantee's surrounding the license values themselves - Licenses are updated from string -> pkg.LicenseSet which contain pkg.License with the following fields: - original `Value` read by syft - If it's possible to construct licenses will always have a valid SPDX expression for downstream consumption - the above is run against a generated list of SPDX license ID to try and find the correct ID - SPDX concluded vs declared is added to the new struct - URL source for license is added to the new struct - Location source is added to the new struct to show where the expression was pulled from
69 lines
1.9 KiB
Plaintext
69 lines
1.9 KiB
Plaintext
{
|
|
"spdxVersion": "SPDX-2.3",
|
|
"dataLicense": "CC0-1.0",
|
|
"SPDXID": "SPDXRef-DOCUMENT",
|
|
"name": "user-image-input",
|
|
"documentNamespace": "https://anchore.com/syft/image/user-image-input-2cc737fb-af51-4e4b-9395-cceabcc305eb",
|
|
"creationInfo": {
|
|
"licenseListVersion": "3.20",
|
|
"creators": [
|
|
"Organization: Anchore, Inc",
|
|
"Tool: syft-v0.42.0-bogus"
|
|
],
|
|
"created": "2023-05-09T17:11:26Z"
|
|
},
|
|
"packages": [
|
|
{
|
|
"name": "package-1",
|
|
"SPDXID": "SPDXRef-Package-python-package-1-125840abc1c66dd7",
|
|
"versionInfo": "1.0.1",
|
|
"downloadLocation": "NOASSERTION",
|
|
"sourceInfo": "acquired package info from installed python package manifest file: /somefile-1.txt",
|
|
"licenseConcluded": "NOASSERTION",
|
|
"licenseDeclared": "MIT",
|
|
"copyrightText": "NOASSERTION",
|
|
"externalRefs": [
|
|
{
|
|
"referenceCategory": "SECURITY",
|
|
"referenceType": "cpe23Type",
|
|
"referenceLocator": "cpe:2.3:*:some:package:1:*:*:*:*:*:*:*"
|
|
},
|
|
{
|
|
"referenceCategory": "PACKAGE-MANAGER",
|
|
"referenceType": "purl",
|
|
"referenceLocator": "a-purl-1"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "package-2",
|
|
"SPDXID": "SPDXRef-Package-deb-package-2-958443e2d9304af4",
|
|
"versionInfo": "2.0.1",
|
|
"downloadLocation": "NOASSERTION",
|
|
"sourceInfo": "acquired package info from DPKG DB: /somefile-2.txt",
|
|
"licenseConcluded": "NOASSERTION",
|
|
"licenseDeclared": "NOASSERTION",
|
|
"copyrightText": "NOASSERTION",
|
|
"externalRefs": [
|
|
{
|
|
"referenceCategory": "SECURITY",
|
|
"referenceType": "cpe23Type",
|
|
"referenceLocator": "cpe:2.3:*:some:package:2:*:*:*:*:*:*:*"
|
|
},
|
|
{
|
|
"referenceCategory": "PACKAGE-MANAGER",
|
|
"referenceType": "purl",
|
|
"referenceLocator": "pkg:deb/debian/package-2@2.0.1"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"relationships": [
|
|
{
|
|
"spdxElementId": "SPDXRef-DOCUMENT",
|
|
"relatedSpdxElement": "SPDXRef-DOCUMENT",
|
|
"relationshipType": "DESCRIBES"
|
|
}
|
|
]
|
|
}
|