diff --git a/.github/workflows/test_and_deploy.yml b/.github/workflows/test_and_deploy.yml index c0dee09..e4bc0d6 100644 --- a/.github/workflows/test_and_deploy.yml +++ b/.github/workflows/test_and_deploy.yml @@ -28,10 +28,10 @@ jobs: task: [black, ruff] steps: - uses: actions/checkout@v4 - - name: Set up Python 3.12 + - name: Set up Python uses: actions/setup-python@v5 with: - python-version: 3.12 + python-version: "3.x" - name: Install dependencies run: | pip install --upgrade pip @@ -42,9 +42,10 @@ jobs: name: ${{ matrix.platform }} py${{ matrix.python-version }} runs-on: ${{ matrix.platform }} strategy: + fail-fast: true matrix: platform: [ ubuntu-latest, windows-latest, macos-latest ] - python-version: [ "3.8", "3.9", "3.10", "3.11" ] + python-version: [ "3.9", "3.10", "3.11", "3.12" ] steps: - uses: actions/checkout@v4 @@ -64,6 +65,16 @@ jobs: powershell gl-ci-helpers/appveyor/install_opengl.ps1 if (Test-Path -Path "C:\Windows\system32\opengl32.dll" -PathType Leaf) {Exit 0} else {Exit 1} + # Temporary fix for 'pip install imageio-ffmpeg' + # not including the FFMPEG binary on Apple Silicon macs + # This step can be removed when issue is fixed in imageio-ffmpeg + # https://github.com/imageio/imageio-ffmpeg/issues/71 + - name: Setup FFmpeg + if: ${{ runner.os == 'macOS' && runner.arch == 'ARM64' }} + run: | + brew update + brew install ffmpeg + - name: Install dependencies run: | python -m pip install --upgrade pip diff --git a/tox.ini b/tox.ini index f13f01b..1054476 100644 --- a/tox.ini +++ b/tox.ini @@ -1,6 +1,6 @@ # For more information about tox, see https://tox.readthedocs.io/en/latest/ [tox] -envlist = py{39,310,311,312}-{linux,macos,windows}-pyqt, py{39,310,311,312}-{linux,macos,windows}-pyside +envlist = py{39,310,311,312}-{linux,macos,windows}-pyqt, py{39,310}-{linux,macosintel,windows}-pyside [gh-actions] python = @@ -13,11 +13,13 @@ python = PLATFORM = ubuntu-latest: linux macos-latest: macos + macos-13: macosintel windows-latest: windows [testenv] platform = macos: darwin + macosintel: darwin linux: linux windows: win32 passenv = @@ -34,13 +36,14 @@ deps = pytest-xvfb ; sys_platform == 'linux' commands = pytest -v --color=yes --cov=napari_animation --cov-report=xml -[testenv:py{38,39,310,311}-{linux,macos,windows}-pyqt] +[testenv:py{39,310,311,312}-{linux,macos,windows}-pyqt] deps = napari[pyqt5,testing] lxml_html_clean # should only be needed till napari 0.5.0 # . # napari-animation install from source -[testenv:py{38,39,310}-{linux,macos,windows}-pyside] +# PySide2 unavailable on Mac apple silicon arm64, and for python >=3.11 +[testenv:py{39,310}-{linux,macosintel,windows}-pyside] deps = napari[pyside2,testing] lxml_html_clean # should only be needed till napari 0.5.0