Scorecard Infrastructure Migration
v5.6.0 is the first Scorecard release since our hosted services moved! 🎉
The weekly batch scans and the REST API now run on AboutCode Foundation
infrastructure on AWS, operated in partnership with the Scorecard Steering Committee.
AboutCode is a public-benefit non-profit that already consumes Scorecard data and runs similar
large-scale data services, including PurlDB and
VulnerableCode.
The full announcement is in #5208.
What this means for you:
-
CLI and REST API users: nothing changes. The API endpoint and the tooling are the same.
-
Scorecard Action users: Upgrade to
v2.5.0 or later. Older versions
pull images fromgcr.io, which has been retired, and will fail. -
Container images: use
ghcr.io/ossf/scorecard. Existing version tags were copied from
gcr.io/openssf/scorecardwith identical digests (v5.5.0 was already published to GHCR), so only
the registry and namespace change:- gcr.io/openssf/scorecard:<tag>@sha256:<sha> + ghcr.io/ossf/scorecard:<tag>@sha256:<sha>
-
BigQuery dataset users: the public dataset is no longer available.
-
Weekly scan inventory: to add a repository to the weekly scans, follow
ossf/scorecard-infra's contributing guide.
The pipeline and its project lists moved there. -
Allstar users: the hosted Allstar GitHub App has been retired. Allstar continues as a
Scorecard subproject; see the Allstar README for self-hosting.
Report infrastructure problems at ossf/scorecard-infra.
Thank you to AboutCode Foundation for giving Scorecard a new home, and to everyone who reported
migration issues and helped other projects update.
Action Required
- Workflow checks now read YAML aliases, so Pinned-Dependencies may report more findings. Steps
reached through an alias (uses: *anchor, aliasedrun:) were previously skipped and are now
checked by Pinned-Dependencies, Dangerous-Workflow and the other workflow-based checks. Each
aliased step counts, so a repository that reuses unpinned actions this way and wasn't already at 0
can lose score. by @justaugustus in #5287 - Library users:
checks/fileparsersignatures changed. Exported workflow helpers
(GetJobName,AnyJobsMatch,IsPackagingWorkflowand others) now take Scorecard's own workflow
types instead ofgithub.com/rhysd/actionlinttypes, and some workflow parse error messages are
worded differently. by @justaugustus in #5287 - Library users:
cron/has been removed.cron/dataandcron/configare no longer
importable; the batch-scan pipeline now lives inossf/scorecard-infra(see Scorecard
Infrastructure Migration). by @justaugustus in #5210 - Library users: Go 1.26.5 or later is required (
godirective raised from 1.26.0). by
@justaugustus in #5296
General
- Release container images are built with Go 1.27.2. by @dependabot[bot] in #5310
--format=intotooutput is now serialized withprotojson, so field names match the in-toto
specification. by @puerco in #5225- On Windows, file paths from GitHub, GitLab and Azure DevOps repositories now use forward slashes,
matching other platforms. by @pujitha24 in #5153
Azure DevOps
- Legacy Azure DevOps repository URLs are accepted and normalized to
dev.azure.com. by @JamieMagee
in #5128 - No workflow runs are returned, without querying every build, when the requested YAML pipeline
doesn't exist. by @JamieMagee in #5129 - Language-aware checks fall back to all supported languages when language analytics are
unavailable. by @JamieMagee in #5130 - A repository file larger than the archive extraction limit is now rejected instead of silently
truncated. by @Sahana2524 in #5173
Checks
Packaging
- ko publishing workflows are detected with either
imjasonh/setup-koorko-build/setup-ko;
previously the matcher never fired. by @arcaven in #5134
Pinned-Dependencies
- Actions referenced from the same repository with GitHub's
$/prefix (for exampleuses: $/.github/actions/example) are treated like./local actions and no longer reported as
unpinned. by @trask with @Kielek in #5191
Vulnerabilities
- Python requirements files no longer trigger transitive dependency resolution, which could stall
the check until it timed out. For library users,clients.ExperimentalLocalOSVClientno longer
makes network requests for transitive resolution. osv-scanner is updated to v2.5.1. by
@justaugustus with @adilalperenciftci in #5296 - Maven dependencies whose version is an unresolved build placeholder (for example
@project.version@or${revision}) are no longer reported. by @justaugustus in
#5306
Probes
- The
unsafeblockprobe also detects Java'ssun.misc.Unsafeandjdk.internal.misc.Unsafe
classes. by @thomasleplus in #4849
Docs
- 📖 Set GitLab support for Code-Review and Dependency-Update-Tool by @dvcorreia in
#4963 - 📖 docs: clarify partial credit logic for Branch-Protection tiers by @aban-alazzeh in
#5010 - 📖 Validate Security Insights in CI (and fix the schema) by @justaugustus in
#5298
Other
- 🌱 ci: use ginkgo --flake-attempts instead of nick-invision/retry for e2e tests by @alliasgher in
#5013 - 🌱 update e2e test to account for new vulns by @spencerschrock in
#5159 - 🌱 deps: Upgrade golang.org/x/crypto v0.50.0 => v0.56.0 by @justaugustus in
#5223 - 🌱 e2e/fuzz: Account for Scorecard API repo migration by @justaugustus in
#5253 - 🌱 workflows/stale: Stop closing stale pull requests by @justaugustus in
#5259 - 🌱 dependabot: Add/fix broken
exclude-patternsin gomod group by @justaugustus in
#5260 - 🌱 dependabot: Exclude
moby/buildkitandgoreleaserfrom grouped updates by
@justaugustus in #5263 - 🌱 dependabot: Exclude
google/koandgo-gitfrom grouped updates by @justaugustus in
#5269 - 🌱 go.mod: Bump go-git, containerd, sigstore-go, slack-go, go-pkcs12 by @justaugustus in
#5271 - 🌱 Bump github.com/prometheus/prometheus to v0.311.3 by @justaugustus in
#5294 - 🌱 Bump golang.org/x/net from 0.58.0 to 0.60.0 by @justaugustus in
#5311 - 🌱 Bump GoReleaser to v2.18.3 and pin it for releases by @dependabot[bot] in
#5309
Known Issues
- GitLab: Vulnerabilities returns −1 for every GitLab repository
(#5056). A fix is planned for v5.7.0
(#5180). - Vulnerabilities: npm bundled dependencies are not checked. Since the osv-scanner update,
package-lock.jsonentries without aresolvedURL, which includes bundled dependencies, are
skipped when matching known vulnerabilities. This comes from osv-scalibr; we're following up
upstream. - Pinned-Dependencies: findings reached through a YAML alias point at the anchor's line, not the
alias. How aliased steps are counted and attributed is tracked in
#5291.
New Contributors
- @dvcorreia made their first contribution in #4963
- @aban-alazzeh made their first contribution in #5010
- @alliasgher made their first contribution in #5013
- @thomasleplus made their first contribution in #4849
- @pujitha24 made their first contribution in #5153
- @Sahana2524 made their first contribution in #5173
- @arcaven made their first contribution in #5134
Full Changelog: v5.5.0...v5.6.0