-
-
Notifications
You must be signed in to change notification settings - Fork 71
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[IDEA] feat: support PEP-770 - bundled (phantom) dependencies #831
Comments
per PEP770, pyrthon packages could ship their own SBOM - in any format. — OR — we could see whether to put that component's SBOM as a "attachment" the mime-type is disputable. maybe add some logic for proper detection? e.g. compressed + base64ed the SBOM from the original ticket above: — OR —
{
"bomFormat": "CycloneDX",
"specVersion": "1.6",
"serialNumber": "urn:uuid:3e671687-395b-41f5-a30f-a58921a69b79",
"version": 1,
"components": [
{
"bom-ref": "acme-application",
"type": "application",
"name": "Acme Application",
"version": "1.0.0",
"externalReferences": [
{
"type": "threat-model",
"url": "urn:cdx:3e671687-395b-41f5-a30f-a58921a69b79/1#acme-threatmodel"
}
]
},
{
"bom-ref": "acme-threatmodel",
"type": "data",
"name": "Acme Threat Model",
"scope": "excluded",
"data": [
{
"type": "other",
"contents": {
"attachment": {
"encoding": "base64",
"contentType": "application/pdf",
"content": "VGhyZWF0IG1vZGVsIGdvZXMgaGVyZQ=="
}
}
}
]
}
]
} asked in slack for alternatives: https://cyclonedx.slack.com/archives/CVA0G10FN/p1736440976834859 |
based on https://sethmlarson.dev/early-promising-results-with-sboms-and-python-packages
contact @sethmlarson
PEP: https://peps.python.org/pep-0770/
PEP discussion: https://discuss.python.org/t/pep-770-improving-measurability-of-python-packages-with-software-bill-of-materials/76308
goal
gather the declaration of bundled dependencies of a package, by reading its shipped SBOMs.
Warning
the PEP 770 is stil a draft, so it is unclear how declared shipped SBOMs may be detected ...
expected outcome:
followup
after implementing this, update the benchmark call andresults in https://github.com/psf/sboms-for-python-packages/tree/main/benchmark
example result
JSON based on a demo-SBOM for
Pillow==11.1.0
https://gist.github.com/sethmlarson/9b87245c99147815e8e18901f4a10444example JSON
The text was updated successfully, but these errors were encountered: