Open Yannic opened 4 days ago
rules_license
has 37 users in the BCR: https://registry.bazel.build/modules/rules_license. Is that going to become a forwarding shim to package_metadata
or are we expecting those users to migrate?
rules_license
will become a shim to package_metadata
. I think the expectation is that people still migrate to use package_metadata
directly instead of going through the shim, but we'll make sure that there's a smooth migration path with the shims
This has been approved by the SIG on 2024-11-26: https://docs.google.com/document/d/1YGCYAGLzTfqSOgRFVsB8hDz-kEoTgTEKKp9Jd07TJ5c/edit?tab=t.0#heading=h.whgqs97auf4i
As discussed in the SIG meeting a few weeks ago, we'd like to move license/compliance/provenance rules out of
bazelbuild/rules_license
and make it owned by the community.Therefore, we'd like to create
bazel-contrib/supply-chain
to host the rules and providers for declaring package metadata like licenses.This will be a new GitHub repo with multiple bzlmod repos (looking to start with 2, but planning to extend over time to cover other areas of the supply chain).
package_metadata
will contain providers for declaring package metadata (e.g., PURL of the package, its license, GH repo it's hosted on, ...) and rules for injecting the providers into the build graph (e.g., viapackage(default_package_metadata=["//:metadata"])
. We expect that virtually every bzlmod repo will depend on this (including rule sets), so we're making this a separate repo without any dependencies to not pull in any rules/languages that users/companies might not want and thus prevents them from usingpackage_metadata
.rules_sbom
will contain rules that generate a SBOM (file) for a target by traversing the transitive dependencies to collectpackage_metadata
for everything in the transitive closure of said target.Checklist: