Repository navigation
Conversation
|
Hi @mcc0nnell! Thank you for your pull request and welcome to our community. Action RequiredIn order to merge any pull request (code, docs, etc.), we require contributors to sign our Contributor License Agreement, and we don't seem to have one on file for you. ProcessIn order for us to review and merge your suggested changes, please sign at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need to sign the corporate CLA. Once the CLA is signed, our tooling will perform checks and validations. Afterwards, the pull request will be tagged with If you have received this in error or have any questions, please contact us at cla@meta.com. Thanks! |
|
Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Meta Open Source project. Thanks! |
Summary
.tar.gzand.tar.zst)No library, format, or build-system behavior changes.
Why
The source-release workflow already does several good things: it creates the archives from the release tag, emits SHA-256 sidecars, and signs the compressed tarballs with the release key. What is missing is a machine-verifiable link from those exact archive bytes back to the GitHub workflow/source identity, plus a machine-readable inventory of what the published archives contain.
This change keeps the existing SHA-256 and PGP evidence and adds GitHub artifact attestations on the exact files that are subsequently uploaded.
The Windows release workflow currently uses
gh release upload --clobber. A rerun can therefore replace a published ZIP under the same release asset name.The new behavior is fail-closed:
This preserves rerunability without making published artifacts mutable.
SBOM scope
The SBOMs describe the exact compressed source archives rather than a repository checkout. Syft therefore uses the archive filename as the root component name and the archive SHA-256 as its root version.
For the current
v1.5.7release, each archive yielded 36 discovered components and no dependency relationships. This is useful release inventory and artifact identity; it is not intended to claim a complete native transitive dependency graph.Validation
Tested with the currently published
v1.5.7source archives:zstd-1.5.7.tar.gzeb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3zstd-1.5.7.tar.zst5b331d961d6989dc21bb03397fc7a2a4d86bc65a14adc5ffbbce050354e30fd2Both generated CycloneDX 1.7 documents validate with CycloneDX
sbom-utility0.19.2.Additional checks:
actionlint1.7.12: PASSgit diff --check: PASS