You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Bug]: SBOM shows the resolved version, not the wheel version, when the wheel has a local version #1375
Fromager can build a wheel that has a local version, for example 0.5.5+local.1.
A patch can add the local version.
The SBOM in the wheel does not show this version. The SBOM shows the resolved version 0.5.5.
PR #1371 makes the document name and namespace use the purl.version value.
If purl.version is not set, the SBOM still uses the resolved version in all fields.
The SBOM must identify the wheel that contains it. At this time, the SBOM identifies the upstream release.
The wheel file name and the METADATA file show 0.5.5+local.1. The SBOM shows 0.5.5. The data in one wheel does not agree.
Scanners use the SBOM version and purl to find vulnerabilities. A scanner can think that the wheel is the upstream release.
Then the scanner can show vulnerabilities that a patch fixed. The scanner can also miss the local changes.
You can set purl.version for each package to get the correct version.
If you forget this setting, fromager does not show an error or a warning. The SBOM is incorrect, and nobody knows.
Steps to reproduce
Install fromager from the main branch, at commit 45241aad or a later commit.
Fromager 0.101.0 also shows the problem.
Make the file overrides/settings.yaml with this content:
Activity