Repository navigation
chore: update native c2pa SDK to 0.91.7 - #280
Merged
Merged
Conversation
Version the Emscripten artifact cache to avoid retaining older native libraries. Document separately managed resolver and build-tool TLS stores. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
tmathern
reviewed
Oct 26, 2026
tmathern
requested changes
Oct 26, 2026
Preserve tmathern's original version-bump commit alongside the native SDK 0.91.7 rollout. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Address PR #280 review feedback by keeping release-specific TLS and native library update guidance out of the README. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
tmathern
approved these changes
Oct 27, 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.
Summary
C2PA_VERSIONselector from0.91.6to the publishedc2pa-v0.91.7release, which includes upstream eMudhra TLS distrust updates. CMake platform downloads and CI inherit this selector; the Emscripten download also derives its version from it.0.26.16to0.26.17by merging its original commitc99d87734e5bfe33e9a6aa90dd1e6be136bda81e, preserving tmathern's authorship and commit history. The native SDK selector remains0.91.7.#279 is now incorporated into this PR. Its complete diff contains only the project version bump in
CMakeLists.txt; it contains no release-notes file changes. The nightly preflight #270 remains untouched. No repository PR template is present.Additional TLS / certificate dependencies
src/CMakeLists.txt:120-129,299-315); no separate C++ libcurl/OpenSSL TLS client or bundled public CA store was found in the tracked wrapper sources. On the tested macOS ARM64 release,otool -Lshows no dynamic libcurl/OpenSSL dependency in either shipped library. This does not prove trust behavior on every platform or inspect statically linked internals.include/c2pa.hpp:400-409,src/c2pa_context.cpp:193-208). The Emscripten example usesemscripten_fetch(examples/emscripten_example.cpp:86-114): update the browser/JavaScript host's TLS trust independently; no host CA dependency is pinned here.src/CMakeLists.txt:12,120-129,tests/CMakeLists.txt:4-9) and command-line curl (Makefile:150-163), independently of the SDK roots. This host's CMake links system libcurl; curl reports SecureTransport/LibreSSL. Build hosts need their vendor's incident remediation, including cross-signed certificate paths, not only an SDK update.Dockerfile.test:2-13uses Alpine 3.19 and unversionedca-certificatesfor build tooling. A patched CA package is not guaranteed by this file; incident guidance lists Alpine20261020-r0. The old distro/tooling remains an externally managed build/test gap; no speculative distro migration was included.C2PA_RS_PATHandC2PA_C_LIB_OVERRIDEare intentional consumer-controlled escape hatches (src/CMakeLists.txt:81-87,299-306), not automatically upgraded by the release selector. README now explicitly requires updating them.Incident reference: https://emudhra.we-have-a-problem.com/ (includes affected roots, intermediates, cross-signs and patched stores). No blanket claim that all C++ hosts are remediated.
Validation
cmake -S . -B build/debug -G Ninja -DCMAKE_BUILD_TYPE=Debugandcmake --build build/debug --parallel 4: passed on macOS ARM64; C/C++ SDK, C and C++ tests, and examples compiled. Repeated successfully after merging chore: Bump project version to 0.26.17 #279.ctest --test-dir build/debug --output-on-failure: 2/2 CTest targets passed (C++ suite and C suite), including after merging chore: Bump project version to 0.26.17 #279.git merge-base --is-ancestor c99d87734e5bfe33e9a6aa90dd1e6be136bda81e HEAD: passed, confirming the original colleague-authored commit is preserved.c2pa_version(): exactlyc2pa-c-ffi/0.91.7 c2pa-rs/0.91.7.8a0c828e41a5c8a81d83426085b4e4dfca66a7e7b3d8fee3f31089812e63b5fd.6b7d8a183cf74c718e58dea8994572f4d415c2faa9fc2d62f161f0589069a30d; archive containsinclude/c2pa.handlib/libc2pa_c.a.make -n emscripten-example: confirmed 0.91.7 URL and versioned cache. Full Emscripten build not run:emccis unavailable.git diff --check: passed. Existing download declarations have no pinned checksums to update; no new checksum mechanism was introduced.