mbox series

[blacksail,0/3] spdx30: fix the source download enrichment

Message ID 20261111173526.3653122-1-stondo@gmail.com
Headers show
Series spdx30: fix the source download enrichment | expand

Message

Stefano Tondo Nov. 11, 2026, 5:35 p.m. UTC
Hi Yoann,

This series backports two spdx30 fixes from master to blacksail, plus
their tests. The same fixes go to wrynose in a separate series.

Blacksail has 9f1825e74d ("spdx30: Add Git version and PURL to source
downloads"). It adds the commit hash as version and a purl to the Git
source downloads in the SPDX. That code has two bugs, and master fixed
both:

1. spdx30: Make source download enrichment part of the task signature
   (e57ec14f8d)

   The enrichment code is in two functions whose names start with an
   underscore. bitbake leaves such functions out of the task
   signature. So do_create_spdx did not track them, or the
   SPDX_GIT_PURL_MAPPINGS variable that they read. After a change,
   bitbake restored the old SPDX from sstate. The fix renames the two
   functions. As a side effect, the do_create_spdx signature of every
   recipe changes once.

2. spdx30: Enrich gitsm source downloads like git ones (1e5146d8f9)

   This one can look like a feature, but I think it is a fix.
   9f1825e74d enriches Git source downloads, but it checks only
   fd.type == "git". gitsm is the Git fetcher with submodule support,
   and it has the same revision. So a recipe that changes from git://
   to gitsm:// loses the version and the purl of its main repository,
   with no warning. The fix is one line.

3. oeqa/selftest: Add tests for source download enrichment
   (3ca309cbd3)

   Two selftests for patches 1 and 2, which fail without them. If you
   take only fixes, you can drop this patch. Patchwork can show it as
   accepted already, because a March commit (9a622a2062) has the same
   subject.

I tested the series with oe-selftest -r spdx.SPDX30Check on blacksail.
All 14 tests pass.

Stefano Tondo (3):
  spdx30: Make source download enrichment part of the task signature
  spdx30: Enrich gitsm source downloads like git ones
  oeqa/selftest: Add tests for source download enrichment

 meta/lib/oe/spdx30_tasks.py          | 10 +++---
 meta/lib/oeqa/selftest/cases/spdx.py | 47 ++++++++++++++++++++++++++++
 2 files changed, 52 insertions(+), 5 deletions(-)