From 7b712ea7d1e0c362885a8871e7f34589e8e34615 Mon Sep 17 00:00:00 2001 From: dgw Date: Mon, 6 Nov 2023 20:03:46 -0600 Subject: [PATCH] ci: switch to Coveralls' first-party GitHub Action Dropped `coveralls` dev-requirement in favor of using the `coverage` package directly, and upgraded it to the latest release series (7.x). The `line_bits` table in .coverage (SQLite DB of results, generated by `coverage`) isn't populated. coverallsapp/coverage-reporter tries an SQL query against the database based on this empty table, and fails because there aren't any coverage results to upload. We work around this by having `coverage lcov` generate a file format that the reporter can understand. --- .github/workflows/ci.yml | 21 ++++++++++----------- dev-requirements.txt | 2 +- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b8b7d05b6..46c643f6f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -41,12 +41,13 @@ jobs: run: make lint - name: Run pytest run: make test_norecord + - name: Generate lcov coverage report + run: coverage lcov - name: Upload coverage data to coveralls.io - run: coveralls --service=github - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - COVERALLS_FLAG_NAME: ${{ matrix.python-version }} - COVERALLS_PARALLEL: true + uses: coverallsapp/github-action@v2 + with: + flag-name: ${{ matrix.python-version }} + parallel: true coveralls: if: ${{ github.repository_owner == 'sopel-irc' }} @@ -55,11 +56,9 @@ jobs: name: Finalize job on coveralls.io needs: tests runs-on: ubuntu-latest - container: python:3-slim steps: - name: Notify coveralls.io - run: | - pip install --upgrade coveralls - coveralls --finish - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + uses: coverallsapp/github-action@v2 + with: + parallel-finished: true + carryforward: all diff --git a/dev-requirements.txt b/dev-requirements.txt index 39c25f980..3b6ea72d8 100644 --- a/dev-requirements.txt +++ b/dev-requirements.txt @@ -1,5 +1,5 @@ # These are requirements to develop Sopel itself. -coveralls>=2.0 +coverage~=7.0 flake8>=5 flake8-coding flake8-future-import