From 5dd214f4774154d87b6664019b29c86855315f1c Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Mon, 6 Oct 2025 11:49:57 +0000 Subject: [PATCH 01/54] chore(workflows): add -vvv option to a poetry install --- .github/workflows/lint-and-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 3cfb188a..f56440c4 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -152,7 +152,7 @@ jobs: # key: poetry-cache-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} - name: Install dependencies - run: poetry install --no-interaction + run: poetry install --no-interaction -vvv - name: Cache Rust and Cargo dependencies id: cache-rust From 3151608d434193aacac302075719aceeb69cd268 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Mon, 6 Oct 2025 12:01:29 +0000 Subject: [PATCH 02/54] chore(workflows): add poetry lock command --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index f56440c4..0e98ebd4 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -95,7 +95,7 @@ jobs: key: poetry-cache-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} - name: Install dependencies - run: poetry install --no-interaction + run: poetry lock && poetry install --no-interaction - name: Run unit tests with coverage run: | @@ -152,7 +152,7 @@ jobs: # key: poetry-cache-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} - name: Install dependencies - run: poetry install --no-interaction -vvv + run: poetry lock && poetry install --no-interaction -vvv - name: Cache Rust and Cargo dependencies id: cache-rust From 343962135b71657894163f3d180eca9157be7da0 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Mon, 6 Oct 2025 12:13:17 +0000 Subject: [PATCH 03/54] chore(workflows): remove poetry virtualenvs options inside e2e --- .github/workflows/lint-and-test.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 0e98ebd4..42336176 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -138,8 +138,8 @@ jobs: uses: snok/install-poetry@v1 with: version: 'latest' - virtualenvs-create: true - virtualenvs-in-project: true + # virtualenvs-create: true + # virtualenvs-in-project: true # - name: Configure Poetry cache # run: poetry config cache-dir ./.cache/pypoetry @@ -152,7 +152,7 @@ jobs: # key: poetry-cache-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} - name: Install dependencies - run: poetry lock && poetry install --no-interaction -vvv + run: poetry install --no-interaction -vvv - name: Cache Rust and Cargo dependencies id: cache-rust From 677e870a3883c4e1be8ccf984ce77c91090f86b1 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Mon, 6 Oct 2025 12:18:41 +0000 Subject: [PATCH 04/54] feat(workflows): go back to default poetry cache directory --- .github/workflows/lint-and-test.yml | 73 ++++++++++++++--------------- 1 file changed, 34 insertions(+), 39 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 42336176..6e113c35 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -35,17 +35,15 @@ jobs: virtualenvs-create: true virtualenvs-in-project: true - - name: Configure Poetry cache - run: poetry config cache-dir ./.cache/pypoetry - - - name: Load cached poetry dependencies + - name: Load cached venv id: cached-poetry-dependencies uses: actions/cache@v4 with: - path: ./.cache/pypoetry - key: poetry-cache-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} + path: .venv + key: venv-ruff-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} - name: Install dependencies + if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true' run: poetry install --only dev - name: Ruff version @@ -60,10 +58,10 @@ jobs: run-unit-tests: name: Run unit tests using matrix needs: ruff - strategy: + strategy: fail-fast: false matrix: - python-version: ["3.10", "3.11", "3.12", "3.13"] + python-version: ["3.9","3.10","3.11","3.12","3.13"] runs-on: [self-hosted, Linux, X64] timeout-minutes: 30 @@ -71,7 +69,7 @@ jobs: steps: - name: Checkout repository uses: actions/checkout@v5 - + - name: Set up Python uses: actions/setup-python@v5 with: @@ -84,18 +82,15 @@ jobs: virtualenvs-create: true virtualenvs-in-project: true - - name: Configure Poetry cache - run: poetry config cache-dir ./.cache/pypoetry - - - name: Load cached poetry dependencies + - name: Load cached venv id: cached-poetry-dependencies uses: actions/cache@v4 with: - path: ./.cache/pypoetry - key: poetry-cache-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} + path: .venv + key: venv-unit-tests-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} - name: Install dependencies - run: poetry lock && poetry install --no-interaction + run: poetry install --no-interaction - name: Run unit tests with coverage run: | @@ -105,9 +100,9 @@ jobs: -m "not e2e" \ --maxfail=1 \ -v - + - name: Upload coverage artifact - if: (matrix.os == 'ubuntu-latest' || runner.os == 'Linux') && matrix.python-version == '3.12' + if: (matrix.os == 'ubuntu-latest' || runner.os == 'Lunux') && matrix.python-version == '3.12' uses: actions/upload-artifact@v4 with: name: coverage-unit @@ -118,18 +113,20 @@ jobs: run-e2e-tests: name: Run e2e tests needs: ruff - strategy: + + strategy: fail-fast: false matrix: - python-version: ["3.10", "3.11", "3.12", "3.13"] + python-version: ["3.10","3.11","3.12","3.13"] + # runs-on: ${{ matrix.os }} runs-on: [self-hosted, Linux, X64] timeout-minutes: 30 - + steps: - name: Checkout repository uses: actions/checkout@v5 - + - uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} @@ -138,21 +135,18 @@ jobs: uses: snok/install-poetry@v1 with: version: 'latest' - # virtualenvs-create: true - # virtualenvs-in-project: true - - # - name: Configure Poetry cache - # run: poetry config cache-dir ./.cache/pypoetry + virtualenvs-create: true + virtualenvs-in-project: true - # - name: Load cached poetry dependencies - # id: cached-poetry-dependencies - # uses: actions/cache@v4 - # with: - # path: ./.cache/pypoetry - # key: poetry-cache-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} + - name: Load cached venv + id: cached-poetry-dependencies + uses: actions/cache@v4 + with: + path: .venv + key: venv-e2e-tests-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} - name: Install dependencies - run: poetry install --no-interaction -vvv + run: poetry install --no-interaction - name: Cache Rust and Cargo dependencies id: cache-rust @@ -175,7 +169,7 @@ jobs: - name: Add cargo to PATH run: echo "$HOME/.cargo/bin" >> $GITHUB_PATH - - name: Verify if c2patool is installed + - name: Verify if c2patool is installed run: | c2patool -V @@ -190,7 +184,7 @@ jobs: C2PIE_CERT_FILEPATH: ${{ vars.C2PIE_CERT_FILEPATH }} - name: Upload coverage artifact - if: (matrix.os == 'ubuntu-latest' || runner.os == 'Linux') && matrix.python-version == '3.12' + if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.12' || runner.os == 'Linux' && matrix.python-version == '3.12' uses: actions/upload-artifact@v4 with: name: coverage-e2e @@ -201,12 +195,12 @@ jobs: combine-coverage: name: Combine coverage and upload to Codecov needs: [run-unit-tests, run-e2e-tests] - runs-on: [self-hosted, Linux, X64] - + runs-on: [self-hosted, Linux, X64] + steps: - name: Checkout repository uses: actions/checkout@v5 - + - name: Set up Python uses: actions/setup-python@v5 with: @@ -241,3 +235,4 @@ jobs: fail_ci_if_error: false token: ${{ secrets.CODECOV_TOKEN }} + # ![Coverage](https://codecov.io/gh/TourmalineCore/c2pie/branch/master/graph/badge.svg) \ No newline at end of file From 23de427bec03dd17f73f027e8d3a8a1a43daf76b Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Mon, 6 Oct 2025 12:28:22 +0000 Subject: [PATCH 05/54] feat(workflows): change caching directory in unit tests --- .github/workflows/lint-and-test.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 6e113c35..07ecc047 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -87,7 +87,7 @@ jobs: uses: actions/cache@v4 with: path: .venv - key: venv-unit-tests-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} + key: venv-e2e-tests-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} - name: Install dependencies run: poetry install --no-interaction @@ -127,6 +127,7 @@ jobs: - name: Checkout repository uses: actions/checkout@v5 + - name: Set up Python - uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} From 59e17b98f04d2926907e326d55292082d2ae960b Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Mon, 6 Oct 2025 12:30:56 +0000 Subject: [PATCH 06/54] chore(workflows): remove comments --- .github/workflows/lint-and-test.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 07ecc047..ef36e4c7 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -119,7 +119,6 @@ jobs: matrix: python-version: ["3.10","3.11","3.12","3.13"] - # runs-on: ${{ matrix.os }} runs-on: [self-hosted, Linux, X64] timeout-minutes: 30 From a1fae05c585f8eb98875f831ccb28b535526b6cc Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Mon, 6 Oct 2025 12:44:40 +0000 Subject: [PATCH 07/54] fix(workflows): remove - --- .github/workflows/lint-and-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index ef36e4c7..874d0a60 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -127,7 +127,7 @@ jobs: uses: actions/checkout@v5 - name: Set up Python - - uses: actions/setup-python@v5 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} From ca71a8311c57077c69f3028d12cdf999b3e510dc Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Mon, 6 Oct 2025 12:47:45 +0000 Subject: [PATCH 08/54] feat(workflows): remove python 3.9 from matrix --- .github/workflows/lint-and-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 874d0a60..85bf6fdf 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -61,7 +61,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9","3.10","3.11","3.12","3.13"] + python-version: ["3.10","3.11","3.12","3.13"] runs-on: [self-hosted, Linux, X64] timeout-minutes: 30 From 1bd0293ff481177023308b284e72591bff1ed781 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Tue, 7 Oct 2025 11:25:00 +0000 Subject: [PATCH 09/54] feat(c2pie): import annotations from __future__ to support | syntax --- c2pie/jumbf_boxes/super_box.py | 1 + c2pie/signing.py | 2 ++ 2 files changed, 3 insertions(+) diff --git a/c2pie/jumbf_boxes/super_box.py b/c2pie/jumbf_boxes/super_box.py index 0c1e06bc..8ff8dfab 100644 --- a/c2pie/jumbf_boxes/super_box.py +++ b/c2pie/jumbf_boxes/super_box.py @@ -1,4 +1,5 @@ # Jumbf super box class +from __future__ import annotations from c2pie.jumbf_boxes.box import Box from c2pie.jumbf_boxes.content_box import ContentBox diff --git a/c2pie/signing.py b/c2pie/signing.py index dc5404d2..de5da794 100644 --- a/c2pie/signing.py +++ b/c2pie/signing.py @@ -1,3 +1,5 @@ +from __future__ import annotations + import hashlib import os from pathlib import Path From 138a2b7ee0bb8832754046a8643da08cfdd7943f Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Tue, 7 Oct 2025 12:02:50 +0000 Subject: [PATCH 10/54] feat(workflows): add testing with python 3.9 and python 3.14 --- .github/workflows/lint-and-test.yml | 8 ++++---- .github/workflows/publish-package.yml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 85bf6fdf..28062792 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -61,7 +61,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.10","3.11","3.12","3.13"] + python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14"] runs-on: [self-hosted, Linux, X64] timeout-minutes: 30 @@ -87,7 +87,7 @@ jobs: uses: actions/cache@v4 with: path: .venv - key: venv-e2e-tests-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} + key: venv-tests-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} - name: Install dependencies run: poetry install --no-interaction @@ -117,7 +117,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.10","3.11","3.12","3.13"] + python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14"] runs-on: [self-hosted, Linux, X64] timeout-minutes: 30 @@ -143,7 +143,7 @@ jobs: uses: actions/cache@v4 with: path: .venv - key: venv-e2e-tests-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} + key: venv-tests-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} - name: Install dependencies run: poetry install --no-interaction diff --git a/.github/workflows/publish-package.yml b/.github/workflows/publish-package.yml index 8745cbcf..5a81b85f 100644 --- a/.github/workflows/publish-package.yml +++ b/.github/workflows/publish-package.yml @@ -25,7 +25,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, macos-latest, windows-latest] - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] runs-on: ${{ matrix.os }} timeout-minutes: 30 From e135e220dc5606a1bb7924ca7b0083122116b182 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Tue, 7 Oct 2025 12:14:08 +0000 Subject: [PATCH 11/54] chore(workflows): try to not specify python-version inside caching step --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 28062792..4e103ea1 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -87,7 +87,7 @@ jobs: uses: actions/cache@v4 with: path: .venv - key: venv-tests-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} + key: venv-tests-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} - name: Install dependencies run: poetry install --no-interaction @@ -143,7 +143,7 @@ jobs: uses: actions/cache@v4 with: path: .venv - key: venv-tests-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} + key: venv-tests-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} - name: Install dependencies run: poetry install --no-interaction From 057f618463d87ee8b711831958b8b90cebdaae4f Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Tue, 7 Oct 2025 12:22:22 +0000 Subject: [PATCH 12/54] fix(workflows): specify python3.14 version --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 4e103ea1..116f0b45 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -61,7 +61,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14"] + python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14.0-rc.3"] runs-on: [self-hosted, Linux, X64] timeout-minutes: 30 @@ -117,7 +117,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14"] + python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14.0-rc.3"] runs-on: [self-hosted, Linux, X64] timeout-minutes: 30 From 6b1b3549c02dbc28947ac348a0d3a5348ea3c15c Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Tue, 7 Oct 2025 12:23:13 +0000 Subject: [PATCH 13/54] feat(c2pie): add python3.9 and python3.14 --- poetry.lock | 4 ++-- pyproject.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/poetry.lock b/poetry.lock index be866b4d..1c20f4b2 100644 --- a/poetry.lock +++ b/poetry.lock @@ -582,5 +582,5 @@ files = [ [metadata] lock-version = "2.1" -python-versions = "^3.9,<3.14" -content-hash = "f69fc86c39ff8549a6a35ced2a2b626864d4ccf930b7837155e2495206d65478" +python-versions = "^3.9" +content-hash = "71e9499bfdc4a0721f5ca4843b1da76113714eaf4c9f81dcf692023824e192d8" diff --git a/pyproject.toml b/pyproject.toml index d111c654..cc35a361 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -36,7 +36,7 @@ Issues = "https://github.com/TourmalineCore/c2pie/issues" c2pie = 'c2pie.main:main' [tool.poetry.dependencies] -python = "^3.9,<3.14" +python = "^3.9" cbor2 = "^5.6.3" cryptography = "^42.0.5" pytz = "^2024.1" From 7d63ddd243cf9bdd0732212f7eac1917eb515617 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Tue, 7 Oct 2025 12:49:09 +0000 Subject: [PATCH 14/54] fix(workflows): change upload-arctifact action version to 5 --- .github/workflows/lint-and-test.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 116f0b45..53687168 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -103,7 +103,7 @@ jobs: - name: Upload coverage artifact if: (matrix.os == 'ubuntu-latest' || runner.os == 'Lunux') && matrix.python-version == '3.12' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v5 with: name: coverage-unit path: | @@ -185,7 +185,7 @@ jobs: - name: Upload coverage artifact if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.12' || runner.os == 'Linux' && matrix.python-version == '3.12' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v5 with: name: coverage-e2e path: | @@ -210,13 +210,13 @@ jobs: run: python -m pip install coverage[toml] - name: Download unit coverage - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v5 with: name: coverage-unit path: ./coverage-unit - name: Download e2e coverage - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v5 with: name: coverage-e2e path: ./coverage-e2e From 85103d6b792413d9980877e1477a57196ff70055 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Tue, 7 Oct 2025 12:51:22 +0000 Subject: [PATCH 15/54] fix(workflows): change upload-arctifact action version to 4 --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 53687168..3f5f7efa 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -103,7 +103,7 @@ jobs: - name: Upload coverage artifact if: (matrix.os == 'ubuntu-latest' || runner.os == 'Lunux') && matrix.python-version == '3.12' - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v4 with: name: coverage-unit path: | @@ -185,7 +185,7 @@ jobs: - name: Upload coverage artifact if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.12' || runner.os == 'Linux' && matrix.python-version == '3.12' - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v4 with: name: coverage-e2e path: | From fe94f816d7e7fa36810150f65ee56221e7025a62 Mon Sep 17 00:00:00 2001 From: lasnown <125271962+lasnown@users.noreply.github.com> Date: Wed, 8 Oct 2025 10:20:24 +0500 Subject: [PATCH 16/54] build(poetry): make python versions range more strictly defined --- poetry.lock | 6 +++--- pyproject.toml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/poetry.lock b/poetry.lock index 1c20f4b2..fe1360f0 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 2.2.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 2.1.3 and should not be changed by hand. [[package]] name = "cbor2" @@ -582,5 +582,5 @@ files = [ [metadata] lock-version = "2.1" -python-versions = "^3.9" -content-hash = "71e9499bfdc4a0721f5ca4843b1da76113714eaf4c9f81dcf692023824e192d8" +python-versions = "^3.9,<3.15" +content-hash = "adccc7e390e5d1b5b798fe96dc3715777402f5a34125c248c42e701d1332c61a" diff --git a/pyproject.toml b/pyproject.toml index cc35a361..1d7118cd 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -36,7 +36,7 @@ Issues = "https://github.com/TourmalineCore/c2pie/issues" c2pie = 'c2pie.main:main' [tool.poetry.dependencies] -python = "^3.9" +python = "^3.9,<3.15" cbor2 = "^5.6.3" cryptography = "^42.0.5" pytz = "^2024.1" From 5a84d060a2ca1cbdbbe427e162624c844e1f52f6 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 04:22:40 +0000 Subject: [PATCH 17/54] feat(workflows): move to python 3.14 from python 3.14-rc.3 --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 3f5f7efa..95f74c91 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -61,7 +61,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14.0-rc.3"] + python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14"] runs-on: [self-hosted, Linux, X64] timeout-minutes: 30 @@ -117,7 +117,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14.0-rc.3"] + python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14"] runs-on: [self-hosted, Linux, X64] timeout-minutes: 30 From 9bd03ddc6eb6d702e65c016f24e30c6040724ad1 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 05:13:48 +0000 Subject: [PATCH 18/54] fix(workflows): fix artifact uploading condition --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 95f74c91..549596a0 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -102,7 +102,7 @@ jobs: -v - name: Upload coverage artifact - if: (matrix.os == 'ubuntu-latest' || runner.os == 'Lunux') && matrix.python-version == '3.12' + if: matrix.python-version == '3.12' uses: actions/upload-artifact@v4 with: name: coverage-unit @@ -184,7 +184,7 @@ jobs: C2PIE_CERT_FILEPATH: ${{ vars.C2PIE_CERT_FILEPATH }} - name: Upload coverage artifact - if: matrix.os == 'ubuntu-latest' && matrix.python-version == '3.12' || runner.os == 'Linux' && matrix.python-version == '3.12' + if: matrix.python-version == '3.12' uses: actions/upload-artifact@v4 with: name: coverage-e2e From 61d5fd3d66f54fab8ba99e0e9fc27b6430a79342 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 05:59:17 +0000 Subject: [PATCH 19/54] fix(workflows): unzip coverage artifacts --- .github/workflows/lint-and-test.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 549596a0..54292076 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -213,13 +213,18 @@ jobs: uses: actions/download-artifact@v5 with: name: coverage-unit - path: ./coverage-unit + path: coverage-unit - name: Download e2e coverage uses: actions/download-artifact@v5 with: name: coverage-e2e - path: ./coverage-e2e + path: coverage-e2e + + - name: Unzip coverage reports + run: | + unzip coverage-e2e + unzip coverage-unit - name: Combine coverage reports run: | From 2099a4538b2dc85ae8da8ac01b2a963d563290e3 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 06:07:17 +0000 Subject: [PATCH 20/54] fix(workflows): specify coverage report path --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 54292076..3da66269 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -213,13 +213,13 @@ jobs: uses: actions/download-artifact@v5 with: name: coverage-unit - path: coverage-unit + path: coverage-unit.zip - name: Download e2e coverage uses: actions/download-artifact@v5 with: name: coverage-e2e - path: coverage-e2e + path: coverage-e2e.zip - name: Unzip coverage reports run: | From 2925de759ce24d811602f2a05b831392d6638423 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 06:18:45 +0000 Subject: [PATCH 21/54] fix(workflows): specify extension --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 3da66269..b6097647 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -223,8 +223,8 @@ jobs: - name: Unzip coverage reports run: | - unzip coverage-e2e - unzip coverage-unit + unzip coverage-e2e.zip + unzip coverage-unit.zip - name: Combine coverage reports run: | From 5e371a792e807c288f40d92638c7ba44fa082681 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 06:40:05 +0000 Subject: [PATCH 22/54] chore(workflows): print debug info --- .github/workflows/lint-and-test.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index b6097647..d0574b04 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -221,6 +221,12 @@ jobs: name: coverage-e2e path: coverage-e2e.zip + - name: Debug + run: | + ls + ls *.zip + pwd + - name: Unzip coverage reports run: | unzip coverage-e2e.zip From 3631bd88f9ffd35f7a02014316b3e3cae0c4975a Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 06:48:32 +0000 Subject: [PATCH 23/54] chore(workflows): drop unit-test and e2e-test --- .github/workflows/lint-and-test.yml | 266 ++++++++++++++-------------- 1 file changed, 133 insertions(+), 133 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index d0574b04..c886df72 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -55,146 +55,146 @@ jobs: - name: Lint (GitHub Annotations) run: poetry run ruff check --output-format=github . - run-unit-tests: - name: Run unit tests using matrix - needs: ruff - strategy: - fail-fast: false - matrix: - python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14"] - - runs-on: [self-hosted, Linux, X64] - timeout-minutes: 30 - - steps: - - name: Checkout repository - uses: actions/checkout@v5 + # run-unit-tests: + # name: Run unit tests using matrix + # needs: ruff + # strategy: + # fail-fast: false + # matrix: + # python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14"] + + # runs-on: [self-hosted, Linux, X64] + # timeout-minutes: 30 + + # steps: + # - name: Checkout repository + # uses: actions/checkout@v5 - - name: Set up Python - uses: actions/setup-python@v5 - with: - python-version: ${{ matrix.python-version }} - - - name: Install Poetry - uses: snok/install-poetry@v1 - with: - version: 'latest' - virtualenvs-create: true - virtualenvs-in-project: true - - - name: Load cached venv - id: cached-poetry-dependencies - uses: actions/cache@v4 - with: - path: .venv - key: venv-tests-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} - - - name: Install dependencies - run: poetry install --no-interaction - - - name: Run unit tests with coverage - run: | - poetry run pytest \ - --cov=c2pie \ - --cov-report=xml:coverage-unit.xml \ - -m "not e2e" \ - --maxfail=1 \ - -v + # - name: Set up Python + # uses: actions/setup-python@v5 + # with: + # python-version: ${{ matrix.python-version }} + + # - name: Install Poetry + # uses: snok/install-poetry@v1 + # with: + # version: 'latest' + # virtualenvs-create: true + # virtualenvs-in-project: true + + # - name: Load cached venv + # id: cached-poetry-dependencies + # uses: actions/cache@v4 + # with: + # path: .venv + # key: venv-tests-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} + + # - name: Install dependencies + # run: poetry install --no-interaction + + # - name: Run unit tests with coverage + # run: | + # poetry run pytest \ + # --cov=c2pie \ + # --cov-report=xml:coverage-unit.xml \ + # -m "not e2e" \ + # --maxfail=1 \ + # -v - - name: Upload coverage artifact - if: matrix.python-version == '3.12' - uses: actions/upload-artifact@v4 - with: - name: coverage-unit - path: | - coverage-unit.xml - .coverage - - run-e2e-tests: - name: Run e2e tests - needs: ruff - - strategy: - fail-fast: false - matrix: - python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14"] - - runs-on: [self-hosted, Linux, X64] - timeout-minutes: 30 + # - name: Upload coverage artifact + # if: matrix.python-version == '3.12' + # uses: actions/upload-artifact@v4 + # with: + # name: coverage-unit + # path: | + # coverage-unit.xml + # .coverage + + # run-e2e-tests: + # name: Run e2e tests + # needs: ruff + + # strategy: + # fail-fast: false + # matrix: + # python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14"] + + # runs-on: [self-hosted, Linux, X64] + # timeout-minutes: 30 - steps: - - name: Checkout repository - uses: actions/checkout@v5 + # steps: + # - name: Checkout repository + # uses: actions/checkout@v5 - - name: Set up Python - uses: actions/setup-python@v5 - with: - python-version: ${{ matrix.python-version }} - - - name: Install Poetry - uses: snok/install-poetry@v1 - with: - version: 'latest' - virtualenvs-create: true - virtualenvs-in-project: true - - - name: Load cached venv - id: cached-poetry-dependencies - uses: actions/cache@v4 - with: - path: .venv - key: venv-tests-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} - - - name: Install dependencies - run: poetry install --no-interaction - - - name: Cache Rust and Cargo dependencies - id: cache-rust - uses: actions/cache@v4 - with: - path: | - ~/.rustup - ~/.cargo - key: ${{ runner.os }}-rust- - restore-keys: | - ${{ runner.os }}-rust- - - - name: Install Rust toolchain and c2patool - if: steps.cache-rust.outputs.cache-hit != 'true' - run: | - curl -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable - . "$HOME/.cargo/env" - cargo install c2patool --locked - - - name: Add cargo to PATH - run: echo "$HOME/.cargo/bin" >> $GITHUB_PATH - - - name: Verify if c2patool is installed - run: | - c2patool -V - - - name: Run e2e tests with coverage - run: | - poetry run pytest tests/c2pa/e2e_test.py \ - --cov=c2pie \ - --cov-report=xml:coverage-e2e.xml \ - -v - env: - C2PIE_KEY_FILEPATH: ${{ vars.C2PIE_KEY_FILEPATH }} - C2PIE_CERT_FILEPATH: ${{ vars.C2PIE_CERT_FILEPATH }} - - - name: Upload coverage artifact - if: matrix.python-version == '3.12' - uses: actions/upload-artifact@v4 - with: - name: coverage-e2e - path: | - coverage-e2e.xml - .coverage + # - name: Set up Python + # uses: actions/setup-python@v5 + # with: + # python-version: ${{ matrix.python-version }} + + # - name: Install Poetry + # uses: snok/install-poetry@v1 + # with: + # version: 'latest' + # virtualenvs-create: true + # virtualenvs-in-project: true + + # - name: Load cached venv + # id: cached-poetry-dependencies + # uses: actions/cache@v4 + # with: + # path: .venv + # key: venv-tests-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} + + # - name: Install dependencies + # run: poetry install --no-interaction + + # - name: Cache Rust and Cargo dependencies + # id: cache-rust + # uses: actions/cache@v4 + # with: + # path: | + # ~/.rustup + # ~/.cargo + # key: ${{ runner.os }}-rust- + # restore-keys: | + # ${{ runner.os }}-rust- + + # - name: Install Rust toolchain and c2patool + # if: steps.cache-rust.outputs.cache-hit != 'true' + # run: | + # curl -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable + # . "$HOME/.cargo/env" + # cargo install c2patool --locked + + # - name: Add cargo to PATH + # run: echo "$HOME/.cargo/bin" >> $GITHUB_PATH + + # - name: Verify if c2patool is installed + # run: | + # c2patool -V + + # - name: Run e2e tests with coverage + # run: | + # poetry run pytest tests/c2pa/e2e_test.py \ + # --cov=c2pie \ + # --cov-report=xml:coverage-e2e.xml \ + # -v + # env: + # C2PIE_KEY_FILEPATH: ${{ vars.C2PIE_KEY_FILEPATH }} + # C2PIE_CERT_FILEPATH: ${{ vars.C2PIE_CERT_FILEPATH }} + + # - name: Upload coverage artifact + # if: matrix.python-version == '3.12' + # uses: actions/upload-artifact@v4 + # with: + # name: coverage-e2e + # path: | + # coverage-e2e.xml + # .coverage combine-coverage: name: Combine coverage and upload to Codecov - needs: [run-unit-tests, run-e2e-tests] + needs: [ruff] #[run-unit-tests, run-e2e-tests] runs-on: [self-hosted, Linux, X64] steps: From 75694bf41ea4c6d2f3f6b5f35ced4b1aa89fb614 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 08:05:13 +0000 Subject: [PATCH 24/54] chore(workflows): return tests --- .github/workflows/lint-and-test.yml | 266 ++++++++++++++-------------- 1 file changed, 133 insertions(+), 133 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index c886df72..89d9fbb2 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -55,146 +55,146 @@ jobs: - name: Lint (GitHub Annotations) run: poetry run ruff check --output-format=github . - # run-unit-tests: - # name: Run unit tests using matrix - # needs: ruff - # strategy: - # fail-fast: false - # matrix: - # python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14"] - - # runs-on: [self-hosted, Linux, X64] - # timeout-minutes: 30 - - # steps: - # - name: Checkout repository - # uses: actions/checkout@v5 + run-unit-tests: + name: Run unit tests using matrix + needs: ruff + strategy: + fail-fast: false + matrix: + python-version: ["3.12"] # ["3.9", "3.10","3.11","3.12","3.13", "3.14"] + + runs-on: [self-hosted, Linux, X64] + timeout-minutes: 30 + + steps: + - name: Checkout repository + uses: actions/checkout@v5 - # - name: Set up Python - # uses: actions/setup-python@v5 - # with: - # python-version: ${{ matrix.python-version }} - - # - name: Install Poetry - # uses: snok/install-poetry@v1 - # with: - # version: 'latest' - # virtualenvs-create: true - # virtualenvs-in-project: true - - # - name: Load cached venv - # id: cached-poetry-dependencies - # uses: actions/cache@v4 - # with: - # path: .venv - # key: venv-tests-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} - - # - name: Install dependencies - # run: poetry install --no-interaction - - # - name: Run unit tests with coverage - # run: | - # poetry run pytest \ - # --cov=c2pie \ - # --cov-report=xml:coverage-unit.xml \ - # -m "not e2e" \ - # --maxfail=1 \ - # -v + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + + - name: Install Poetry + uses: snok/install-poetry@v1 + with: + version: 'latest' + virtualenvs-create: true + virtualenvs-in-project: true + + - name: Load cached venv + id: cached-poetry-dependencies + uses: actions/cache@v4 + with: + path: .venv + key: venv-tests-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} + + - name: Install dependencies + run: poetry install --no-interaction + + - name: Run unit tests with coverage + run: | + poetry run pytest \ + --cov=c2pie \ + --cov-report=xml:coverage-unit.xml \ + -m "not e2e" \ + --maxfail=1 \ + -v - # - name: Upload coverage artifact - # if: matrix.python-version == '3.12' - # uses: actions/upload-artifact@v4 - # with: - # name: coverage-unit - # path: | - # coverage-unit.xml - # .coverage - - # run-e2e-tests: - # name: Run e2e tests - # needs: ruff - - # strategy: - # fail-fast: false - # matrix: - # python-version: ["3.9", "3.10","3.11","3.12","3.13", "3.14"] - - # runs-on: [self-hosted, Linux, X64] - # timeout-minutes: 30 + - name: Upload coverage artifact + if: matrix.python-version == '3.12' + uses: actions/upload-artifact@v4 + with: + name: coverage-unit + path: | + coverage-unit.xml + .coverage + + run-e2e-tests: + name: Run e2e tests + needs: ruff + + strategy: + fail-fast: false + matrix: + python-version: ["3.12"] # ["3.9", "3.10","3.11","3.12","3.13", "3.14"] + + runs-on: [self-hosted, Linux, X64] + timeout-minutes: 30 - # steps: - # - name: Checkout repository - # uses: actions/checkout@v5 + steps: + - name: Checkout repository + uses: actions/checkout@v5 - # - name: Set up Python - # uses: actions/setup-python@v5 - # with: - # python-version: ${{ matrix.python-version }} - - # - name: Install Poetry - # uses: snok/install-poetry@v1 - # with: - # version: 'latest' - # virtualenvs-create: true - # virtualenvs-in-project: true - - # - name: Load cached venv - # id: cached-poetry-dependencies - # uses: actions/cache@v4 - # with: - # path: .venv - # key: venv-tests-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} - - # - name: Install dependencies - # run: poetry install --no-interaction - - # - name: Cache Rust and Cargo dependencies - # id: cache-rust - # uses: actions/cache@v4 - # with: - # path: | - # ~/.rustup - # ~/.cargo - # key: ${{ runner.os }}-rust- - # restore-keys: | - # ${{ runner.os }}-rust- - - # - name: Install Rust toolchain and c2patool - # if: steps.cache-rust.outputs.cache-hit != 'true' - # run: | - # curl -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable - # . "$HOME/.cargo/env" - # cargo install c2patool --locked - - # - name: Add cargo to PATH - # run: echo "$HOME/.cargo/bin" >> $GITHUB_PATH - - # - name: Verify if c2patool is installed - # run: | - # c2patool -V - - # - name: Run e2e tests with coverage - # run: | - # poetry run pytest tests/c2pa/e2e_test.py \ - # --cov=c2pie \ - # --cov-report=xml:coverage-e2e.xml \ - # -v - # env: - # C2PIE_KEY_FILEPATH: ${{ vars.C2PIE_KEY_FILEPATH }} - # C2PIE_CERT_FILEPATH: ${{ vars.C2PIE_CERT_FILEPATH }} - - # - name: Upload coverage artifact - # if: matrix.python-version == '3.12' - # uses: actions/upload-artifact@v4 - # with: - # name: coverage-e2e - # path: | - # coverage-e2e.xml - # .coverage + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + + - name: Install Poetry + uses: snok/install-poetry@v1 + with: + version: 'latest' + virtualenvs-create: true + virtualenvs-in-project: true + + - name: Load cached venv + id: cached-poetry-dependencies + uses: actions/cache@v4 + with: + path: .venv + key: venv-tests-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} + + - name: Install dependencies + run: poetry install --no-interaction + + - name: Cache Rust and Cargo dependencies + id: cache-rust + uses: actions/cache@v4 + with: + path: | + ~/.rustup + ~/.cargo + key: ${{ runner.os }}-rust- + restore-keys: | + ${{ runner.os }}-rust- + + - name: Install Rust toolchain and c2patool + if: steps.cache-rust.outputs.cache-hit != 'true' + run: | + curl -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable + . "$HOME/.cargo/env" + cargo install c2patool --locked + + - name: Add cargo to PATH + run: echo "$HOME/.cargo/bin" >> $GITHUB_PATH + + - name: Verify if c2patool is installed + run: | + c2patool -V + + - name: Run e2e tests with coverage + run: | + poetry run pytest tests/c2pa/e2e_test.py \ + --cov=c2pie \ + --cov-report=xml:coverage-e2e.xml \ + -v + env: + C2PIE_KEY_FILEPATH: ${{ vars.C2PIE_KEY_FILEPATH }} + C2PIE_CERT_FILEPATH: ${{ vars.C2PIE_CERT_FILEPATH }} + + - name: Upload coverage artifact + if: matrix.python-version == '3.12' + uses: actions/upload-artifact@v4 + with: + name: coverage-e2e + path: | + coverage-e2e.xml + .coverage combine-coverage: name: Combine coverage and upload to Codecov - needs: [ruff] #[run-unit-tests, run-e2e-tests] + needs: [run-unit-tests, run-e2e-tests] runs-on: [self-hosted, Linux, X64] steps: From 1404ca6da9b52a606f355a4c511040914a52af50 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 08:53:28 +0000 Subject: [PATCH 25/54] chore(workflows): add more debug --- .github/workflows/lint-and-test.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 89d9fbb2..49b844f0 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -224,11 +224,14 @@ jobs: - name: Debug run: | ls - ls *.zip pwd - name: Unzip coverage reports run: | + pwd + echo "\n\n" + ls + echo "\n\n" unzip coverage-e2e.zip unzip coverage-unit.zip From 548a9f5f9cc1cfb485ce0922f848495141d60011 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 08:58:24 +0000 Subject: [PATCH 26/54] chore(workflows): add more debug --- .github/workflows/lint-and-test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 49b844f0..8345a5c1 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -232,6 +232,8 @@ jobs: echo "\n\n" ls echo "\n\n" + ls -lh coverage-e2e.zip + echo "\n\n" unzip coverage-e2e.zip unzip coverage-unit.zip From 586965141aaa5532537e4e439ba02e2d2cb3d622 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 09:03:59 +0000 Subject: [PATCH 27/54] chore(workflows): remove debug --- .github/workflows/lint-and-test.yml | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 8345a5c1..41d3770f 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -213,33 +213,33 @@ jobs: uses: actions/download-artifact@v5 with: name: coverage-unit - path: coverage-unit.zip + path: coverage-unit.xml - name: Download e2e coverage uses: actions/download-artifact@v5 with: name: coverage-e2e - path: coverage-e2e.zip + path: coverage-e2e.xml - name: Debug run: | ls pwd - - name: Unzip coverage reports - run: | - pwd - echo "\n\n" - ls - echo "\n\n" - ls -lh coverage-e2e.zip - echo "\n\n" - unzip coverage-e2e.zip - unzip coverage-unit.zip + # - name: Unzip coverage reports + # run: | + # pwd + # echo "\n\n" + # ls + # echo "\n\n" + # ls -lh coverage-e2e.zip + + # unzip coverage-e2e.zip + # unzip coverage-unit.zip - name: Combine coverage reports run: | - coverage combine ./coverage-unit/.coverage ./coverage-e2e/.coverage + coverage combine coverage-unit.xml coverage-unit.xml coverage xml -o coverage-combined.xml coverage report --format=markdown >> $GITHUB_STEP_SUMMARY coverage report From 56cb168ec9213982c1d0cb118949d46775270afb Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 09:07:24 +0000 Subject: [PATCH 28/54] chore(workflows): add more debug --- .github/workflows/lint-and-test.yml | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 41d3770f..c0807acb 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -224,19 +224,11 @@ jobs: - name: Debug run: | ls - pwd - - # - name: Unzip coverage reports - # run: | - # pwd - # echo "\n\n" - # ls - # echo "\n\n" - # ls -lh coverage-e2e.zip + echo "==========================" + cat coverage-e2e.xml + echo "==========================" + cat coverage-unit.xml - # unzip coverage-e2e.zip - # unzip coverage-unit.zip - - name: Combine coverage reports run: | coverage combine coverage-unit.xml coverage-unit.xml From aa45767e75f80db90fcaad059001fe8e9197ffb2 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 09:11:41 +0000 Subject: [PATCH 29/54] chore(workflows): add more debug --- .github/workflows/lint-and-test.yml | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index c0807acb..2b0e1c60 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -213,25 +213,37 @@ jobs: uses: actions/download-artifact@v5 with: name: coverage-unit - path: coverage-unit.xml + path: coverage-unit - name: Download e2e coverage uses: actions/download-artifact@v5 with: name: coverage-e2e - path: coverage-e2e.xml + path: coverage-e2e - name: Debug run: | ls - echo "==========================" - cat coverage-e2e.xml - echo "==========================" - cat coverage-unit.xml + pwd + echo "====================" + ls coverage-e2e + echo "====================" + ls coverage-unit + + # - name: Unzip coverage reports + # run: | + # pwd + # echo "\n\n" + # ls + # echo "\n\n" + # ls -lh coverage-e2e.zip + # unzip coverage-e2e.zip + # unzip coverage-unit.zip + - name: Combine coverage reports run: | - coverage combine coverage-unit.xml coverage-unit.xml + coverage combine ./coverage-unit/coverage-e2e.xml ./coverage-unit/coverage-unit.xml coverage xml -o coverage-combined.xml coverage report --format=markdown >> $GITHUB_STEP_SUMMARY coverage report From ac16b4ac7307055044b2dab3cdaaa22ac0c6dda9 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 09:15:47 +0000 Subject: [PATCH 30/54] chore(workflows): remove .coverage from upload-artifact step --- .github/workflows/lint-and-test.yml | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 2b0e1c60..49cc7cd7 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -108,7 +108,6 @@ jobs: name: coverage-unit path: | coverage-unit.xml - .coverage run-e2e-tests: name: Run e2e tests @@ -190,7 +189,6 @@ jobs: name: coverage-e2e path: | coverage-e2e.xml - .coverage combine-coverage: name: Combine coverage and upload to Codecov @@ -230,20 +228,9 @@ jobs: echo "====================" ls coverage-unit - # - name: Unzip coverage reports - # run: | - # pwd - # echo "\n\n" - # ls - # echo "\n\n" - # ls -lh coverage-e2e.zip - - # unzip coverage-e2e.zip - # unzip coverage-unit.zip - - name: Combine coverage reports run: | - coverage combine ./coverage-unit/coverage-e2e.xml ./coverage-unit/coverage-unit.xml + coverage combine ./coverage-e2e/coverage-e2e.xml ./coverage-unit/coverage-unit.xml coverage xml -o coverage-combined.xml coverage report --format=markdown >> $GITHUB_STEP_SUMMARY coverage report From bde0ff2231bc5d64ecc689e176d35fec33783c70 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 09:23:22 +0000 Subject: [PATCH 31/54] chore(workflows): add .coverage inside upload-artifact step --- .github/workflows/lint-and-test.yml | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 49cc7cd7..4e691f50 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -108,6 +108,7 @@ jobs: name: coverage-unit path: | coverage-unit.xml + .coverage/ run-e2e-tests: name: Run e2e tests @@ -189,6 +190,7 @@ jobs: name: coverage-e2e path: | coverage-e2e.xml + .coverage/ combine-coverage: name: Combine coverage and upload to Codecov @@ -219,18 +221,9 @@ jobs: name: coverage-e2e path: coverage-e2e - - name: Debug - run: | - ls - pwd - echo "====================" - ls coverage-e2e - echo "====================" - ls coverage-unit - - name: Combine coverage reports run: | - coverage combine ./coverage-e2e/coverage-e2e.xml ./coverage-unit/coverage-unit.xml + coverage combine ./coverage-e2e/ ./coverage-unit/ coverage xml -o coverage-combined.xml coverage report --format=markdown >> $GITHUB_STEP_SUMMARY coverage report From a1259b6a857086e23a212fc0bf7ecdc2aba4bdb9 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 09:33:10 +0000 Subject: [PATCH 32/54] chore(workflows): add more debug --- .github/workflows/lint-and-test.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 4e691f50..cfbb04ee 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -221,6 +221,13 @@ jobs: name: coverage-e2e path: coverage-e2e + - name: Debug + run: | + ls ./coverage-unit + echo "===============" + ls ./coverage-e2e + echo "===============" + - name: Combine coverage reports run: | coverage combine ./coverage-e2e/ ./coverage-unit/ From 7a404f136e38c92b2106506972faa28492069d2f Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 09:36:29 +0000 Subject: [PATCH 33/54] chore(workflows): add more debug --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index cfbb04ee..625c9930 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -223,9 +223,9 @@ jobs: - name: Debug run: | - ls ./coverage-unit + ls -a ./coverage-unit echo "===============" - ls ./coverage-e2e + ls -a ./coverage-e2e echo "===============" - name: Combine coverage reports From 8cdfed0e4275e2fb2b1ee81cdadcaf5f71a985bc Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 09:38:32 +0000 Subject: [PATCH 34/54] chore(workflows): add more debug --- .github/workflows/lint-and-test.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 625c9930..66771ad7 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -228,9 +228,12 @@ jobs: ls -a ./coverage-e2e echo "===============" + ls -aR ./coverage-e2e + echo "===============" + - name: Combine coverage reports run: | - coverage combine ./coverage-e2e/ ./coverage-unit/ + coverage combine ./coverage-e2e/.coverage ./coverage-unit/.coverage coverage xml -o coverage-combined.xml coverage report --format=markdown >> $GITHUB_STEP_SUMMARY coverage report From daece293ffdaba59505a95e29b06c7d8df5cc1d7 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 09:44:07 +0000 Subject: [PATCH 35/54] chore(workflows): add more debug --- .github/workflows/lint-and-test.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 66771ad7..365db774 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -221,6 +221,18 @@ jobs: name: coverage-e2e path: coverage-e2e + - name: Debug + run: | + ls -a + echo "===============" + + + - name: Debug + run: | + ls -a .coverage + echo "===============" + + - name: Debug run: | ls -a ./coverage-unit From 50f3f8935bfafc420f6550a89ef7d661a58f74c9 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 10:07:44 +0000 Subject: [PATCH 36/54] fix(workflows): fix combining --- .github/workflows/lint-and-test.yml | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 365db774..e021e88c 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -96,7 +96,6 @@ jobs: run: | poetry run pytest \ --cov=c2pie \ - --cov-report=xml:coverage-unit.xml \ -m "not e2e" \ --maxfail=1 \ -v @@ -108,7 +107,6 @@ jobs: name: coverage-unit path: | coverage-unit.xml - .coverage/ run-e2e-tests: name: Run e2e tests @@ -177,7 +175,6 @@ jobs: run: | poetry run pytest tests/c2pa/e2e_test.py \ --cov=c2pie \ - --cov-report=xml:coverage-e2e.xml \ -v env: C2PIE_KEY_FILEPATH: ${{ vars.C2PIE_KEY_FILEPATH }} @@ -190,7 +187,6 @@ jobs: name: coverage-e2e path: | coverage-e2e.xml - .coverage/ combine-coverage: name: Combine coverage and upload to Codecov @@ -221,28 +217,6 @@ jobs: name: coverage-e2e path: coverage-e2e - - name: Debug - run: | - ls -a - echo "===============" - - - - name: Debug - run: | - ls -a .coverage - echo "===============" - - - - name: Debug - run: | - ls -a ./coverage-unit - echo "===============" - ls -a ./coverage-e2e - echo "===============" - - ls -aR ./coverage-e2e - echo "===============" - - name: Combine coverage reports run: | coverage combine ./coverage-e2e/.coverage ./coverage-unit/.coverage From a8fd9166aa004a2ceba6f675ae8c3aa075614214 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 10:10:25 +0000 Subject: [PATCH 37/54] fix(workflows): fix artifact uploading --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index e021e88c..7c8d7c6b 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -106,7 +106,7 @@ jobs: with: name: coverage-unit path: | - coverage-unit.xml + .coverage run-e2e-tests: name: Run e2e tests @@ -186,7 +186,7 @@ jobs: with: name: coverage-e2e path: | - coverage-e2e.xml + .coverage combine-coverage: name: Combine coverage and upload to Codecov From 919a5c6fe21e7a4430358f67b561599c38ad15ed Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 10:21:36 +0000 Subject: [PATCH 38/54] fix(workflows): fix artifact uploading --- .github/workflows/lint-and-test.yml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 7c8d7c6b..21397e7d 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -105,8 +105,7 @@ jobs: uses: actions/upload-artifact@v4 with: name: coverage-unit - path: | - .coverage + path: ./.coverage run-e2e-tests: name: Run e2e tests @@ -185,9 +184,8 @@ jobs: uses: actions/upload-artifact@v4 with: name: coverage-e2e - path: | - .coverage - + path: ./.coverage + combine-coverage: name: Combine coverage and upload to Codecov needs: [run-unit-tests, run-e2e-tests] From 0e724c64a613a2d617d9f31a3f3763b8c0aa289e Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 10:24:40 +0000 Subject: [PATCH 39/54] chore(workflows): add more debug --- .github/workflows/lint-and-test.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 21397e7d..6c63c2d8 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -100,6 +100,12 @@ jobs: --maxfail=1 \ -v + - name: Debug + run: | + ls -a + echo "===============" + pwd + - name: Upload coverage artifact if: matrix.python-version == '3.12' uses: actions/upload-artifact@v4 From a21a191fcaf6cdb69ea1d3397aa36d1bfb66ce4b Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 10:36:01 +0000 Subject: [PATCH 40/54] fix(workflows): fix combining --- .github/workflows/lint-and-test.yml | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 6c63c2d8..1f8da50a 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -97,21 +97,16 @@ jobs: poetry run pytest \ --cov=c2pie \ -m "not e2e" \ + --cov-report=xml:coverage-unit.xml \ --maxfail=1 \ -v - - - name: Debug - run: | - ls -a - echo "===============" - pwd - name: Upload coverage artifact if: matrix.python-version == '3.12' uses: actions/upload-artifact@v4 with: name: coverage-unit - path: ./.coverage + path: coverage-unit run-e2e-tests: name: Run e2e tests @@ -180,6 +175,7 @@ jobs: run: | poetry run pytest tests/c2pa/e2e_test.py \ --cov=c2pie \ + --cov-report=xml:coverage-e2e.xml \ -v env: C2PIE_KEY_FILEPATH: ${{ vars.C2PIE_KEY_FILEPATH }} @@ -190,7 +186,7 @@ jobs: uses: actions/upload-artifact@v4 with: name: coverage-e2e - path: ./.coverage + path: coverage-e2e combine-coverage: name: Combine coverage and upload to Codecov @@ -223,7 +219,7 @@ jobs: - name: Combine coverage reports run: | - coverage combine ./coverage-e2e/.coverage ./coverage-unit/.coverage + coverage combine ./coverage-e2e/coverage-e2e.xml ./coverage-unit/coverage-unit.xml --data-file='coverage' --debug coverage xml -o coverage-combined.xml coverage report --format=markdown >> $GITHUB_STEP_SUMMARY coverage report From 6911007b4fc172985fc49023123de4fca52a2922 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 10:38:22 +0000 Subject: [PATCH 41/54] fix(workflows): fix artifact uploading --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 1f8da50a..a354bc22 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -106,7 +106,7 @@ jobs: uses: actions/upload-artifact@v4 with: name: coverage-unit - path: coverage-unit + path: coverage-unit.xml run-e2e-tests: name: Run e2e tests @@ -186,7 +186,7 @@ jobs: uses: actions/upload-artifact@v4 with: name: coverage-e2e - path: coverage-e2e + path: coverage-e2e.xml combine-coverage: name: Combine coverage and upload to Codecov From 9bbf58c22c91e2536e28f719aff99ec5ea5b7a73 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 10:44:32 +0000 Subject: [PATCH 42/54] fix(workflows): fix combining --- .github/workflows/lint-and-test.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index a354bc22..ed118b82 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -97,7 +97,7 @@ jobs: poetry run pytest \ --cov=c2pie \ -m "not e2e" \ - --cov-report=xml:coverage-unit.xml \ + --cov-report=xml:coverage.xml \ --maxfail=1 \ -v @@ -106,7 +106,7 @@ jobs: uses: actions/upload-artifact@v4 with: name: coverage-unit - path: coverage-unit.xml + path: coverage.xml run-e2e-tests: name: Run e2e tests @@ -175,7 +175,7 @@ jobs: run: | poetry run pytest tests/c2pa/e2e_test.py \ --cov=c2pie \ - --cov-report=xml:coverage-e2e.xml \ + --cov-report=xml:coverage.xml \ -v env: C2PIE_KEY_FILEPATH: ${{ vars.C2PIE_KEY_FILEPATH }} @@ -186,7 +186,7 @@ jobs: uses: actions/upload-artifact@v4 with: name: coverage-e2e - path: coverage-e2e.xml + path: coverage.xml combine-coverage: name: Combine coverage and upload to Codecov @@ -219,7 +219,7 @@ jobs: - name: Combine coverage reports run: | - coverage combine ./coverage-e2e/coverage-e2e.xml ./coverage-unit/coverage-unit.xml --data-file='coverage' --debug + coverage combine --data-file='coverage' --debug ./coverage-e2e/coverage.xml ./coverage-unit/coverage.xml coverage xml -o coverage-combined.xml coverage report --format=markdown >> $GITHUB_STEP_SUMMARY coverage report From f036060a6adf635e36978b5f0f68aa121f0ad1f7 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 10:47:34 +0000 Subject: [PATCH 43/54] fix(workflows): fix combining --- .github/workflows/lint-and-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index ed118b82..085929a0 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -219,7 +219,7 @@ jobs: - name: Combine coverage reports run: | - coverage combine --data-file='coverage' --debug ./coverage-e2e/coverage.xml ./coverage-unit/coverage.xml + coverage combine --data-file='coverage.xml' --debug ./coverage-e2e/coverage.xml ./coverage-unit/coverage.xml coverage xml -o coverage-combined.xml coverage report --format=markdown >> $GITHUB_STEP_SUMMARY coverage report From 390082e54123f17b734f3747b65ad7e832befbde Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 10:58:47 +0000 Subject: [PATCH 44/54] fix(workflows): fix combining --- .github/workflows/lint-and-test.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 085929a0..44865a0a 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -97,7 +97,6 @@ jobs: poetry run pytest \ --cov=c2pie \ -m "not e2e" \ - --cov-report=xml:coverage.xml \ --maxfail=1 \ -v @@ -105,8 +104,9 @@ jobs: if: matrix.python-version == '3.12' uses: actions/upload-artifact@v4 with: + include-hidden-files: true name: coverage-unit - path: coverage.xml + path: .coverage run-e2e-tests: name: Run e2e tests @@ -175,7 +175,6 @@ jobs: run: | poetry run pytest tests/c2pa/e2e_test.py \ --cov=c2pie \ - --cov-report=xml:coverage.xml \ -v env: C2PIE_KEY_FILEPATH: ${{ vars.C2PIE_KEY_FILEPATH }} @@ -185,8 +184,9 @@ jobs: if: matrix.python-version == '3.12' uses: actions/upload-artifact@v4 with: + include-hidden-files: true name: coverage-e2e - path: coverage.xml + path: .coverage combine-coverage: name: Combine coverage and upload to Codecov @@ -219,7 +219,7 @@ jobs: - name: Combine coverage reports run: | - coverage combine --data-file='coverage.xml' --debug ./coverage-e2e/coverage.xml ./coverage-unit/coverage.xml + coverage combine ./coverage-e2e/.coverage ./coverage-unit/.coverage coverage xml -o coverage-combined.xml coverage report --format=markdown >> $GITHUB_STEP_SUMMARY coverage report From e18e42c70a215adb59f4b65895f026ca72168b33 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 11:07:16 +0000 Subject: [PATCH 45/54] docs(readme): fix workflow link in ci badge --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index 04bac081..c1fdfd61 100644 --- a/README.md +++ b/README.md @@ -6,8 +6,7 @@ ------- -[![Unit Tests](https://github.com/TourmalineCore/tc-c2pa-py/actions/workflows/run_unit_tests.yml/badge.svg)](https://github.com/TourmalineCore/tc-c2pa-py/actions/workflows/run_unit_tests.yml) -[![Lint](https://github.com/TourmalineCore/tc-c2pa-py/actions/workflows/lint.yml/badge.svg)](https://github.com/TourmalineCore/tc-c2pa-py/actions/workflows/lint.yml) +[![CI](https://github.com/TourmalineCore/tc-c2pa-py/actions/workflows/lint-and-test.yml/badge.svg)](https://github.com/TourmalineCore/tc-c2pa-py/actions/workflows/lint-and-test.yml)
From a6de235c64dd6cc83e25946b4a99676cf9698b75 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 11:08:28 +0000 Subject: [PATCH 46/54] docs(readme): fix repository name --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c1fdfd61..bc544a49 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ------- -[![CI](https://github.com/TourmalineCore/tc-c2pa-py/actions/workflows/lint-and-test.yml/badge.svg)](https://github.com/TourmalineCore/tc-c2pa-py/actions/workflows/lint-and-test.yml) +[![CI](https://github.com/TourmalineCore/c2pie/actions/workflows/lint-and-test.yml/badge.svg)](https://github.com/TourmalineCore/c2pie/actions/workflows/lint-and-test.yml)
From b2c8eee58fcf27cfa733040422b17d9178346cc4 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 11:13:27 +0000 Subject: [PATCH 47/54] fix(workflows): fix matrix --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 44865a0a..4b9c9e40 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -61,7 +61,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.12"] # ["3.9", "3.10","3.11","3.12","3.13", "3.14"] + python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] runs-on: [self-hosted, Linux, X64] timeout-minutes: 30 @@ -115,7 +115,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.12"] # ["3.9", "3.10","3.11","3.12","3.13", "3.14"] + python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] runs-on: [self-hosted, Linux, X64] timeout-minutes: 30 From e439646d94d0f67624d802119619a7cd0f6b28d4 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 11:19:51 +0000 Subject: [PATCH 48/54] feat(workflows): upload combined coverage report --- .github/workflows/lint-and-test.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 4b9c9e40..192b6201 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -224,6 +224,12 @@ jobs: coverage report --format=markdown >> $GITHUB_STEP_SUMMARY coverage report + - name: Upload combined coverage artifact + uses: actions/upload-artifact@v4 + with: + name: coverage-combined + path: coverage-combined.xml + - name: Upload to Codecov uses: codecov/codecov-action@v4 with: From d938b6a8c2581a1b62688951978bccc727420156 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 11:29:56 +0000 Subject: [PATCH 49/54] feat(workflows): upload combined coverage report in html --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 192b6201..b764912c 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -222,13 +222,13 @@ jobs: coverage combine ./coverage-e2e/.coverage ./coverage-unit/.coverage coverage xml -o coverage-combined.xml coverage report --format=markdown >> $GITHUB_STEP_SUMMARY - coverage report + coverage html -o coverage-combined.html - name: Upload combined coverage artifact uses: actions/upload-artifact@v4 with: name: coverage-combined - path: coverage-combined.xml + path: coverage-combined.html - name: Upload to Codecov uses: codecov/codecov-action@v4 From a423783dda1f5f821d85c7091d17735865085ee4 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 11:40:57 +0000 Subject: [PATCH 50/54] feat(workflows): fix combined html report --- .github/workflows/lint-and-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index b764912c..6109fa85 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -222,7 +222,7 @@ jobs: coverage combine ./coverage-e2e/.coverage ./coverage-unit/.coverage coverage xml -o coverage-combined.xml coverage report --format=markdown >> $GITHUB_STEP_SUMMARY - coverage html -o coverage-combined.html + coverage html coverage-combined.html - name: Upload combined coverage artifact uses: actions/upload-artifact@v4 From 1edc93eb844fcef57864be78593f53438897e908 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 11:45:38 +0000 Subject: [PATCH 51/54] feat(workflows): move from html to json report --- .github/workflows/lint-and-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/lint-and-test.yml b/.github/workflows/lint-and-test.yml index 6109fa85..942bb89a 100644 --- a/.github/workflows/lint-and-test.yml +++ b/.github/workflows/lint-and-test.yml @@ -222,13 +222,13 @@ jobs: coverage combine ./coverage-e2e/.coverage ./coverage-unit/.coverage coverage xml -o coverage-combined.xml coverage report --format=markdown >> $GITHUB_STEP_SUMMARY - coverage html coverage-combined.html + coverage json -o coverage-combined.json - name: Upload combined coverage artifact uses: actions/upload-artifact@v4 with: name: coverage-combined - path: coverage-combined.html + path: coverage-combined.json - name: Upload to Codecov uses: codecov/codecov-action@v4 From cf08f54dadbfebd8d02a85ba20fc49ac691e0c48 Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 12:48:20 +0000 Subject: [PATCH 52/54] feat(workflows): move from poetry publish to pypi oidc --- .github/workflows/publish-package.yml | 43 +++++++++++++++++++-------- 1 file changed, 31 insertions(+), 12 deletions(-) diff --git a/.github/workflows/publish-package.yml b/.github/workflows/publish-package.yml index 5a81b85f..490bfd0a 100644 --- a/.github/workflows/publish-package.yml +++ b/.github/workflows/publish-package.yml @@ -16,18 +16,18 @@ jobs: linting-and-testing: name: Linting and Testing uses: ./.github/workflows/lint-and-test.yml - package-publishing: + release-build: name: Build and Publish Package - if: startsWith(github.event.ref, 'refs/tags/v') + # if: startsWith(github.event.ref, 'refs/tags/v') needs: linting-and-testing strategy: fail-fast: false - matrix: - os: [ubuntu-latest, macos-latest, windows-latest] - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] + # matrix: + # os: [ubuntu-latest, macos-latest, windows-latest] + # python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] - runs-on: ${{ matrix.os }} + runs-on: [self-hosted, Linux, X64] # ${{ matrix.os }} timeout-minutes: 30 steps: @@ -38,7 +38,7 @@ jobs: - uses: actions/setup-python@v5 with: - python-version: ${{ matrix.python-version }} + python-version: "3.12" # ${{ matrix.python-version }} - name: Install Poetry uses: snok/install-poetry@v1 @@ -49,10 +49,29 @@ jobs: run: | poetry lock && poetry install --no-interaction --no-ansi - - name: Configure Repository Credentials - run: | - poetry config pypi-token.pypi ${{ secrets.PYPI_TOKEN }} - - name: Build and Publish the Package run: | - poetry publish --build \ No newline at end of file + poetry build + + - name: Upload dists + uses: actions/upload-artifact@v4 + with: + name: release-dists + path: dist/ + + pypi-publish: + runs-on: ubuntu-latest + needs: + - release-build + permissions: + id-token: write + + steps: + - name: Retrieve release distributions + uses: actions/download-artifact@v5 + with: + name: release-dists + path: dist/ + + - name: Publish release distributions to PyPI + uses: pypa/gh-action-pypi-publish@3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0d1e2f \ No newline at end of file From fc5ea36f94dea98aaeeb07b1a4b08eddd64e582e Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 12:55:36 +0000 Subject: [PATCH 53/54] feat(workflows): return matrix --- .github/workflows/publish-package.yml | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/.github/workflows/publish-package.yml b/.github/workflows/publish-package.yml index 490bfd0a..a30031e1 100644 --- a/.github/workflows/publish-package.yml +++ b/.github/workflows/publish-package.yml @@ -18,16 +18,16 @@ jobs: uses: ./.github/workflows/lint-and-test.yml release-build: name: Build and Publish Package - # if: startsWith(github.event.ref, 'refs/tags/v') + if: startsWith(github.event.ref, 'refs/tags/v') needs: linting-and-testing strategy: fail-fast: false - # matrix: - # os: [ubuntu-latest, macos-latest, windows-latest] - # python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] + matrix: + os: [ubuntu-latest, macos-latest, windows-latest] + python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] - runs-on: [self-hosted, Linux, X64] # ${{ matrix.os }} + runs-on: ${{ matrix.os }} timeout-minutes: 30 steps: @@ -38,17 +38,13 @@ jobs: - uses: actions/setup-python@v5 with: - python-version: "3.12" # ${{ matrix.python-version }} + python-version: ${{ matrix.python-version }} - name: Install Poetry uses: snok/install-poetry@v1 with: version: 'latest' - - name: Run Poetry install - run: | - poetry lock && poetry install --no-interaction --no-ansi - - name: Build and Publish the Package run: | poetry build From d11cbdac5e46783077144b58653ddec8e547f00c Mon Sep 17 00:00:00 2001 From: SupremeSoviet Date: Thu, 9 Oct 2025 12:57:59 +0000 Subject: [PATCH 54/54] build(poetry): update python versions --- poetry.lock | 111 +++++++++++++++++++++++++++++-------------------- pyproject.toml | 7 ++-- 2 files changed, 71 insertions(+), 47 deletions(-) diff --git a/poetry.lock b/poetry.lock index fe1360f0..8aeda360 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 2.1.3 and should not be changed by hand. +# This file is automatically @generated by Poetry 2.2.1 and should not be changed by hand. [[package]] name = "cbor2" @@ -292,57 +292,80 @@ toml = ["tomli ; python_full_version <= \"3.11.0a6\""] [[package]] name = "cryptography" -version = "42.0.8" +version = "46.0.2" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." optional = false -python-versions = ">=3.7" +python-versions = "!=3.9.0,!=3.9.1,>=3.8" groups = ["main"] files = [ - {file = "cryptography-42.0.8-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:81d8a521705787afe7a18d5bfb47ea9d9cc068206270aad0b96a725022e18d2e"}, - {file = "cryptography-42.0.8-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:961e61cefdcb06e0c6d7e3a1b22ebe8b996eb2bf50614e89384be54c48c6b63d"}, - {file = "cryptography-42.0.8-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e3ec3672626e1b9e55afd0df6d774ff0e953452886e06e0f1eb7eb0c832e8902"}, - {file = "cryptography-42.0.8-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e599b53fd95357d92304510fb7bda8523ed1f79ca98dce2f43c115950aa78801"}, - {file = "cryptography-42.0.8-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:5226d5d21ab681f432a9c1cf8b658c0cb02533eece706b155e5fbd8a0cdd3949"}, - {file = "cryptography-42.0.8-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:6b7c4f03ce01afd3b76cf69a5455caa9cfa3de8c8f493e0d3ab7d20611c8dae9"}, - {file = "cryptography-42.0.8-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:2346b911eb349ab547076f47f2e035fc8ff2c02380a7cbbf8d87114fa0f1c583"}, - {file = "cryptography-42.0.8-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:ad803773e9df0b92e0a817d22fd8a3675493f690b96130a5e24f1b8fabbea9c7"}, - {file = "cryptography-42.0.8-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:2f66d9cd9147ee495a8374a45ca445819f8929a3efcd2e3df6428e46c3cbb10b"}, - {file = "cryptography-42.0.8-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:d45b940883a03e19e944456a558b67a41160e367a719833c53de6911cabba2b7"}, - {file = "cryptography-42.0.8-cp37-abi3-win32.whl", hash = "sha256:a0c5b2b0585b6af82d7e385f55a8bc568abff8923af147ee3c07bd8b42cda8b2"}, - {file = "cryptography-42.0.8-cp37-abi3-win_amd64.whl", hash = "sha256:57080dee41209e556a9a4ce60d229244f7a66ef52750f813bfbe18959770cfba"}, - {file = "cryptography-42.0.8-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:dea567d1b0e8bc5764b9443858b673b734100c2871dc93163f58c46a97a83d28"}, - {file = "cryptography-42.0.8-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c4783183f7cb757b73b2ae9aed6599b96338eb957233c58ca8f49a49cc32fd5e"}, - {file = "cryptography-42.0.8-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a0608251135d0e03111152e41f0cc2392d1e74e35703960d4190b2e0f4ca9c70"}, - {file = "cryptography-42.0.8-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:dc0fdf6787f37b1c6b08e6dfc892d9d068b5bdb671198c72072828b80bd5fe4c"}, - {file = "cryptography-42.0.8-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:9c0c1716c8447ee7dbf08d6db2e5c41c688544c61074b54fc4564196f55c25a7"}, - {file = "cryptography-42.0.8-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:fff12c88a672ab9c9c1cf7b0c80e3ad9e2ebd9d828d955c126be4fd3e5578c9e"}, - {file = "cryptography-42.0.8-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:cafb92b2bc622cd1aa6a1dce4b93307792633f4c5fe1f46c6b97cf67073ec961"}, - {file = "cryptography-42.0.8-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:31f721658a29331f895a5a54e7e82075554ccfb8b163a18719d342f5ffe5ecb1"}, - {file = "cryptography-42.0.8-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:b297f90c5723d04bcc8265fc2a0f86d4ea2e0f7ab4b6994459548d3a6b992a14"}, - {file = "cryptography-42.0.8-cp39-abi3-win32.whl", hash = "sha256:2f88d197e66c65be5e42cd72e5c18afbfae3f741742070e3019ac8f4ac57262c"}, - {file = "cryptography-42.0.8-cp39-abi3-win_amd64.whl", hash = "sha256:fa76fbb7596cc5839320000cdd5d0955313696d9511debab7ee7278fc8b5c84a"}, - {file = "cryptography-42.0.8-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ba4f0a211697362e89ad822e667d8d340b4d8d55fae72cdd619389fb5912eefe"}, - {file = "cryptography-42.0.8-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:81884c4d096c272f00aeb1f11cf62ccd39763581645b0812e99a91505fa48e0c"}, - {file = "cryptography-42.0.8-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:c9bb2ae11bfbab395bdd072985abde58ea9860ed84e59dbc0463a5d0159f5b71"}, - {file = "cryptography-42.0.8-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:7016f837e15b0a1c119d27ecd89b3515f01f90a8615ed5e9427e30d9cdbfed3d"}, - {file = "cryptography-42.0.8-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:5a94eccb2a81a309806027e1670a358b99b8fe8bfe9f8d329f27d72c094dde8c"}, - {file = "cryptography-42.0.8-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:dec9b018df185f08483f294cae6ccac29e7a6e0678996587363dc352dc65c842"}, - {file = "cryptography-42.0.8-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:343728aac38decfdeecf55ecab3264b015be68fc2816ca800db649607aeee648"}, - {file = "cryptography-42.0.8-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:013629ae70b40af70c9a7a5db40abe5d9054e6f4380e50ce769947b73bf3caad"}, - {file = "cryptography-42.0.8.tar.gz", hash = "sha256:8d09d05439ce7baa8e9e95b07ec5b6c886f548deb7e0f69ef25f64b3bce842f2"}, + {file = "cryptography-46.0.2-cp311-abi3-macosx_10_9_universal2.whl", hash = "sha256:f3e32ab7dd1b1ef67b9232c4cf5e2ee4cd517d4316ea910acaaa9c5712a1c663"}, + {file = "cryptography-46.0.2-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:1fd1a69086926b623ef8126b4c33d5399ce9e2f3fac07c9c734c2a4ec38b6d02"}, + {file = "cryptography-46.0.2-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:bb7fb9cd44c2582aa5990cf61a4183e6f54eea3172e54963787ba47287edd135"}, + {file = "cryptography-46.0.2-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:9066cfd7f146f291869a9898b01df1c9b0e314bfa182cef432043f13fc462c92"}, + {file = "cryptography-46.0.2-cp311-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:97e83bf4f2f2c084d8dd792d13841d0a9b241643151686010866bbd076b19659"}, + {file = "cryptography-46.0.2-cp311-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:4a766d2a5d8127364fd936572c6e6757682fc5dfcbdba1632d4554943199f2fa"}, + {file = "cryptography-46.0.2-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:fab8f805e9675e61ed8538f192aad70500fa6afb33a8803932999b1049363a08"}, + {file = "cryptography-46.0.2-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:1e3b6428a3d56043bff0bb85b41c535734204e599c1c0977e1d0f261b02f3ad5"}, + {file = "cryptography-46.0.2-cp311-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:1a88634851d9b8de8bb53726f4300ab191d3b2f42595e2581a54b26aba71b7cc"}, + {file = "cryptography-46.0.2-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:be939b99d4e091eec9a2bcf41aaf8f351f312cd19ff74b5c83480f08a8a43e0b"}, + {file = "cryptography-46.0.2-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:9f13b040649bc18e7eb37936009b24fd31ca095a5c647be8bb6aaf1761142bd1"}, + {file = "cryptography-46.0.2-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:9bdc25e4e01b261a8fda4e98618f1c9515febcecebc9566ddf4a70c63967043b"}, + {file = "cryptography-46.0.2-cp311-abi3-win32.whl", hash = "sha256:8b9bf67b11ef9e28f4d78ff88b04ed0929fcd0e4f70bb0f704cfc32a5c6311ee"}, + {file = "cryptography-46.0.2-cp311-abi3-win_amd64.whl", hash = "sha256:758cfc7f4c38c5c5274b55a57ef1910107436f4ae842478c4989abbd24bd5acb"}, + {file = "cryptography-46.0.2-cp311-abi3-win_arm64.whl", hash = "sha256:218abd64a2e72f8472c2102febb596793347a3e65fafbb4ad50519969da44470"}, + {file = "cryptography-46.0.2-cp314-cp314t-macosx_10_9_universal2.whl", hash = "sha256:bda55e8dbe8533937956c996beaa20266a8eca3570402e52ae52ed60de1faca8"}, + {file = "cryptography-46.0.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:e7155c0b004e936d381b15425273aee1cebc94f879c0ce82b0d7fecbf755d53a"}, + {file = "cryptography-46.0.2-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:a61c154cc5488272a6c4b86e8d5beff4639cdb173d75325ce464d723cda0052b"}, + {file = "cryptography-46.0.2-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:9ec3f2e2173f36a9679d3b06d3d01121ab9b57c979de1e6a244b98d51fea1b20"}, + {file = "cryptography-46.0.2-cp314-cp314t-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:2fafb6aa24e702bbf74de4cb23bfa2c3beb7ab7683a299062b69724c92e0fa73"}, + {file = "cryptography-46.0.2-cp314-cp314t-manylinux_2_28_ppc64le.whl", hash = "sha256:0c7ffe8c9b1fcbb07a26d7c9fa5e857c2fe80d72d7b9e0353dcf1d2180ae60ee"}, + {file = "cryptography-46.0.2-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:5840f05518caa86b09d23f8b9405a7b6d5400085aa14a72a98fdf5cf1568c0d2"}, + {file = "cryptography-46.0.2-cp314-cp314t-manylinux_2_34_aarch64.whl", hash = "sha256:27c53b4f6a682a1b645fbf1cd5058c72cf2f5aeba7d74314c36838c7cbc06e0f"}, + {file = "cryptography-46.0.2-cp314-cp314t-manylinux_2_34_ppc64le.whl", hash = "sha256:512c0250065e0a6b286b2db4bbcc2e67d810acd53eb81733e71314340366279e"}, + {file = "cryptography-46.0.2-cp314-cp314t-manylinux_2_34_x86_64.whl", hash = "sha256:07c0eb6657c0e9cca5891f4e35081dbf985c8131825e21d99b4f440a8f496f36"}, + {file = "cryptography-46.0.2-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:48b983089378f50cba258f7f7aa28198c3f6e13e607eaf10472c26320332ca9a"}, + {file = "cryptography-46.0.2-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:e6f6775eaaa08c0eec73e301f7592f4367ccde5e4e4df8e58320f2ebf161ea2c"}, + {file = "cryptography-46.0.2-cp314-cp314t-win32.whl", hash = "sha256:e8633996579961f9b5a3008683344c2558d38420029d3c0bc7ff77c17949a4e1"}, + {file = "cryptography-46.0.2-cp314-cp314t-win_amd64.whl", hash = "sha256:48c01988ecbb32979bb98731f5c2b2f79042a6c58cc9a319c8c2f9987c7f68f9"}, + {file = "cryptography-46.0.2-cp314-cp314t-win_arm64.whl", hash = "sha256:8e2ad4d1a5899b7caa3a450e33ee2734be7cc0689010964703a7c4bcc8dd4fd0"}, + {file = "cryptography-46.0.2-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:a08e7401a94c002e79dc3bc5231b6558cd4b2280ee525c4673f650a37e2c7685"}, + {file = "cryptography-46.0.2-cp38-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d30bc11d35743bf4ddf76674a0a369ec8a21f87aaa09b0661b04c5f6c46e8d7b"}, + {file = "cryptography-46.0.2-cp38-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:bca3f0ce67e5a2a2cf524e86f44697c4323a86e0fd7ba857de1c30d52c11ede1"}, + {file = "cryptography-46.0.2-cp38-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:ff798ad7a957a5021dcbab78dfff681f0cf15744d0e6af62bd6746984d9c9e9c"}, + {file = "cryptography-46.0.2-cp38-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:cb5e8daac840e8879407acbe689a174f5ebaf344a062f8918e526824eb5d97af"}, + {file = "cryptography-46.0.2-cp38-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:3f37aa12b2d91e157827d90ce78f6180f0c02319468a0aea86ab5a9566da644b"}, + {file = "cryptography-46.0.2-cp38-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:5e38f203160a48b93010b07493c15f2babb4e0f2319bbd001885adb3f3696d21"}, + {file = "cryptography-46.0.2-cp38-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:d19f5f48883752b5ab34cff9e2f7e4a7f216296f33714e77d1beb03d108632b6"}, + {file = "cryptography-46.0.2-cp38-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:04911b149eae142ccd8c9a68892a70c21613864afb47aba92d8c7ed9cc001023"}, + {file = "cryptography-46.0.2-cp38-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:8b16c1ede6a937c291d41176934268e4ccac2c6521c69d3f5961c5a1e11e039e"}, + {file = "cryptography-46.0.2-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:747b6f4a4a23d5a215aadd1d0b12233b4119c4313df83ab4137631d43672cc90"}, + {file = "cryptography-46.0.2-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:6b275e398ab3a7905e168c036aad54b5969d63d3d9099a0a66cc147a3cc983be"}, + {file = "cryptography-46.0.2-cp38-abi3-win32.whl", hash = "sha256:0b507c8e033307e37af61cb9f7159b416173bdf5b41d11c4df2e499a1d8e007c"}, + {file = "cryptography-46.0.2-cp38-abi3-win_amd64.whl", hash = "sha256:f9b2dc7668418fb6f221e4bf701f716e05e8eadb4f1988a2487b11aedf8abe62"}, + {file = "cryptography-46.0.2-cp38-abi3-win_arm64.whl", hash = "sha256:91447f2b17e83c9e0c89f133119d83f94ce6e0fb55dd47da0a959316e6e9cfa1"}, + {file = "cryptography-46.0.2-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:f25a41f5b34b371a06dad3f01799706631331adc7d6c05253f5bca22068c7a34"}, + {file = "cryptography-46.0.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:e12b61e0b86611e3f4c1756686d9086c1d36e6fd15326f5658112ad1f1cc8807"}, + {file = "cryptography-46.0.2-pp311-pypy311_pp73-macosx_10_9_x86_64.whl", hash = "sha256:1d3b3edd145953832e09607986f2bd86f85d1dc9c48ced41808b18009d9f30e5"}, + {file = "cryptography-46.0.2-pp311-pypy311_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:fe245cf4a73c20592f0f48da39748b3513db114465be78f0a36da847221bd1b4"}, + {file = "cryptography-46.0.2-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:2b9cad9cf71d0c45566624ff76654e9bae5f8a25970c250a26ccfc73f8553e2d"}, + {file = "cryptography-46.0.2-pp311-pypy311_pp73-manylinux_2_34_aarch64.whl", hash = "sha256:9bd26f2f75a925fdf5e0a446c0de2714f17819bf560b44b7480e4dd632ad6c46"}, + {file = "cryptography-46.0.2-pp311-pypy311_pp73-manylinux_2_34_x86_64.whl", hash = "sha256:7282d8f092b5be7172d6472f29b0631f39f18512a3642aefe52c3c0e0ccfad5a"}, + {file = "cryptography-46.0.2-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:c4b93af7920cdf80f71650769464ccf1fb49a4b56ae0024173c24c48eb6b1612"}, + {file = "cryptography-46.0.2.tar.gz", hash = "sha256:21b6fc8c71a3f9a604f028a329e5560009cc4a3a828bfea5fcba8eb7647d88fe"}, ] [package.dependencies] -cffi = {version = ">=1.12", markers = "platform_python_implementation != \"PyPy\""} +cffi = {version = ">=2.0.0", markers = "python_full_version >= \"3.9.0\" and platform_python_implementation != \"PyPy\""} +typing-extensions = {version = ">=4.13.2", markers = "python_full_version < \"3.11.0\""} [package.extras] -docs = ["sphinx (>=5.3.0)", "sphinx-rtd-theme (>=1.1.1)"] -docstest = ["pyenchant (>=1.6.11)", "readme-renderer", "sphinxcontrib-spelling (>=4.0.1)"] -nox = ["nox"] -pep8test = ["check-sdist", "click", "mypy", "ruff"] -sdist = ["build"] +docs = ["sphinx (>=5.3.0)", "sphinx-inline-tabs", "sphinx-rtd-theme (>=3.0.0)"] +docstest = ["pyenchant (>=3)", "readme-renderer (>=30.0)", "sphinxcontrib-spelling (>=7.3.1)"] +nox = ["nox[uv] (>=2024.4.15)"] +pep8test = ["check-sdist", "click (>=8.0.1)", "mypy (>=1.14)", "ruff (>=0.11.11)"] +sdist = ["build (>=1.0.0)"] ssh = ["bcrypt (>=3.1.5)"] -test = ["certifi", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist"] +test = ["certifi (>=2024)", "cryptography-vectors (==46.0.2)", "pretend (>=0.7)", "pytest (>=7.4.0)", "pytest-benchmark (>=4.0)", "pytest-cov (>=2.10.1)", "pytest-xdist (>=3.5.0)"] test-randomorder = ["pytest-randomly"] [[package]] @@ -582,5 +605,5 @@ files = [ [metadata] lock-version = "2.1" -python-versions = "^3.9,<3.15" -content-hash = "adccc7e390e5d1b5b798fe96dc3715777402f5a34125c248c42e701d1332c61a" +python-versions = ">=3.9.2,<3.15" +content-hash = "a6fbc153e43b02a84ca1c6300722b132b6e5343a2969e80a8b84c032de524769" diff --git a/pyproject.toml b/pyproject.toml index 1d7118cd..42d6c340 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,7 +14,7 @@ authors = [ { name="Tourmaline Core", email="contact@tourmalinecore.com" }, ] classifiers = [ - "Development Status :: 4 - Beta", + "Development Status :: 3 - Alpha", "Natural Language :: English", "Operating System :: MacOS :: MacOS X", "Operating System :: POSIX :: Linux", @@ -26,6 +26,7 @@ classifiers = [ "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", ] [project.urls] @@ -36,9 +37,9 @@ Issues = "https://github.com/TourmalineCore/c2pie/issues" c2pie = 'c2pie.main:main' [tool.poetry.dependencies] -python = "^3.9,<3.15" +python = ">=3.9.2,<3.15" cbor2 = "^5.6.3" -cryptography = "^42.0.5" +cryptography = ">=44.0.1" pytz = "^2024.1" cffi = "<=2.0.0" pypdf = "^6.1.1"