From f0c0d075e324e1c4ae5ac822fc9980694532414f Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 15:47:18 +0200 Subject: [PATCH 01/15] Bump versions of GitHub actions Several GitHub actions that we use in our CI/CD pipelines have recently upgraded to using Node 24. Since Node 20 will be deprecated in the near future, we needed to bump the version number of these actions. --- .github/workflows/build_release.yml | 8 ++++---- .github/workflows/python.yml | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build_release.yml b/.github/workflows/build_release.yml index bc29ed2..e24df49 100644 --- a/.github/workflows/build_release.yml +++ b/.github/workflows/build_release.yml @@ -9,7 +9,7 @@ jobs: name: Build package runs-on: ubuntu-latest steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 with: # Needed for `setuptools-scm` fetch-depth: 0 @@ -20,7 +20,7 @@ jobs: - name: Build wheel run: pipx run build --wheel - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@v7 with: path: dist @@ -42,11 +42,11 @@ jobs: # Ref: https://docs.github.com/en/webhooks/webhook-events-and-payloads?actionType=released#release if: github.event_name == 'release' && github.event.action == 'released' steps: - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v7 with: path: dist # put artifacts where next action expects them to be merge-multiple: true - - uses: pypa/gh-action-pypi-publish@release/v1.13 + - uses: pypa/gh-action-pypi-publish@release/v1.14 with: # For testing, use TestPyPI # repository-url: https://test.pypi.org/legacy/ diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index efc0d9c..7fd3afd 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -13,9 +13,9 @@ jobs: matrix: python-version: ["3.10", "3.11", "3.12", "3.13"] steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: ${{ matrix.python-version }} - name: Install From 33afeea8473baa1a22b430b65562419bc6a0abc5 Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 16:36:07 +0200 Subject: [PATCH 02/15] Try different coverage reporting tool --- .github/workflows/python.yml | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 7fd3afd..e4ac1a1 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -23,11 +23,19 @@ jobs: - name: Test run: tox continue-on-error: true - - name: Get Test Coverage - uses: orgoro/coverage@v3.2 + # - name: Get Test Coverage + # uses: orgoro/coverage@v3.2 + # with: + # coverageFile: coverage.xml + # token: ${{ secrets.GITHUB_TOKEN }} + - name: Coverage summary + uses: irongut/code-coverage-summary@v1 with: - coverageFile: coverage.xml - token: ${{ secrets.GITHUB_TOKEN }} + filename: coverage.xml + badge: true + format: markdown + output: both + # - name: Run tests # run: | # pytest --junitxml=pytest.xml --cov-report=term-missing:skip-covered --cov=losoto tests/ | tee pytest-coverage.txt From 467769a65a6050621a55d45b6ab5c54416eaf0e9 Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 16:39:38 +0200 Subject: [PATCH 03/15] Try different coverage reporting tool (2) --- .github/workflows/python.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index e4ac1a1..e740280 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -28,13 +28,13 @@ jobs: # with: # coverageFile: coverage.xml # token: ${{ secrets.GITHUB_TOKEN }} - - name: Coverage summary - uses: irongut/code-coverage-summary@v1 + - name: Code Coverage Summary Report + uses: irongut/CodeCoverageSummary@v1.3.0 with: filename: coverage.xml - badge: true - format: markdown - output: both + # badge: true + # format: markdown + # output: both # - name: Run tests # run: | From 0e2f9b527d3a9f0ca59412dc6774bf22b47d6819 Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 16:42:53 +0200 Subject: [PATCH 04/15] Try different coverage reporting tool (3) --- .github/workflows/python.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index e740280..36cf0a0 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -18,6 +18,7 @@ jobs: uses: actions/setup-python@v6 with: python-version: ${{ matrix.python-version }} + cache: "pip" - name: Install run: pip install .[test] - name: Test @@ -32,9 +33,9 @@ jobs: uses: irongut/CodeCoverageSummary@v1.3.0 with: filename: coverage.xml - # badge: true - # format: markdown - # output: both + badge: true + format: markdown + output: both # - name: Run tests # run: | From 3ad87f5b7cf0ff9c0a0e1baca56b2f49376a7fba Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 17:11:34 +0200 Subject: [PATCH 05/15] Try yet another code coverage tool --- .github/workflows/python.yml | 16 ++++++++++------ pyproject.toml | 1 - 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 36cf0a0..fc1d131 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -29,13 +29,17 @@ jobs: # with: # coverageFile: coverage.xml # token: ${{ secrets.GITHUB_TOKEN }} - - name: Code Coverage Summary Report - uses: irongut/CodeCoverageSummary@v1.3.0 + # - name: Code Coverage Summary Report + # uses: irongut/CodeCoverageSummary@v1.3.0 + # with: + # filename: coverage.xml + # badge: true + # format: markdown + # output: both + - name: Get Test Coverage + uses: insightsengineering/coverage-action@v3 with: - filename: coverage.xml - badge: true - format: markdown - output: both + path: ./cobertura.xml # - name: Run tests # run: | diff --git a/pyproject.toml b/pyproject.toml index 8cfce53..efe9a31 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -72,6 +72,5 @@ deps = [ "pytest-cov", ] commands = [ - # ["python", "{toxinidir}/tools/losoto_test.py"], ["python", "-m", "pytest", "--cov-report", "term", "--cov-report", "xml", "--cov-report", "html", "--cov=losoto", "tests/{posargs}"] ] From 63e4453b808e4029f7c8cd944dca4466f2e912e5 Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 17:17:44 +0200 Subject: [PATCH 06/15] Debug insightsengineering/coverage-action --- .github/workflows/python.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index fc1d131..569cbb3 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -36,10 +36,10 @@ jobs: # badge: true # format: markdown # output: both - - name: Get Test Coverage - uses: insightsengineering/coverage-action@v3 - with: - path: ./cobertura.xml + # - name: Get Test Coverage + # uses: insightsengineering/coverage-action@v3 + # with: + # path: ./cobertura.xml # - name: Run tests # run: | From 5fa518590fff127dda8e2105de75c0fef8dbe942 Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 17:19:04 +0200 Subject: [PATCH 07/15] Debug insightsengineering/coverage-action (2) --- .github/workflows/python.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 569cbb3..1f586bf 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -36,10 +36,10 @@ jobs: # badge: true # format: markdown # output: both - # - name: Get Test Coverage - # uses: insightsengineering/coverage-action@v3 - # with: - # path: ./cobertura.xml + - name: Get Test Coverage + uses: insightsengineering/coverage-action@v3.0.3 + # with: + # path: ./cobertura.xml # - name: Run tests # run: | From 847378b78138732c21a4dd0e442e00ac4f90541e Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 17:20:56 +0200 Subject: [PATCH 08/15] Debug insightsengineering/coverage-action (3) --- .github/workflows/python.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 1f586bf..1ef2ff0 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -37,7 +37,7 @@ jobs: # format: markdown # output: both - name: Get Test Coverage - uses: insightsengineering/coverage-action@v3.0.3 + uses: insightsengineering/coverage-action@v2 # with: # path: ./cobertura.xml From e83ca1981deb23b75854612673c82f4330f4f248 Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 17:27:07 +0200 Subject: [PATCH 09/15] Debug insightsengineering/coverage-action (4) --- .github/workflows/python.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 1ef2ff0..86c303e 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -37,7 +37,7 @@ jobs: # format: markdown # output: both - name: Get Test Coverage - uses: insightsengineering/coverage-action@v2 + uses: insightsengineering/coverage-action@v3.0.2 # with: # path: ./cobertura.xml From 1d252164b4f4458facadff36f3a91e5780a272eb Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 17:34:02 +0200 Subject: [PATCH 10/15] Debug insightsengineering/coverage-action (5) --- .github/workflows/python.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 86c303e..2b043f9 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -38,8 +38,9 @@ jobs: # output: both - name: Get Test Coverage uses: insightsengineering/coverage-action@v3.0.2 - # with: - # path: ./cobertura.xml + with: + # path: ./cobertura.xml + publish: true # - name: Run tests # run: | From c0b02fe7d9ee46a240ebe5ff8d35924a3ff22413 Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 17:42:36 +0200 Subject: [PATCH 11/15] Debug insightsengineering/coverage-action (6) --- .github/workflows/python.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 2b043f9..f635f97 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -39,8 +39,12 @@ jobs: - name: Get Test Coverage uses: insightsengineering/coverage-action@v3.0.2 with: - # path: ./cobertura.xml + path: coverage.xml publish: true + diff: true + diff-branch: master + togglable-report: true + # exclude-detailed-coverage: true # - name: Run tests # run: | From feed72afc8daa2940cb1152c6fd3b05a8d174b05 Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 17:44:10 +0200 Subject: [PATCH 12/15] Debug insightsengineering/coverage-action (7) --- .github/workflows/python.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index f635f97..0169e39 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -37,7 +37,7 @@ jobs: # format: markdown # output: both - name: Get Test Coverage - uses: insightsengineering/coverage-action@v3.0.2 + uses: insightsengineering/coverage-action@v3 with: path: coverage.xml publish: true From db21cdf8185740f37055f7c9f270df7bcfbc7332 Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 17:47:14 +0200 Subject: [PATCH 13/15] Debug insightsengineering/coverage-action (8) --- .github/workflows/python.yml | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 0169e39..9d60c75 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -29,13 +29,6 @@ jobs: # with: # coverageFile: coverage.xml # token: ${{ secrets.GITHUB_TOKEN }} - # - name: Code Coverage Summary Report - # uses: irongut/CodeCoverageSummary@v1.3.0 - # with: - # filename: coverage.xml - # badge: true - # format: markdown - # output: both - name: Get Test Coverage uses: insightsengineering/coverage-action@v3 with: @@ -44,13 +37,3 @@ jobs: diff: true diff-branch: master togglable-report: true - # exclude-detailed-coverage: true - - # - name: Run tests - # run: | - # pytest --junitxml=pytest.xml --cov-report=term-missing:skip-covered --cov=losoto tests/ | tee pytest-coverage.txt - # - name: Report test coverage - # uses: MishaKav/pytest-coverage-comment@main - # with: - # pytest-coverage-path: ./pytest-coverage.txt - # junitxml-path: ./pytest.xml From efcc1f3c6e82aec0142e9476d7a2c068fbdd91ad Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 17:49:21 +0200 Subject: [PATCH 14/15] Debug insightsengineering/coverage-action (9) --- .github/workflows/python.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 9d60c75..03beaf4 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -30,7 +30,7 @@ jobs: # coverageFile: coverage.xml # token: ${{ secrets.GITHUB_TOKEN }} - name: Get Test Coverage - uses: insightsengineering/coverage-action@v3 + uses: insightsengineering/coverage-action@v2 with: path: coverage.xml publish: true From 002b7e35a60df4f3db9d30731b41d1a8a6ad182a Mon Sep 17 00:00:00 2001 From: Marcel Loose Date: Mon, 20 Apr 2026 17:54:19 +0200 Subject: [PATCH 15/15] Debug insightsengineering/coverage-action (10) --- .github/workflows/python.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index 03beaf4..157f24d 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -31,6 +31,8 @@ jobs: # token: ${{ secrets.GITHUB_TOKEN }} - name: Get Test Coverage uses: insightsengineering/coverage-action@v2 + # Coverage should be the same for each python version, just pick one + if: matrix.python-version == '3.12' with: path: coverage.xml publish: true