From 1957f7635ef9bd1fa63076f3669742fb1807e8c0 Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Mon, 24 Nov 2025 13:27:27 +0100 Subject: [PATCH 01/14] Attempt to use matrix for python and OS versions --- .github/workflows/test_accuracy.yml | 22 ++++++++++++++++++---- .github/workflows/test_precommit.yml | 23 ++++++++++++++++++----- 2 files changed, 36 insertions(+), 9 deletions(-) diff --git a/.github/workflows/test_accuracy.yml b/.github/workflows/test_accuracy.yml index c3e0ddd4..01ed5f1e 100644 --- a/.github/workflows/test_accuracy.yml +++ b/.github/workflows/test_accuracy.yml @@ -10,16 +10,30 @@ concurrency: cancel-in-progress: true jobs: test_accuracy: - runs-on: ubuntu-24.04 + strategy: + fail-fast: false + matrix: + os: + - "ubuntu-24.04" + - "windows-2022" + - "macos-15" + python-version: + - "3.10" + - "3.11" + - "3.12" + - "3.13" + - "3.14" + name: pr test accuracy (${{ matrix.os }}, Python ${{ matrix.python-version }}) + runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: persist-credentials: false - - uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0 - with: - python-version-file: ".python-version" - name: Install uv uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2 + with: + enable-cache: false + python-version: ${{ matrix.python-version }} - name: Install dependencies run: | uv sync --locked --extra tests --extra-index-url https://download.pytorch.org/whl/cpu diff --git a/.github/workflows/test_precommit.yml b/.github/workflows/test_precommit.yml index 7fa2a8c4..9b35cc79 100644 --- a/.github/workflows/test_precommit.yml +++ b/.github/workflows/test_precommit.yml @@ -10,18 +10,31 @@ concurrency: cancel-in-progress: true jobs: Python-Functional-Tests: - runs-on: ubuntu-24.04 + strategy: + fail-fast: false + matrix: + os: + - "ubuntu-24.04" + - "windows-2022" + - "macos-15" + python-version: + - "3.10" + - "3.11" + - "3.12" + - "3.13" + - "3.14" + name: pr pre-commit test (${{ matrix.os }}, Python ${{ matrix.python-version }}) + runs-on: ${{ matrix.os }} steps: - name: CHECKOUT REPOSITORY uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: persist-credentials: false - - name: Set up Python - uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0 - with: - python-version-file: ".python-version" - name: Install uv uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2 + with: + enable-cache: false + python-version: ${{ matrix.python-version }} - name: Install dependencies run: | uv sync --locked --extra tests --extra-index-url https://download.pytorch.org/whl/cpu From 041c61715a0ed5b9aba9fd9c1f4e02b8c5e2e4d7 Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Mon, 24 Nov 2025 13:29:35 +0100 Subject: [PATCH 02/14] Update badges --- README.md | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 25c2288b..1ecad6df 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,7 @@ # OpenVINO Model API -[![PyPI](https://img.shields.io/pypi/v/otx)](https://pypi.org/project/openvino-model-api) -[![Downloads](https://static.pepy.tech/personalized-badge/otx?period=total&units=international_system&left_color=grey&right_color=green&left_text=PyPI%20Downloads)](https://pepy.tech/project/openvino-model-api) - - - -[![openvino](https://img.shields.io/badge/openvino-2025.2-purple)]() - - +[![PyPI](https://img.shields.io/pypi/v/openvino-model-api)](https://pypi.org/project/openvino-model-api) +[![Downloads](https://static.pepy.tech/personalized-badge/openvino-model-api?period=total&units=international_system&left_color=grey&right_color=green&left_text=PyPI%20Downloads)](https://pepy.tech/project/openvino-model-api) [![Pre-Merge Test](https://github.com/open-edge-platform/model_api/actions/workflows/pre_commit.yml/badge.svg)](https://github.com/open-edge-platform/model_api/actions/workflows/pre_commit.yml) [![Build Docs](https://github.com/open-edge-platform/model_api/actions/workflows/docs.yml/badge.svg)](https://github.com/open-edge-platform/model_api/actions/workflows/docs.yml) From 4de2baf348730188bcdada762de28ecf0f7edbcc Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Mon, 24 Nov 2025 13:32:28 +0100 Subject: [PATCH 03/14] Remove support for python 3.14 --- .github/workflows/test_accuracy.yml | 1 - .github/workflows/test_precommit.yml | 1 - 2 files changed, 2 deletions(-) diff --git a/.github/workflows/test_accuracy.yml b/.github/workflows/test_accuracy.yml index 01ed5f1e..ce3165c3 100644 --- a/.github/workflows/test_accuracy.yml +++ b/.github/workflows/test_accuracy.yml @@ -22,7 +22,6 @@ jobs: - "3.11" - "3.12" - "3.13" - - "3.14" name: pr test accuracy (${{ matrix.os }}, Python ${{ matrix.python-version }}) runs-on: ${{ matrix.os }} steps: diff --git a/.github/workflows/test_precommit.yml b/.github/workflows/test_precommit.yml index 9b35cc79..2e607efd 100644 --- a/.github/workflows/test_precommit.yml +++ b/.github/workflows/test_precommit.yml @@ -22,7 +22,6 @@ jobs: - "3.11" - "3.12" - "3.13" - - "3.14" name: pr pre-commit test (${{ matrix.os }}, Python ${{ matrix.python-version }}) runs-on: ${{ matrix.os }} steps: From ea9a1e8a687cb056188f24af9c6a9923cd56c00f Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Mon, 24 Nov 2025 14:30:13 +0100 Subject: [PATCH 04/14] Test on x86 platforms only --- .github/workflows/test_accuracy.yml | 1 - .github/workflows/test_precommit.yml | 1 - 2 files changed, 2 deletions(-) diff --git a/.github/workflows/test_accuracy.yml b/.github/workflows/test_accuracy.yml index ce3165c3..a6f67565 100644 --- a/.github/workflows/test_accuracy.yml +++ b/.github/workflows/test_accuracy.yml @@ -16,7 +16,6 @@ jobs: os: - "ubuntu-24.04" - "windows-2022" - - "macos-15" python-version: - "3.10" - "3.11" diff --git a/.github/workflows/test_precommit.yml b/.github/workflows/test_precommit.yml index 2e607efd..b50ecd5a 100644 --- a/.github/workflows/test_precommit.yml +++ b/.github/workflows/test_precommit.yml @@ -16,7 +16,6 @@ jobs: os: - "ubuntu-24.04" - "windows-2022" - - "macos-15" python-version: - "3.10" - "3.11" From 71110e219060ccc12890c44a78dbfa9d7b3f8102 Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Tue, 25 Nov 2025 12:44:29 +0100 Subject: [PATCH 05/14] Attempt to report all test_accuracy* items as a single element --- .github/workflows/test_accuracy.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test_accuracy.yml b/.github/workflows/test_accuracy.yml index a6f67565..c1a05455 100644 --- a/.github/workflows/test_accuracy.yml +++ b/.github/workflows/test_accuracy.yml @@ -9,7 +9,7 @@ concurrency: group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} cancel-in-progress: true jobs: - test_accuracy: + test_accuracy_parts: strategy: fail-fast: false matrix: @@ -41,3 +41,5 @@ jobs: - name: Run Python Test run: | uv run pytest --data=./data tests/accuracy/test_accuracy.py + test_accuracy: + needs: [test_accuracy_parts] From fd95b5e4680255ee08fca2dade9fcbca1bbd9091 Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Tue, 25 Nov 2025 13:01:53 +0100 Subject: [PATCH 06/14] Get names --- .github/workflows/test_accuracy.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/test_accuracy.yml b/.github/workflows/test_accuracy.yml index c1a05455..1936f9a4 100644 --- a/.github/workflows/test_accuracy.yml +++ b/.github/workflows/test_accuracy.yml @@ -41,5 +41,3 @@ jobs: - name: Run Python Test run: | uv run pytest --data=./data tests/accuracy/test_accuracy.py - test_accuracy: - needs: [test_accuracy_parts] From c4468730e33da0339263eb7b667c9cfdb4a36959 Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Tue, 25 Nov 2025 13:07:36 +0100 Subject: [PATCH 07/14] Unify name --- .github/workflows/test_accuracy.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/test_accuracy.yml b/.github/workflows/test_accuracy.yml index 1936f9a4..c42fa62a 100644 --- a/.github/workflows/test_accuracy.yml +++ b/.github/workflows/test_accuracy.yml @@ -9,7 +9,7 @@ concurrency: group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} cancel-in-progress: true jobs: - test_accuracy_parts: + test_accuracy: strategy: fail-fast: false matrix: @@ -21,7 +21,6 @@ jobs: - "3.11" - "3.12" - "3.13" - name: pr test accuracy (${{ matrix.os }}, Python ${{ matrix.python-version }}) runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 From eb957889c40aa2c52774ca417cf27540c7e8dcdf Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Tue, 25 Nov 2025 13:09:23 +0100 Subject: [PATCH 08/14] Reduce variations --- .github/workflows/test_accuracy.yml | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test_accuracy.yml b/.github/workflows/test_accuracy.yml index c42fa62a..1f4ddba6 100644 --- a/.github/workflows/test_accuracy.yml +++ b/.github/workflows/test_accuracy.yml @@ -9,18 +9,18 @@ concurrency: group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} cancel-in-progress: true jobs: - test_accuracy: + test_accuracy_items: strategy: fail-fast: false matrix: os: - "ubuntu-24.04" - - "windows-2022" +# - "windows-2022" python-version: - "3.10" - - "3.11" - - "3.12" - - "3.13" +# - "3.11" +# - "3.12" +# - "3.13" runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 @@ -40,3 +40,14 @@ jobs: - name: Run Python Test run: | uv run pytest --data=./data tests/accuracy/test_accuracy.py + tests: + runs-on: ubuntu-latest + needs: test_accuracy_items + if: always() + steps: + - name: All tests ok + if: ${{ !(contains(needs.*.result, 'failure')) }} + run: exit 0 + - name: Some tests failed + if: ${{ contains(needs.*.result, 'failure') }} + run: exit 1 \ No newline at end of file From 1adf1606bee2c12452797215a8a4871ecd14c339 Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Tue, 25 Nov 2025 13:14:48 +0100 Subject: [PATCH 09/14] test simple conditions --- .github/workflows/test_accuracy.yml | 40 ++++++++++++++-------------- .github/workflows/test_precommit.yml | 8 +++--- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/.github/workflows/test_accuracy.yml b/.github/workflows/test_accuracy.yml index 1f4ddba6..d0d13528 100644 --- a/.github/workflows/test_accuracy.yml +++ b/.github/workflows/test_accuracy.yml @@ -26,28 +26,28 @@ jobs: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: persist-credentials: false - - name: Install uv - uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2 - with: - enable-cache: false - python-version: ${{ matrix.python-version }} - - name: Install dependencies - run: | - uv sync --locked --extra tests --extra-index-url https://download.pytorch.org/whl/cpu - - name: Prepare test data - run: | - uv run python tests/accuracy/download_models.py -d data -j tests/accuracy/public_scope.json -l - - name: Run Python Test - run: | - uv run pytest --data=./data tests/accuracy/test_accuracy.py - tests: +# - name: Install uv +# uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2 +# with: +# enable-cache: false +# python-version: ${{ matrix.python-version }} +# - name: Install dependencies +# run: | +# uv sync --locked --extra tests --extra-index-url https://download.pytorch.org/whl/cpu +# - name: Prepare test data +# run: | +# uv run python tests/accuracy/download_models.py -d data -j tests/accuracy/public_scope.json -l +# - name: Run Python Test +# run: | +# uv run pytest --data=./data tests/accuracy/test_accuracy.py + test_accuracy: runs-on: ubuntu-latest - needs: test_accuracy_items +# needs: test_accuracy / test_accuracy_items if: always() steps: - name: All tests ok - if: ${{ !(contains(needs.*.result, 'failure')) }} +# if: ${{ !(contains(needs.*.result, 'failure')) }} run: exit 0 - - name: Some tests failed - if: ${{ contains(needs.*.result, 'failure') }} - run: exit 1 \ No newline at end of file +# - name: Some tests failed +# if: ${{ contains(needs.*.result, 'failure') }} +# run: exit 1 \ No newline at end of file diff --git a/.github/workflows/test_precommit.yml b/.github/workflows/test_precommit.yml index b50ecd5a..416c9d1b 100644 --- a/.github/workflows/test_precommit.yml +++ b/.github/workflows/test_precommit.yml @@ -15,12 +15,12 @@ jobs: matrix: os: - "ubuntu-24.04" - - "windows-2022" +# - "windows-2022" python-version: - "3.10" - - "3.11" - - "3.12" - - "3.13" +# - "3.11" +# - "3.12" +# - "3.13" name: pr pre-commit test (${{ matrix.os }}, Python ${{ matrix.python-version }}) runs-on: ${{ matrix.os }} steps: From 1344703b3738467254fee71059b25bcab235d8dc Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Tue, 25 Nov 2025 13:17:10 +0100 Subject: [PATCH 10/14] add items --- .github/workflows/test_accuracy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test_accuracy.yml b/.github/workflows/test_accuracy.yml index d0d13528..de22790b 100644 --- a/.github/workflows/test_accuracy.yml +++ b/.github/workflows/test_accuracy.yml @@ -42,7 +42,7 @@ jobs: # uv run pytest --data=./data tests/accuracy/test_accuracy.py test_accuracy: runs-on: ubuntu-latest -# needs: test_accuracy / test_accuracy_items + needs: test_accuracy_items if: always() steps: - name: All tests ok From 4baa5f2be2aa55a09ebce2239d85e229b061e59c Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Tue, 25 Nov 2025 13:18:18 +0100 Subject: [PATCH 11/14] Enable checking of dependencies --- .github/workflows/test_accuracy.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test_accuracy.yml b/.github/workflows/test_accuracy.yml index de22790b..81c13a68 100644 --- a/.github/workflows/test_accuracy.yml +++ b/.github/workflows/test_accuracy.yml @@ -46,8 +46,8 @@ jobs: if: always() steps: - name: All tests ok -# if: ${{ !(contains(needs.*.result, 'failure')) }} + if: ${{ !(contains(needs.*.result, 'failure')) }} run: exit 0 -# - name: Some tests failed -# if: ${{ contains(needs.*.result, 'failure') }} -# run: exit 1 \ No newline at end of file + - name: Some tests failed + if: ${{ contains(needs.*.result, 'failure') }} + run: exit 1 \ No newline at end of file From 2e214e46cef100eb108e066202d331e6e3d32f21 Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Tue, 25 Nov 2025 13:19:14 +0100 Subject: [PATCH 12/14] Enable all items --- .github/workflows/test_accuracy.yml | 8 ++++---- .github/workflows/test_precommit.yml | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/test_accuracy.yml b/.github/workflows/test_accuracy.yml index 81c13a68..0a883826 100644 --- a/.github/workflows/test_accuracy.yml +++ b/.github/workflows/test_accuracy.yml @@ -15,12 +15,12 @@ jobs: matrix: os: - "ubuntu-24.04" -# - "windows-2022" + - "windows-2022" python-version: - "3.10" -# - "3.11" -# - "3.12" -# - "3.13" + - "3.11" + - "3.12" + - "3.13" runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 diff --git a/.github/workflows/test_precommit.yml b/.github/workflows/test_precommit.yml index 416c9d1b..b50ecd5a 100644 --- a/.github/workflows/test_precommit.yml +++ b/.github/workflows/test_precommit.yml @@ -15,12 +15,12 @@ jobs: matrix: os: - "ubuntu-24.04" -# - "windows-2022" + - "windows-2022" python-version: - "3.10" -# - "3.11" -# - "3.12" -# - "3.13" + - "3.11" + - "3.12" + - "3.13" name: pr pre-commit test (${{ matrix.os }}, Python ${{ matrix.python-version }}) runs-on: ${{ matrix.os }} steps: From c10733dd67c76d6e158d81e4491d4b9a153cddc7 Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Tue, 25 Nov 2025 13:20:21 +0100 Subject: [PATCH 13/14] Enable all checks --- .github/workflows/test_accuracy.yml | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/.github/workflows/test_accuracy.yml b/.github/workflows/test_accuracy.yml index 0a883826..f210fafb 100644 --- a/.github/workflows/test_accuracy.yml +++ b/.github/workflows/test_accuracy.yml @@ -26,20 +26,20 @@ jobs: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: persist-credentials: false -# - name: Install uv -# uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2 -# with: -# enable-cache: false -# python-version: ${{ matrix.python-version }} -# - name: Install dependencies -# run: | -# uv sync --locked --extra tests --extra-index-url https://download.pytorch.org/whl/cpu -# - name: Prepare test data -# run: | -# uv run python tests/accuracy/download_models.py -d data -j tests/accuracy/public_scope.json -l -# - name: Run Python Test -# run: | -# uv run pytest --data=./data tests/accuracy/test_accuracy.py + - name: Install uv + uses: astral-sh/setup-uv@85856786d1ce8acfbcc2f13a5f3fbd6b938f9f41 # v7.1.2 + with: + enable-cache: false + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: | + uv sync --locked --extra tests --extra-index-url https://download.pytorch.org/whl/cpu + - name: Prepare test data + run: | + uv run python tests/accuracy/download_models.py -d data -j tests/accuracy/public_scope.json -l + - name: Run Python Test + run: | + uv run pytest --data=./data tests/accuracy/test_accuracy.py test_accuracy: runs-on: ubuntu-latest needs: test_accuracy_items From 3026ca428c6c4d2e7967f537500f6c95e3491a1b Mon Sep 17 00:00:00 2001 From: "Tybulewicz, Tomasz" Date: Tue, 25 Nov 2025 13:25:20 +0100 Subject: [PATCH 14/14] newline --- .github/workflows/test_accuracy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test_accuracy.yml b/.github/workflows/test_accuracy.yml index f210fafb..220530f9 100644 --- a/.github/workflows/test_accuracy.yml +++ b/.github/workflows/test_accuracy.yml @@ -50,4 +50,4 @@ jobs: run: exit 0 - name: Some tests failed if: ${{ contains(needs.*.result, 'failure') }} - run: exit 1 \ No newline at end of file + run: exit 1