File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -15,36 +15,20 @@ concurrency:
1515
1616jobs :
1717 tests :
18- name : ${{ matrix.os }} / ${{ matrix.python-version }} / ${{ matrix.qt-version }}
18+ name : ${{ matrix.os }}
1919 runs-on : ${{ matrix.image }}
2020 strategy :
2121 matrix :
22- os : [ubuntu]
23- python-version : ["3.8", "3.9", "3.10", "3.11"]
24- qt-version : ["pyside2", "pyside6", "pyqt5", "pyqt6"]
22+ os : [ubuntu, windows, macos-x86_64, macos-arm64]
2523 include :
2624 - os : ubuntu
2725 image : ubuntu-24.04
28- # - os: windows
29- # image: windows-2022
30- # - os: macos-x86_64
31- # image: macos-13
32- # - os: macos-arm64
33- # image: macos-14
34- exclude :
35- # pyside2 does not publish arm64 packages
26+ - os : windows
27+ image : windows-2022
28+ - os : macos-x86_64
29+ image : macos-13
3630 - os : macos-arm64
37- qt-version : pyside2
38- - python-version : " 3.11"
39- qt-version : pyside2
40- - python-version : " 3.12"
41- qt-version : pyside2
42- - python-version : " 3.13"
43- qt-version : pyside2
44- - python-version : " 3.8"
45- qt-version : pyside6
46- - python-version : " 3.8"
47- qt-version : pyqt6
31+ image : macos-14
4832 fail-fast : false
4933 defaults :
5034 run :
5438 - name : Checkout
5539 uses : actions/checkout@v4
5640
57- # - name: Set up Python ${{ matrix.python-version }}
58- # uses: actions/setup-python@v5
59- # with:
60- # python-version: ${{ matrix.python-version }}
61-
6241 - name : Install libxcb dependencies
6342 if : ${{ matrix.os == 'ubuntu' }}
6443 env :
Original file line number Diff line number Diff line change @@ -70,5 +70,6 @@ markers = ["raises"]
7070testpaths = [" tests" ]
7171
7272[tool .coverage .run ]
73+ parallel = true
7374source = [" src" , " tests" ]
7475omit = [" tests/conftest.py" ]
Original file line number Diff line number Diff line change 11#! /usr/bin/env bash
22
3- PYTHON_VERSIONS=(" 3.10" " 3.11" )
4- QT_VERSIONS=(" pyside2" " pyside6" ) # "pyqt5" "pyqt6")
3+ set -euo pipefail
4+
5+ PYTHON_VERSIONS=(" 3.8" " 3.9" " 3.10" " 3.11" " 3.12" " 3.13" )
6+ QT_VERSIONS=(" pyside2" " pyside6" " pyqt5" " pyqt6" )
57OS_NAME=" ${GITHUB_MATRIX_OS:- $(uname | tr ' [:upper:]' ' [:lower:]' )} "
68
79for PY in " ${PYTHON_VERSIONS[@]} " ; do
810 uv venv --clear
9- uv python pin " $PY "
11+ uv python install " $PY "
1012 for QT in " ${QT_VERSIONS[@]} " ; do
1113
1214 # pyside2 requires python <3.11
1315 if [[ " $QT " == " pyside2" && (" $PY " == " 3.11" || " $PY " == " 3.12" || " $PY " == " 3.13" ) ]]; then continue ; fi
1416 # pyside6 and pyqt6 require python >=3.9
1517 if [[ " $QT " == " pyside6" || " $QT " == " pyqt6" ]] && [[ " $PY " == " 3.8" ]]; then continue ; fi
18+ # pyside2 does not publish arm64 packages
19+ if [[ " $QT " == " pyside2" && " $OS_NAME " == " darwin" && " $( uname -m) " == " arm64" ]]; then continue ; fi
1620
1721 uv sync --locked --dev
18- uv pip install " $QT "
1922
23+ if ! uv pip install " $QT " ; then
24+ echo " Failed to install $QT for Python $PY , skipping"
25+ continue
26+ fi
27+
28+ echo " Testing qasync with $PY / $QT "
2029 QT_API=" $QT " uv run coverage run -m pytest --verbose tests/ || true
2130 done
2231done
You can’t perform that action at this time.
0 commit comments