Skip to content

feat: Expand OS matrix in CI workflow#132

Merged
tmathern merged 11 commits into
mathern/globc228from
tmathern-patch-4
Feb 2, 2026
Merged

feat: Expand OS matrix in CI workflow#132
tmathern merged 11 commits into
mathern/globc228from
tmathern-patch-4

Conversation

@tmathern

@tmathern tmathern commented Jan 31, 2026

Copy link
Copy Markdown
Collaborator
  • Extend build matrix to run tests on more platforms
  • Accommodate code to run on Ubuntu 22.04 (different STL code, hits UTF-8 edge cases, so needed additional fixes around UTF-8 filepath handling)
  • Conditional test compilation to maintain test coverage, as Windows expects types a certain way for the UTF-8 test

@tmathern tmathern self-assigned this Jan 31, 2026
Remove unnecessary namespace alias for filesystem.
Removed 'windows-2022' from the OS matrix in CI workflow.
Added new constructor for Signer to take ownership of a signer pointer and updated documentation for clarity.
* fix: FIx shadowing

Added new constructor for Signer to take ownership of a signer pointer and updated documentation for clarity.

* feat: Enhance MSVC compiler and linker options

Added additional compiler and linker options for MSVC.

* fix: Enhance compiler and linker options for c2pa_cpp *nix

Added additional compiler and linker options for c2pa_cpp to enhance security and compatibility.

* fix: Move linker flags -Wl,-z,relro and -Wl,-z,now to linking

Removed linker flags for relro and now.

* feat: Adjust linker options for different platforms
* fix: Refactor null checks and improve exception handling

* Refactor Reader constructor to manage stream lifetime

* Update c2pa.cpp

* Replace string with std::string in c2pa.cpp

* Change type from ofstream to ostream in flusher

* Change member functions to const in c2pa.hpp

* Fix reserve_size function declaration syntax

* Fix supported_mime_types method signature

* Change reserve_size method to non-const

* Update c2pa.hpp

* Update c2pa.cpp
@tmathern tmathern merged commit f102375 into mathern/globc228 Feb 2, 2026
8 checks passed
tmathern added a commit that referenced this pull request Feb 2, 2026
* fix: Update CmakeList

* fix: Update comment

* Clarify compatibility comment for json library

Updated comment to clarify compatibility with older platforms.

* fix: Note

