From 5e2dc0f4d7d404a00deb711bacaf9afc64ecbb13 Mon Sep 17 00:00:00 2001 From: Frankie Dintino Date: Mon, 11 Sep 2023 17:21:06 -0400 Subject: [PATCH] re-add python 2.7 test workflow --- .github/workflows/linux-install.sh | 14 ++++++++++++-- .github/workflows/test.yml | 13 ++++++++++--- tox.ini | 9 +++++---- 3 files changed, 27 insertions(+), 9 deletions(-) diff --git a/.github/workflows/linux-install.sh b/.github/workflows/linux-install.sh index abb8cc0..37271db 100755 --- a/.github/workflows/linux-install.sh +++ b/.github/workflows/linux-install.sh @@ -2,6 +2,15 @@ set -eo pipefail +aptget() +{ + if [ $(id -u) == 0 ]; then + apt-get "$@" + else + sudo apt-get "$@" + fi +} + aptget_update() { if [ ! -z $1 ]; then @@ -9,7 +18,7 @@ aptget_update() echo "Retrying apt-get update..." echo "" fi - output=`sudo apt-get update 2>&1` + output=`aptget update 2>&1` echo "$output" if [[ $output == *[WE]:\ * ]]; then return 1 @@ -19,11 +28,12 @@ aptget_update || aptget_update retry || aptget_update retry set -e -sudo apt-get -qq install zlib1g-dev libpng-dev libjpeg-dev \ +aptget -qq install zlib1g-dev libpng-dev libjpeg-dev sudo \ libxml2-dev libffi-dev libxslt-dev cmake ninja-build nasm if [ "$GHA_PYTHON_VERSION" == "2.7" ]; then python2 -m pip install tox tox-gh-actions + aptget install -y python3-pip else python3 -m pip install 'tox<4' tox-gh-actions fi diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ec11e8b..1e17cec 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -18,7 +18,9 @@ jobs: "3.9", "3.8", "3.7", + "2.7", ] + libavif-version: [ "0.11.0" ] include: - python-version: "3.7" PYTHONOPTIMIZE: 1 @@ -29,17 +31,23 @@ jobs: codecov-flag: GHA_Ubuntu - os: macos-11 codecov-flag: GHA_macOS + exclude: + - python-version: "2.7" + os: "macos-11" runs-on: ${{ matrix.os }} - name: ${{ matrix.os }} Python ${{ matrix.python-version }} + name: ${{ matrix.os }} Python ${{ matrix.python-version }} (libavif ${{ matrix.libavif-version }}) + container: + image: ${{ matrix.python-version == '2.7' && 'python:2.7-buster' || null }} env: - LIBAVIF_VERSION: 0.11.0 + LIBAVIF_VERSION: ${{ matrix.libavif-version }} steps: - uses: actions/checkout@v3 - name: Set up Python ${{ matrix.python-version }} + if: matrix.python-version != '2.7' uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} @@ -74,7 +82,6 @@ jobs: if: failure() run: | mkdir -p tests/errors - shell: pwsh - name: Upload errors uses: actions/upload-artifact@v3 diff --git a/tox.ini b/tox.ini index 6797669..aafcaa3 100644 --- a/tox.ini +++ b/tox.ini @@ -3,6 +3,7 @@ envlist = py{27,37,38,39,310,py37} minversion = 1.9 [gh-actions] +problem_matcher = False python = 2.7: py27 3.7: py37 @@ -29,10 +30,10 @@ commands = {envpython} setup.py clean {envpython} setup.py build_ext --build-lib {envdir}/src --build-temp {envdir} develop {envpython} -m pytest -W always {posargs: -vv --cov pillow_avif --cov tests --cov-report term} - - gcovr -r {toxinidir} --object-directory {envdir} -k {envpython} -c "import os; os.path.exists('{toxworkdir}/coverage') or os.makedirs('{toxworkdir}/coverage')" - - gcovr -r {toxinidir} --object-directory {envdir} -k --xml \ - -o {toxworkdir}/coverage/gcov_coverage.{envname}.xml + - gcovr -r {toxinidir} --object-directory {envdir} -k \ + --gcov-ignore-errors=no_working_dir_found \ + -o {toxworkdir}/coverage/.gcov_coverage.{envname} deps = gcovr pytest @@ -50,7 +51,7 @@ changedir = {toxworkdir}/coverage commands = coverage combine coverage report - coverage xml + coverage xml -o {toxinidir}/coverage.xml [testenv:codecov] skip_install = true