test: build against c2pa-rs PR #2231 (split-out c2pa-raw-crypto) - #130
Open
scouten-adobe wants to merge 4 commits into
Open
test: build against c2pa-rs PR #2231 (split-out c2pa-raw-crypto)#130scouten-adobe wants to merge 4 commits into
scouten-adobe wants to merge 4 commits into
Conversation
Point the workspace `c2pa` dependency at the c2pa-rs PR branch via a git reference so CI can build against it. The lockfile is intentionally not pinned, so each CI run re-resolves the branch HEAD. PR #2231 moves `SigningAlg` into the new `c2pa_raw_crypto` crate, which does not depend on `schemars`. The generated JSON schema therefore exposes a mirror type `SigningAlgSchema` (identical serialized variants) instead of `SigningAlg`, so re-export it under the original public name in c2pa-types. NOT FOR MERGE until the c2pa-rs change is released; then bump `c2pa` back to a published crates.io version. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
🦋 Changeset detectedLatest commit: 3a55f70 The changes in this PR will be included in the next version bump. This PR includes changesets to release 3 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Contributor
|
LGTM. You just need to run |
# Conflicts: # Cargo.toml
Replays contentauth/c2pa-node-v2#69 into packages/c2pa-node, now that c2pa-node-v2 has been migrated into this monorepo. The c2pa-raw-crypto split (c2pa-rs#2231) removes the c2pa::crypto::raw_signature module (AsyncRawSigner, RawSigner, RawSignerError) and the AsyncSigner::async_raw_signer() hook. The SDK now adapts any public AsyncSigner into its internal COSE signing layer directly, so a caller-supplied raw signer is no longer needed. - Remove the AsyncRawSigner / RawSigner impls and async_raw_signer() / as_raw_signer() hooks from NeonCallbackSigner and NeonIdentityAssertionSigner, keeping their complete AsyncSigner impls. - Rewrite NeonIdentityAssertionSigner::certs() to use AsyncSigner::certs() instead of the removed raw cert_chain(). - Refresh stale Send/Sync doc comments that referenced AsyncRawSigner (including neon_credential_holder.rs). - Re-pin the c2pa git-branch dependency in Cargo.lock to the updated split branch HEAD (0.88.0). No behavior change: the async JS signing callback path is preserved, now driven through AsyncSigner::sign. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
tmathern
approved these changes
Jun 23, 2026
ale-adobe
approved these changes
Jun 24, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR exists to run CI against contentauth/c2pa-rs#2231 ("Split out c2pa-raw-crypto, take 2"). It must not be merged until that c2pa-rs change is released to crates.io.
What this does
c2padependency at the c2pa-rs PR branch via a git reference (branch = "split-out-c2pa-raw-crypto-take-2") inCargo.toml.Cargo.lockpins the current branch HEAD; the cargo build steps don't use--locked, so CI re-resolves.packages/c2pa-types/index.ts:SigningAlgnow lives in the newc2pa_raw_cryptocrate, which deliberately does not depend onschemars. The generated JSON schema therefore exposes a mirror typeSigningAlgSchema(identical serialized variants) instead ofSigningAlg.index.tsre-exports it under the original public name, so the public TypeScript API is unchanged.packages/c2pa-node(replays contentauth/c2pa-node-v2#69, now that c2pa-node-v2 has been migrated into this monorepo): the split removes thec2pa::crypto::raw_signaturemodule (AsyncRawSigner,RawSigner,RawSignerError) and theAsyncSigner::async_raw_signer()hook. Accordingly:AsyncRawSigner/RawSignerimpls and theasync_raw_signer()/as_raw_signer()overrides from bothNeonCallbackSignerandNeonIdentityAssertionSigner, keeping only their complete publicAsyncSignerimpls;NeonIdentityAssertionSigner::certs()to useAsyncSigner::certs()instead of the removed rawcert_chain();Send/Syncdoc comments that referencedAsyncRawSigner(includingneon_credential_holder.rs).AsyncSigner::sign.This branch has been brought up to date with
main(which migrated c2pa-node-v2 in aspackages/c2pa-node), and c2pa-rs#2231 has likewise been updated to current c2pa-rsmain(nowc2pa0.88.0 + the crate split).Before merge (once c2pa-rs is released)
Cargo.tomlwith the published crates.io version (currentlyc2pa = { version = "=0.88.0", ... }).index.tsandpackages/c2pa-nodesource changes stay — the crate split is permanent.Verification (local)
cargo build(wasm32) forc2pa-wasmagainst the PR branchcargo buildforc2pa-nodeagainst the PR branchnx buildfor c2pa-types, c2pa-wasm, c2pa-web (from the original run)nx lint(0 errors, from the original run)Notes
pdf,rust_native_crypto,fetch_remote_manifests,json_schema,http_reqwest) still exist in the PR.c2pa-wasm/c2pa-nodecompile with deprecation warnings from c2pa-rs's new Context-based API (Builder::from_archive,Settings::from_string, etc.) — non-blocking; worth a follow-up migration. (c2pa-rs#2206's removal of long-deprecated APIs does not affect any code here.)🤖 Generated with Claude Code