* feat: Expand OS matrix in CI workflow (#132)

* feat: Expand OS matrix in CI workflow

* Update CI workflow OS matrix

Removed 'windows-2022' and 'ubuntu-slim' from the OS matrix.

* Replace filesystem path usage with string conversion

* Add filesystem namespace for path handling

* Fix test file path for cross-platform compatibility

* Update CI workflow to include windows-2022

* Remove namespace alias for filesystem in tests

Remove unnecessary namespace alias for filesystem.

* Update CI workflow OS matrix

Removed 'windows-2022' from the OS matrix in CI workflow.

* fix: FIx shadowing (#133)

Added new constructor for Signer to take ownership of a signer pointer and updated documentation for clarity.

* fix: Additional build flags (#134)

* fix: FIx shadowing

Added new constructor for Signer to take ownership of a signer pointer and updated documentation for clarity.

* feat: Enhance MSVC compiler and linker options

Added additional compiler and linker options for MSVC.

* fix: Enhance compiler and linker options for c2pa_cpp *nix

Added additional compiler and linker options for c2pa_cpp to enhance security and compatibility.

* fix: Move linker flags -Wl,-z,relro and -Wl,-z,now to linking

Removed linker flags for relro and now.

* feat: Adjust linker options for different platforms

* fix: Refactorings and additional checks (#135)

* fix: Refactor null checks and improve exception handling

* Refactor Reader constructor to manage stream lifetime

* Update c2pa.cpp

* Replace string with std::string in c2pa.cpp

* Change type from ofstream to ostream in flusher

* Change member functions to const in c2pa.hpp

* Fix reserve_size function declaration syntax

* Fix supported_mime_types method signature

* Change reserve_size method to non-const

* Update c2pa.hpp

* Update c2pa.cpp

* fix: Use EINVAL where it was missed

* fix: FOrmat
@tmathern tmathern deleted the tmathern-patch-4 branch February 4, 2026 03:14
tmathern added a commit that referenced this pull request Mar 3, 2026
* fix: Update C2PA version to 0.71.2 (#110)

* fix: Update C2PA version to 0.70.0

* fix: Bump project version to 0.13.0

* fix: Update c2pa-rs version

* fix: Nump c2pa-rs c2pa-c-ffi version to 0.71.2

* fix: Version bump

* chore: Update c2pa version to v0.72.1 (#115)

* chore: Bump to c2pa-rs v0.73.0 (#116)

* chore: Update C2PA version to 0.73.1 (#117)

* chore: Update C2PA version to 0.73.2 (#121)

* fix: Update for move semantics (#123)

* fix: Move semantics

* fix: Undo some paranoia

* fix: COmment

* fix: Update for move semantics continu'd (#124)

* fix: Move semantics

* fix: Undo some paranoia

* fix: COmment

* fix: More move semantics

* chore: Bump C2PA version to 0.74.0 (#125)

* Update C2PA version to 0.74.0

* fix: Update test

* fix: FOmrat

* fix: formatting in documentation comments (#126)

* chore: Update C2PA version to 0.75.0

* chore: Update C2PA_VERSION to 0.75.2

* Revert version bump until all things are published

* Update C2PA version to 0.75.2 (#127)

* fix: Update C2PA version to 0.75.4 (#128)

* Update C2PA version to 0.75.3

* fix: Update C2PA version to 0.75.4

* chore: Update C2PA version to 0.75.6 (#129)

* fix: Update C2PA version to 0.75.7 (#130)

* fix: Update C2PA version to 0.75.8

* feat: Allow building from source in CMakelist (#131)

* fix: Update CmakeList

* fix: Update comment

* Clarify compatibility comment for json library

Updated comment to clarify compatibility with older platforms.

* fix: Note

* feat: Expand OS matrix in CI workflow (#132)

* feat: Expand OS matrix in CI workflow

* Update CI workflow OS matrix

Removed 'windows-2022' and 'ubuntu-slim' from the OS matrix.

* Replace filesystem path usage with string conversion

* Add filesystem namespace for path handling

* Fix test file path for cross-platform compatibility

* Update CI workflow to include windows-2022

* Remove namespace alias for filesystem in tests

Remove unnecessary namespace alias for filesystem.

* Update CI workflow OS matrix

Removed 'windows-2022' from the OS matrix in CI workflow.

* fix: FIx shadowing (#133)

Added new constructor for Signer to take ownership of a signer pointer and updated documentation for clarity.

* fix: Additional build flags (#134)

* fix: FIx shadowing

Added new constructor for Signer to take ownership of a signer pointer and updated documentation for clarity.

* feat: Enhance MSVC compiler and linker options

Added additional compiler and linker options for MSVC.

* fix: Enhance compiler and linker options for c2pa_cpp *nix

Added additional compiler and linker options for c2pa_cpp to enhance security and compatibility.

* fix: Move linker flags -Wl,-z,relro and -Wl,-z,now to linking

Removed linker flags for relro and now.

* feat: Adjust linker options for different platforms

* fix: Refactorings and additional checks (#135)

* fix: Refactor null checks and improve exception handling

* Refactor Reader constructor to manage stream lifetime

* Update c2pa.cpp

* Replace string with std::string in c2pa.cpp

* Change type from ofstream to ostream in flusher

* Change member functions to const in c2pa.hpp

* Fix reserve_size function declaration syntax

* Fix supported_mime_types method signature

* Change reserve_size method to non-const

* Update c2pa.hpp

* Update c2pa.cpp

* fix: Use EINVAL where it was missed

* fix: FOrmat

* chore: Bump c2pa-rs version to c2pa-v0.75.10

* fix: Bump to c2pa-rs v0.75.16 (#140)

* Update CMakeLists.txt

* fix: v0.75.15

* fix: Retrigger all jobs

* Update CMakeLists.txt

* fix: WinARM runner (#141)

* Update CMakeLists.txt

* fix: Bump to c2pa-rs v0.75.19

* feat: Context APIs and the related Settings API (#137)

* fix: WIP

* fix: All my debug

* fix: Debug in progress

* feat: Refactor (#138)

* fix: Skip know bad test

* fix: CLean up the example

* fix: Clean up header

* fix: Header clean up

* fix: Renaming to contextCreator

* fix: rename

* fix: rename

* fix: rename and refactor

* fix: rename and refactor

* fix: rename and refactor

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: More refactors (#139)

* fix: Skip know bad test

* fix: CLean up the example

* fix: Clean up header

* fix: Header clean up

* fix: Renaming to contextCreator

* fix: rename

* fix: rename

* fix: rename and refactor

* fix: rename and refactor

* fix: rename and refactor

* fix: rename and refactor

* fix: rename and refactor

* fix: DOn't use deprecated free methods

* fix: Start updating the frees

* fix: Continue updating the frees

* fix: Continue updating the frees

* fix: Continue updating the frees

* fix: Continue working on the design

* fix: Continue working on the design

* fix: Continue working on the design

* fix: Pointer clean up

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor for build

* fix: Fix WIndows build

* fix: Cleaning up

* fix: Add TODOs

* fix: Update naming, clean up STL

* fix: WIP - fix stream handling for files

* fix: Tests

* fix: Write test for toml and json settings

* fix: Add tests for settings combinations

* fix: Verify trust

* fix: Verify trust

* fix: Reader with trust

* fix: Clean up list

* fix: Update config

* fix: Format

* fix: Format

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: TODO dev notes

* fix: CLean before rebuild

* fix: Refactorings once more

* fix: Refactorings

* fix: Refactor streams

* fix: Streams refacotr

* fix: Refactor

* fix: Docs

* fix: Improvements in progress

* fix: Add ASAN, UBSAN

* fix: Set up sanitizers

* fix: Texts

* fix: Update workflow

* fix: Update workflow

* fix: Update workflow

* fix: Reactivate a test

* fix: reduce string copies, or try to

* ci: Revert "fix: reduce string copies, or try to"

This reverts commit 736beb5.

* fix: tests moved

* fix: Text utils

* fix: The refactoring axe is coming out

* fix: THe Ubuntu leaks

* fix: Bump to use the right c2pa-rs version

* fix: Last leak

* fix: Mem

* fix: Known leak that is not a leak

* fix: Clarify suppressor

* fix: Clarify suppressor

* fix: Add test coverage

* fix: Add test coverage for context

* fix: Add coverage

* fix: A few more tests

* fix: Comment on test

* fix: Reorg the tests

* fix: Reorg the tests

* fix: Consistency

* fix: Consistency

* fix: load archive

* fix: Intermediate signing

* fix: Multi ingredients

* fix: CLean up

* fix: Increased test-coveragae on #137 + minor bugfixes (#143)

* fix: Add a few todos

* fix: Add a few todos 2

* fix: Clean up obsolete debug ref

* fix: Add a few todos 3

* fix: WIP test coverage

* fix: Test coverage

* fix: Test coverage

* fix: Notes from API poking

* fix: Notes from API poking

* fix: Notes from API poking

* fix: Notes from API poking

* fix: COnvenience API

* fix: Refactor text fixtures use

* fix: Refactor the teeeeeeests

* fix: Refactor

* fix: Add the docs

* fix: Add the layers merging example

* fix: Add a test without relationship

* fix: One more test

* fix: One more test varation

* fix: Undo a final

* fix: Flag test as known bad

* fix: Rename tests

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: CLean up tests

* fix: Extract ingredeints from archives

* fix: Extract ingredeints from archives 2

* fix: Add a test

* fix: Builder variations

* fix: Variations in resources handling

* fix: Remove the very ugly string based test

* fix: Refactor

* fix: Refactor

* fix: Cleanup 2

* fix: Reorg

* fix: The TODOs are gone

* fix: FInish examples clean up

* fix: Refactor bytes handling (#144)

* refactor

* refactor

* fix: Refactor

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: Settings reference link

* fix: Review comments 1: toml go away! (#145)

* fix: Drop from_toml API, fix typos

* fix: MOre toml stuffs removed

* Update context.test.cpp

* fix: Review comments step 2 (#146)

* fix: Drop from_toml API, fix typos

* fix: MOre toml stuffs removed

* Update context.test.cpp

* fix: More clean up

* fix: Rely more on Rust for pointer clean up

* fix: Update coverage and simplify API (#147)

* fix: Simplify CMakeList (#148)

* fix: Update coverage and simplify API

* fix: Simplify CMakeLists

* fix: Update docs

* fix: Refactor

* fix: Shorten docs

* fix: Update

* fix: Refactored once more and clarified docs

* fix: Context verify move

* fix: Remove usunsed move

* fix: Refactor tests

* fix: One more cleanup

* fix: Remove the API I said I would

* fix: More clean up

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: Clarifying comment

* chore: Bump to c2pa-v0.75.21 (#152)

* Update CMakeLists.txt

* fix: One test is actually invalid

* fix: A few other tests are invalid

* fix: no archive and embeddable mix

* fix: Header docs (#150)

* fix: Docs

* fix: Clean up docs

* fix: Clean up docs

* fix: Clean up docs

* fix: Typos in header docs

* fix: Typos 2

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* Update c2pa.hpp

* Update test.c

* fix: Docs

* fix: Docs does not belong here

* chore: Update C2PA version to 0.76.0 (#163)

* fix: Builder::add_ingredient may fail with non-ascii characters in source_path (#161)

* fix: utf8

* fix: Add a few tests

* fix: Add a few tests 2

* fix: Add a few tests 3

* fix: Add a few tests 3

* fix: Add a few tests 3

* fix: Add a few tests 3

* fix: Add a few tests 3

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* docs: Context and Settings (#153)

* fix: Initial versions

* fix: Settings

* fix: Context

* Update settings.md

* Update context.md

* Update context.md

* Update context.md

* minor copy edits

* Copy edit

* Remove some duplication, add xrefs

* clean up edits

* Final cleanup edits

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>
Co-authored-by: Rand McKinney <crandmck@yahoo.com>

* fix: Add a file size limit for settings file read (#162)

* fix: Add a file size limit

* fix: Enforce more null checks

* fix: Enforce more null checks 2

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: Refactor (#165)

* fix: Refactor

* Delete REFACTORING_PLAN.md

* fix: Refactor

* fix: Refactor

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* docs: Working stores (#154)

* fix: Workin stores

* Update working-stores.md

* Update working-stores.md

* Update working-stores.md

* Update working-stores.md

* Update working-stores.md

* Update working-stores.md

* Copy edits, add xrefs

* Remove incomplete section

* Misc edits and add some more links, add a bit to Mermaid diagram

* Add div to xrefs not needed in doc site, other small tweaks

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>
Co-authored-by: Rand McKinney <crandmck@yahoo.com>

* docs: Re-Builder (#159)

* fix: Add docs

* docs: Clarify selective manifest construction process

Rephrase and clarify the explanation of using Builder and Reader for selective manifest construction, emphasizing the read-only nature and the importance of filtering.

* docs: typos

Removed section on recording removal actions and related C2PA actions.

* Fix formatting issues in selective-manifests.md

* Fix formatting in selective-manifests.md

* Fix formatting in selective manifests diagram

Removed newline characters in ingredient labels and updated the New Builder label for clarity.

* Initial copy edit

* fix: Refine documentation on selective manifest construction

* Fix label in selective-manifests documentation

* Update selective-manifests.md

* fix: More docs (#164)

* fix: More docs

* Update selective-manifests.md

* fix: Typos

* fix: Typos

* fix: Typos

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: typos

* Pull Q&A into separate file

* Forgot to save files

* General edits

* More edits, make headings more concise

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>
Co-authored-by: Rand McKinney <crandmck@yahoo.com>

* docs: Add draft release notes, some minor edits to other docs (#169)

* Add initial release notes

* Add links to docs from README

* Update docs/release-notes.md

Co-authored-by: tmathern <60901087+tmathern@users.noreply.github.com>

* Update docs/release-notes.md

Co-authored-by: tmathern <60901087+tmathern@users.noreply.github.com>

* Update release-notes.md

---------

Co-authored-by: tmathern <60901087+tmathern@users.noreply.github.com>

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>
Co-authored-by: Rand McKinney <crandmck@yahoo.com>
tmathern added a commit that referenced this pull request Mar 4, 2026
* fix: Update C2PA version to 0.71.2 (#110)

* fix: Update C2PA version to 0.70.0

* fix: Bump project version to 0.13.0

* fix: Update c2pa-rs version

* fix: Nump c2pa-rs c2pa-c-ffi version to 0.71.2

* fix: Version bump

* chore: Update c2pa version to v0.72.1 (#115)

* chore: Bump to c2pa-rs v0.73.0 (#116)

* chore: Update C2PA version to 0.73.1 (#117)

* chore: Update C2PA version to 0.73.2 (#121)

* fix: Update for move semantics (#123)

* fix: Move semantics

* fix: Undo some paranoia

* fix: COmment

* fix: Update for move semantics continu'd (#124)

* fix: Move semantics

* fix: Undo some paranoia

* fix: COmment

* fix: More move semantics

* chore: Bump C2PA version to 0.74.0 (#125)

* Update C2PA version to 0.74.0

* fix: Update test

* fix: FOmrat

* fix: formatting in documentation comments (#126)

* chore: Update C2PA version to 0.75.0

* chore: Update C2PA_VERSION to 0.75.2

* Revert version bump until all things are published

* Update C2PA version to 0.75.2 (#127)

* fix: Update C2PA version to 0.75.4 (#128)

* Update C2PA version to 0.75.3

* fix: Update C2PA version to 0.75.4

* chore: Update C2PA version to 0.75.6 (#129)

* fix: Update C2PA version to 0.75.7 (#130)

* fix: Update C2PA version to 0.75.8

* feat: Allow building from source in CMakelist (#131)

* fix: Update CmakeList

* fix: Update comment

* Clarify compatibility comment for json library

Updated comment to clarify compatibility with older platforms.

* fix: Note

* feat: Expand OS matrix in CI workflow (#132)

* feat: Expand OS matrix in CI workflow

* Update CI workflow OS matrix

Removed 'windows-2022' and 'ubuntu-slim' from the OS matrix.

* Replace filesystem path usage with string conversion

* Add filesystem namespace for path handling

* Fix test file path for cross-platform compatibility

* Update CI workflow to include windows-2022

* Remove namespace alias for filesystem in tests

Remove unnecessary namespace alias for filesystem.

* Update CI workflow OS matrix

Removed 'windows-2022' from the OS matrix in CI workflow.

* fix: FIx shadowing (#133)

Added new constructor for Signer to take ownership of a signer pointer and updated documentation for clarity.

* fix: Additional build flags (#134)

* fix: FIx shadowing

Added new constructor for Signer to take ownership of a signer pointer and updated documentation for clarity.

* feat: Enhance MSVC compiler and linker options

Added additional compiler and linker options for MSVC.

* fix: Enhance compiler and linker options for c2pa_cpp *nix

Added additional compiler and linker options for c2pa_cpp to enhance security and compatibility.

* fix: Move linker flags -Wl,-z,relro and -Wl,-z,now to linking

Removed linker flags for relro and now.

* feat: Adjust linker options for different platforms

* fix: Refactorings and additional checks (#135)

* fix: Refactor null checks and improve exception handling

* Refactor Reader constructor to manage stream lifetime

* Update c2pa.cpp

* Replace string with std::string in c2pa.cpp

* Change type from ofstream to ostream in flusher

* Change member functions to const in c2pa.hpp

* Fix reserve_size function declaration syntax

* Fix supported_mime_types method signature

* Change reserve_size method to non-const

* Update c2pa.hpp

* Update c2pa.cpp

* fix: Use EINVAL where it was missed

* fix: FOrmat

* chore: Bump c2pa-rs version to c2pa-v0.75.10

* fix: Bump to c2pa-rs v0.75.16 (#140)

* Update CMakeLists.txt

* fix: v0.75.15

* fix: Retrigger all jobs

* Update CMakeLists.txt

* fix: WinARM runner (#141)

* Update CMakeLists.txt

* fix: Bump to c2pa-rs v0.75.19

* feat: Context APIs and the related Settings API (#137)

* fix: WIP

* fix: All my debug

* fix: Debug in progress

* feat: Refactor (#138)

* fix: Skip know bad test

* fix: CLean up the example

* fix: Clean up header

* fix: Header clean up

* fix: Renaming to contextCreator

* fix: rename

* fix: rename

* fix: rename and refactor

* fix: rename and refactor

* fix: rename and refactor

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: More refactors (#139)

* fix: Skip know bad test

* fix: CLean up the example

* fix: Clean up header

* fix: Header clean up

* fix: Renaming to contextCreator

* fix: rename

* fix: rename

* fix: rename and refactor

* fix: rename and refactor

* fix: rename and refactor

* fix: rename and refactor

* fix: rename and refactor

* fix: DOn't use deprecated free methods

* fix: Start updating the frees

* fix: Continue updating the frees

* fix: Continue updating the frees

* fix: Continue updating the frees

* fix: Continue working on the design

* fix: Continue working on the design

* fix: Continue working on the design

* fix: Pointer clean up

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor for build

* fix: Fix WIndows build

* fix: Cleaning up

* fix: Add TODOs

* fix: Update naming, clean up STL

* fix: WIP - fix stream handling for files

* fix: Tests

* fix: Write test for toml and json settings

* fix: Add tests for settings combinations

* fix: Verify trust

* fix: Verify trust

* fix: Reader with trust

* fix: Clean up list

* fix: Update config

* fix: Format

* fix: Format

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: TODO dev notes

* fix: CLean before rebuild

* fix: Refactorings once more

* fix: Refactorings

* fix: Refactor streams

* fix: Streams refacotr

* fix: Refactor

* fix: Docs

* fix: Improvements in progress

* fix: Add ASAN, UBSAN

* fix: Set up sanitizers

* fix: Texts

* fix: Update workflow

* fix: Update workflow

* fix: Update workflow

* fix: Reactivate a test

* fix: reduce string copies, or try to

* ci: Revert "fix: reduce string copies, or try to"

This reverts commit 736beb5.

* fix: tests moved

* fix: Text utils

* fix: The refactoring axe is coming out

* fix: THe Ubuntu leaks

* fix: Bump to use the right c2pa-rs version

* fix: Last leak

* fix: Mem

* fix: Known leak that is not a leak

* fix: Clarify suppressor

* fix: Clarify suppressor

* fix: Add test coverage

* fix: Add test coverage for context

* fix: Add coverage

* fix: A few more tests

* fix: Comment on test

* fix: Reorg the tests

* fix: Reorg the tests

* fix: Consistency

* fix: Consistency

* fix: load archive

* fix: Intermediate signing

* fix: Multi ingredients

* fix: CLean up

* fix: Increased test-coveragae on #137 + minor bugfixes (#143)

* fix: Add a few todos

* fix: Add a few todos 2

* fix: Clean up obsolete debug ref

* fix: Add a few todos 3

* fix: WIP test coverage

* fix: Test coverage

* fix: Test coverage

* fix: Notes from API poking

* fix: Notes from API poking

* fix: Notes from API poking

* fix: Notes from API poking

* fix: COnvenience API

* fix: Refactor text fixtures use

* fix: Refactor the teeeeeeests

* fix: Refactor

* fix: Add the docs

* fix: Add the layers merging example

* fix: Add a test without relationship

* fix: One more test

* fix: One more test varation

* fix: Undo a final

* fix: Flag test as known bad

* fix: Rename tests

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: CLean up tests

* fix: Extract ingredeints from archives

* fix: Extract ingredeints from archives 2

* fix: Add a test

* fix: Builder variations

* fix: Variations in resources handling

* fix: Remove the very ugly string based test

* fix: Refactor

* fix: Refactor

* fix: Cleanup 2

* fix: Reorg

* fix: The TODOs are gone

* fix: FInish examples clean up

* fix: Refactor bytes handling (#144)

* refactor

* refactor

* fix: Refactor

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: Settings reference link

* fix: Review comments 1: toml go away! (#145)

* fix: Drop from_toml API, fix typos

* fix: MOre toml stuffs removed

* Update context.test.cpp

* fix: Review comments step 2 (#146)

* fix: Drop from_toml API, fix typos

* fix: MOre toml stuffs removed

* Update context.test.cpp

* fix: More clean up

* fix: Rely more on Rust for pointer clean up

* fix: Update coverage and simplify API (#147)

* fix: Simplify CMakeList (#148)

* fix: Update coverage and simplify API

* fix: Simplify CMakeLists

* fix: Update docs

* fix: Refactor

* fix: Shorten docs

* fix: Update

* fix: Refactored once more and clarified docs

* fix: Context verify move

* fix: Remove usunsed move

* fix: Refactor tests

* fix: One more cleanup

* fix: Remove the API I said I would

* fix: More clean up

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: Clarifying comment

* chore: Bump to c2pa-v0.75.21 (#152)

* Update CMakeLists.txt

* fix: One test is actually invalid

* fix: A few other tests are invalid

* fix: no archive and embeddable mix

* fix: Header docs (#150)

* fix: Docs

* fix: Clean up docs

* fix: Clean up docs

* fix: Clean up docs

* fix: Typos in header docs

* fix: Typos 2

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* Update c2pa.hpp

* Update test.c

* fix: Docs

* fix: Docs does not belong here

* chore: Update C2PA version to 0.76.0 (#163)

* fix: Builder::add_ingredient may fail with non-ascii characters in source_path (#161)

* fix: utf8

* fix: Add a few tests

* fix: Add a few tests 2

* fix: Add a few tests 3

* fix: Add a few tests 3

* fix: Add a few tests 3

* fix: Add a few tests 3

* fix: Add a few tests 3

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* docs: Context and Settings (#153)

* fix: Initial versions

* fix: Settings

* fix: Context

* Update settings.md

* Update context.md

* Update context.md

* Update context.md

* minor copy edits

* Copy edit

* Remove some duplication, add xrefs

* clean up edits

* Final cleanup edits

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>
Co-authored-by: Rand McKinney <crandmck@yahoo.com>

* fix: Add a file size limit for settings file read (#162)

* fix: Add a file size limit

* fix: Enforce more null checks

* fix: Enforce more null checks 2

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: Refactor (#165)

* fix: Refactor

* Delete REFACTORING_PLAN.md

* fix: Refactor

* fix: Refactor

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* docs: Working stores (#154)

* fix: Workin stores

* Update working-stores.md

* Update working-stores.md

* Update working-stores.md

* Update working-stores.md

* Update working-stores.md

* Update working-stores.md

* Copy edits, add xrefs

* Remove incomplete section

* Misc edits and add some more links, add a bit to Mermaid diagram

* Add div to xrefs not needed in doc site, other small tweaks

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>
Co-authored-by: Rand McKinney <crandmck@yahoo.com>

* feat: Amalgam build squashed (#151)

* fix: File split

* fix: Let's try this

* fix: Add a script

* fix: Build hack

* fix: Amalgam build

* fix: Amalgamate 2

* fix: fix headers

* fix: Scripts location tweak

* fix: Amalgam build

* fix: Amalgam build 2

* fix: Amalgam build with shared lib

* fix: Amalgam build with shared lib 2

* fix: Update CMakeLists.txt (#155)

* fix: Update CMakeLists.txt

* Update CMakeLists.txt

* Update c2pa_internal.hpp

* Update CMakeLists.txt

* fix: Docs

* docs: Update amalgam-build.md

Removed project version and Rust library version details from the amalgam build documentation.

* fix: Refine amalgam-build.md

* fix: License header

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* Update amalgam-build.md

* fix: Bump c2pa-rs

* fix: Change build

* fix: Change build 2

* Update comment in CMakeLists.txt for clarity

Clarify comment regarding C2PA_C_LIB_OVERRIDE and c2pa_c symbols.

* fix: Fortify source only for Linux, mac has other flag

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>
Co-authored-by: Rand McKinney <crandmck@yahoo.com>
tmathern added a commit that referenced this pull request Mar 4, 2026
* fix: Update C2PA version to 0.71.2 (#110)

* fix: Update C2PA version to 0.70.0

* fix: Bump project version to 0.13.0

* fix: Update c2pa-rs version

* fix: Nump c2pa-rs c2pa-c-ffi version to 0.71.2

* fix: Version bump

* chore: Update c2pa version to v0.72.1 (#115)

* chore: Bump to c2pa-rs v0.73.0 (#116)

* chore: Update C2PA version to 0.73.1 (#117)

* chore: Update C2PA version to 0.73.2 (#121)

* fix: Update for move semantics (#123)

* fix: Move semantics

* fix: Undo some paranoia

* fix: COmment

* fix: Update for move semantics continu'd (#124)

* fix: Move semantics

* fix: Undo some paranoia

* fix: COmment

* fix: More move semantics

* chore: Bump C2PA version to 0.74.0 (#125)

* Update C2PA version to 0.74.0

* fix: Update test

* fix: FOmrat

* fix: formatting in documentation comments (#126)

* chore: Update C2PA version to 0.75.0

* chore: Update C2PA_VERSION to 0.75.2

* Revert version bump until all things are published

* Update C2PA version to 0.75.2 (#127)

* fix: Update C2PA version to 0.75.4 (#128)

* Update C2PA version to 0.75.3

* fix: Update C2PA version to 0.75.4

* chore: Update C2PA version to 0.75.6 (#129)

* fix: Update C2PA version to 0.75.7 (#130)

* fix: Update C2PA version to 0.75.8

* feat: Allow building from source in CMakelist (#131)

* fix: Update CmakeList

* fix: Update comment

* Clarify compatibility comment for json library

Updated comment to clarify compatibility with older platforms.

* fix: Note

* feat: Expand OS matrix in CI workflow (#132)

* feat: Expand OS matrix in CI workflow

* Update CI workflow OS matrix

Removed 'windows-2022' and 'ubuntu-slim' from the OS matrix.

* Replace filesystem path usage with string conversion

* Add filesystem namespace for path handling

* Fix test file path for cross-platform compatibility

* Update CI workflow to include windows-2022

* Remove namespace alias for filesystem in tests

Remove unnecessary namespace alias for filesystem.

* Update CI workflow OS matrix

Removed 'windows-2022' from the OS matrix in CI workflow.

* fix: FIx shadowing (#133)

Added new constructor for Signer to take ownership of a signer pointer and updated documentation for clarity.

* fix: Additional build flags (#134)

* fix: FIx shadowing

Added new constructor for Signer to take ownership of a signer pointer and updated documentation for clarity.

* feat: Enhance MSVC compiler and linker options

Added additional compiler and linker options for MSVC.

* fix: Enhance compiler and linker options for c2pa_cpp *nix

Added additional compiler and linker options for c2pa_cpp to enhance security and compatibility.

* fix: Move linker flags -Wl,-z,relro and -Wl,-z,now to linking

Removed linker flags for relro and now.

* feat: Adjust linker options for different platforms

* fix: Refactorings and additional checks (#135)

* fix: Refactor null checks and improve exception handling

* Refactor Reader constructor to manage stream lifetime

* Update c2pa.cpp

* Replace string with std::string in c2pa.cpp

* Change type from ofstream to ostream in flusher

* Change member functions to const in c2pa.hpp

* Fix reserve_size function declaration syntax

* Fix supported_mime_types method signature

* Change reserve_size method to non-const

* Update c2pa.hpp

* Update c2pa.cpp

* fix: Use EINVAL where it was missed

* fix: FOrmat

* chore: Bump c2pa-rs version to c2pa-v0.75.10

* fix: Bump to c2pa-rs v0.75.16 (#140)

* Update CMakeLists.txt

* fix: v0.75.15

* fix: Retrigger all jobs

* Update CMakeLists.txt

* fix: WinARM runner (#141)

* Update CMakeLists.txt

* fix: Bump to c2pa-rs v0.75.19

* feat: Context APIs and the related Settings API (#137)

* fix: WIP

* fix: All my debug

* fix: Debug in progress

* feat: Refactor (#138)

* fix: Skip know bad test

* fix: CLean up the example

* fix: Clean up header

* fix: Header clean up

* fix: Renaming to contextCreator

* fix: rename

* fix: rename

* fix: rename and refactor

* fix: rename and refactor

* fix: rename and refactor

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: More refactors (#139)

* fix: Skip know bad test

* fix: CLean up the example

* fix: Clean up header

* fix: Header clean up

* fix: Renaming to contextCreator

* fix: rename

* fix: rename

* fix: rename and refactor

* fix: rename and refactor

* fix: rename and refactor

* fix: rename and refactor

* fix: rename and refactor

* fix: DOn't use deprecated free methods

* fix: Start updating the frees

* fix: Continue updating the frees

* fix: Continue updating the frees

* fix: Continue updating the frees

* fix: Continue working on the design

* fix: Continue working on the design

* fix: Continue working on the design

* fix: Pointer clean up

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor

* fix: Refactooooor for build

* fix: Fix WIndows build

* fix: Cleaning up

* fix: Add TODOs

* fix: Update naming, clean up STL

* fix: WIP - fix stream handling for files

* fix: Tests

* fix: Write test for toml and json settings

* fix: Add tests for settings combinations

* fix: Verify trust

* fix: Verify trust

* fix: Reader with trust

* fix: Clean up list

* fix: Update config

* fix: Format

* fix: Format

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: TODO dev notes

* fix: CLean before rebuild

* fix: Refactorings once more

* fix: Refactorings

* fix: Refactor streams

* fix: Streams refacotr

* fix: Refactor

* fix: Docs

* fix: Improvements in progress

* fix: Add ASAN, UBSAN

* fix: Set up sanitizers

* fix: Texts

* fix: Update workflow

* fix: Update workflow

* fix: Update workflow

* fix: Reactivate a test

* fix: reduce string copies, or try to

* ci: Revert "fix: reduce string copies, or try to"

This reverts commit 736beb5.

* fix: tests moved

* fix: Text utils

* fix: The refactoring axe is coming out

* fix: THe Ubuntu leaks

* fix: Bump to use the right c2pa-rs version

* fix: Last leak

* fix: Mem

* fix: Known leak that is not a leak

* fix: Clarify suppressor

* fix: Clarify suppressor

* fix: Add test coverage

* fix: Add test coverage for context

* fix: Add coverage

* fix: A few more tests

* fix: Comment on test

* fix: Reorg the tests

* fix: Reorg the tests

* fix: Consistency

* fix: Consistency

* fix: load archive

* fix: Intermediate signing

* fix: Multi ingredients

* fix: CLean up

* fix: Increased test-coveragae on #137 + minor bugfixes (#143)

* fix: Add a few todos

* fix: Add a few todos 2

* fix: Clean up obsolete debug ref

* fix: Add a few todos 3

* fix: WIP test coverage

* fix: Test coverage

* fix: Test coverage

* fix: Notes from API poking

* fix: Notes from API poking

* fix: Notes from API poking

* fix: Notes from API poking

* fix: COnvenience API

* fix: Refactor text fixtures use

* fix: Refactor the teeeeeeests

* fix: Refactor

* fix: Add the docs

* fix: Add the layers merging example

* fix: Add a test without relationship

* fix: One more test

* fix: One more test varation

* fix: Undo a final

* fix: Flag test as known bad

* fix: Rename tests

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: CLean up tests

* fix: Extract ingredeints from archives

* fix: Extract ingredeints from archives 2

* fix: Add a test

* fix: Builder variations

* fix: Variations in resources handling

* fix: Remove the very ugly string based test

* fix: Refactor

* fix: Refactor

* fix: Cleanup 2

* fix: Reorg

* fix: The TODOs are gone

* fix: FInish examples clean up

* fix: Refactor bytes handling (#144)

* refactor

* refactor

* fix: Refactor

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: Settings reference link

* fix: Review comments 1: toml go away! (#145)

* fix: Drop from_toml API, fix typos

* fix: MOre toml stuffs removed

* Update context.test.cpp

* fix: Review comments step 2 (#146)

* fix: Drop from_toml API, fix typos

* fix: MOre toml stuffs removed

* Update context.test.cpp

* fix: More clean up

* fix: Rely more on Rust for pointer clean up

* fix: Update coverage and simplify API (#147)

* fix: Simplify CMakeList (#148)

* fix: Update coverage and simplify API

* fix: Simplify CMakeLists

* fix: Update docs

* fix: Refactor

* fix: Shorten docs

* fix: Update

* fix: Refactored once more and clarified docs

* fix: Context verify move

* fix: Remove usunsed move

* fix: Refactor tests

* fix: One more cleanup

* fix: Remove the API I said I would

* fix: More clean up

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: Clarifying comment

* chore: Bump to c2pa-v0.75.21 (#152)

* Update CMakeLists.txt

* fix: One test is actually invalid

* fix: A few other tests are invalid

* fix: no archive and embeddable mix

* fix: Header docs (#150)

* fix: Docs

* fix: Clean up docs

* fix: Clean up docs

* fix: Clean up docs

* fix: Typos in header docs

* fix: Typos 2

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* Update c2pa.hpp

* Update test.c

* fix: Docs

* fix: Docs does not belong here

* chore: Update C2PA version to 0.76.0 (#163)

* fix: Builder::add_ingredient may fail with non-ascii characters in source_path (#161)

* fix: utf8

* fix: Add a few tests

* fix: Add a few tests 2

* fix: Add a few tests 3

* fix: Add a few tests 3

* fix: Add a few tests 3

* fix: Add a few tests 3

* fix: Add a few tests 3

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* docs: Context and Settings (#153)

* fix: Initial versions

* fix: Settings

* fix: Context

* Update settings.md

* Update context.md

* Update context.md

* Update context.md

* minor copy edits

* Copy edit

* Remove some duplication, add xrefs

* clean up edits

* Final cleanup edits

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>
Co-authored-by: Rand McKinney <crandmck@yahoo.com>

* fix: Add a file size limit for settings file read (#162)

* fix: Add a file size limit

* fix: Enforce more null checks

* fix: Enforce more null checks 2

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

* fix: Typos

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: Refactor (#165)

* fix: Refactor

* Delete REFACTORING_PLAN.md

* fix: Refactor

* fix: Refactor

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* docs: Working stores (#154)

* fix: Workin stores

* Update working-stores.md

* Update working-stores.md

* Update working-stores.md

* Update working-stores.md

* Update working-stores.md

* Update working-stores.md

* Copy edits, add xrefs

* Remove incomplete section

* Misc edits and add some more links, add a bit to Mermaid diagram

* Add div to xrefs not needed in doc site, other small tweaks

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>
Co-authored-by: Rand McKinney <crandmck@yahoo.com>

* docs: Re-Builder (#159)

* fix: Add docs

* docs: Clarify selective manifest construction process

Rephrase and clarify the explanation of using Builder and Reader for selective manifest construction, emphasizing the read-only nature and the importance of filtering.

* docs: typos

Removed section on recording removal actions and related C2PA actions.

* Fix formatting issues in selective-manifests.md

* Fix formatting in selective-manifests.md

* Fix formatting in selective manifests diagram

Removed newline characters in ingredient labels and updated the New Builder label for clarity.

* Initial copy edit

* fix: Refine documentation on selective manifest construction

* Fix label in selective-manifests documentation

* Update selective-manifests.md

* fix: More docs (#164)

* fix: More docs

* Update selective-manifests.md

* fix: Typos

* fix: Typos

* fix: Typos

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>

* fix: typos

* Pull Q&A into separate file

* Forgot to save files

* General edits

* More edits, make headings more concise

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>
Co-authored-by: Rand McKinney <crandmck@yahoo.com>

* fix: Signer set on Context C FFI

* fix: Clarify docs

* fix: Workflow

* fix: Workflow with c2pars branch

* fix: Merge commit

* fix: Refactor

* fix: Refactor

* fix: Refactor

* fix: Refactor

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

* fix: Docs

---------

Co-authored-by: Tania Mathern <tania.mathern@gmail.comn>
Co-authored-by: Rand McKinney <crandmck@yahoo.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant