Skip to content

fix(libjcat): pin f43 0.2.6 to fix pkcs7-self-signed-pq-gnutls %check failure#18106

Open
WithEnoughCoffee wants to merge 1 commit into
microsoft:4.0from
WithEnoughCoffee:fix/libjcat-0.2.6-f43
Open

fix(libjcat): pin f43 0.2.6 to fix pkcs7-self-signed-pq-gnutls %check failure#18106
WithEnoughCoffee wants to merge 1 commit into
microsoft:4.0from
WithEnoughCoffee:fix/libjcat-0.2.6-f43

Conversation

@WithEnoughCoffee

Copy link
Copy Markdown
Contributor

Summary

The AZL4 libjcat %check build fails in the pkcs7-self-signed-pq-gnutls self-test: on AZL4 (GnuTLS 3.8.13) the system crypto-policy cannot enable ML-DSA-87 at runtime, and libjcat 0.2.5 aborts via g_assert_no_error.

The global Fedora 43 snapshot is frozen at 2026-02-24, so azldev comp update alone stays on 0.2.5. This pins libjcat to Fedora f43 2ea787b (0.2.6) via spec.upstream-commit, matching the existing per-component pin pattern.

Why this is the correct fix (not a test disable)

0.2.6 is an upstream self-skip: when the signature can't be created/verified because ML-DSA isn't available, the test now calls g_test_skip("ML-MDA cannot be enabled at runtime, skipping") instead of asserting. 0.2.5 lacked this guard. This is upstream behavior, not a downstream test removal.

Changes

  • New base/comps/libjcat/libjcat.comp.toml pinning upstream-commit = 2ea787b…, with rationale and a # TODO: to drop the pin once the global snapshot advances past 2026-04-14 (same convention as golang.comp.toml).
  • Removed the inline [components.libjcat] entry from components.toml.
  • Regenerated locks/libjcat.lock and rendered specs/l/libjcat/ (Version 0.2.5→0.2.6, updated sources SHA512).

Validation

  • azldev comp updatechanged=0 upToDate=1; renderCHANGED=false (CI-consistent).
  • Rebuilt locally: meson test passes (PQ test skips cleanly); jcat-tool reports 0.2.6; libraries resolve in mock.

… failure

Pin libjcat to Fedora f43 commit 2ea787b (0.2.6, 2026-04-14). In 0.2.6 the
pkcs7-self-signed-pq-gnutls self-test skips (instead of failing) when the
system crypto-policy cannot enable ML-DSA-87 at runtime — the failure seen
on AZL4 with GnuTLS 3.8.13. The default AZL4 Fedora 43 snapshot (2026-02-24)
predates this commit, so the build otherwise stays on 0.2.5 and fails.

Per-component snapshot overrides are not allowed, so spec.upstream-commit
is used (takes priority over the global snapshot). Moved from an inline
entry in components.toml to a dedicated .comp.toml with rationale.
Upstream fixes: hughsie/libjcat 156f0101, 5de47e86, 1952439e (issue microsoft#195).
https://src.fedoraproject.org/rpms/libjcat/c/2ea787baf270ee42d43911b0b06dc0ea4a997179?branch=f43
Copilot AI review requested due to automatic review settings July 23, 2026 23:26
@WithEnoughCoffee
WithEnoughCoffee requested a review from a team as a code owner July 23, 2026 23:26
@WithEnoughCoffee

Copy link
Copy Markdown
Contributor Author

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
3 pipeline(s) were filtered out due to trigger conditions.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Pins libjcat to Fedora 43’s 0.2.6 release, allowing unsupported ML-DSA tests to skip instead of failing.

Changes:

  • Moves libjcat to a dedicated pinned component definition.
  • Updates the lock file and rendered package to 0.2.6.
  • Regenerates the source checksum and changelog.

Reviewed changes

Copilot reviewed 4 out of 5 changed files in this pull request and generated no comments.

Show a summary per file
File Description
base/comps/libjcat/libjcat.comp.toml Defines and documents the Fedora commit pin.
base/comps/components.toml Removes the former unmodified inline entry.
locks/libjcat.lock Locks the selected Fedora commit.
specs/l/libjcat/libjcat.spec Renders version 0.2.6 and its changelog.
specs/l/libjcat/sources Updates the source archive checksum.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants