1313 - main
1414 - ' *.x'
1515
16+ concurrency :
17+ group : test-${{ github.ref }}
18+ cancel-in-progress : true
19+
1620jobs :
1721 test :
1822 name : Test ${{ matrix.os }} Python ${{ matrix.python-version }} conda=${{ matrix.use-conda }}
3438 PYSIDE6_VERSION : ${{ matrix.pyside6-version || matrix.qt6-version-default }}
3539 PYSIDE6_QT_VERSION : ${{ matrix.pyside6-qt-version || matrix.pyside6-version || matrix.qt6-version-default }}
3640 QSCINTILLA_VERSION : ${{ matrix.qscintilla-version || matrix.qscintilla-version-default }}
41+ PYQT_EXTRAS : ${{ matrix.pyqt-extras || matrix.pyqt-extras-default }}
3742 SKIP_PIP_CHECK : ${{ matrix.skip-pip-check }}
3843 strategy :
3944 fail-fast : false
@@ -44,30 +49,34 @@ jobs:
4449 qt5-version-default : ['5.12']
4550 qt6-version-default : ['6.3']
4651 qscintilla-version-default : ['2.13']
52+ pyqt-extras-default : ['No']
4753 include :
4854 - os : ubuntu-latest
4955 special-invocation : ' xvfb-run --auto-servernum ' # Needed for GUI tests to work
5056 - python-version : ' 3.11'
5157 pyqt5-version : ' 5.15' # Python 3.11 needs 5.15+
5258 pyside2-version : ' 5.15' # Python 3.11 needs 5.15+
53- pyside6-version : ' 6.4 ' # Python 3.11 needs 6.4+
59+ pyside6-version : ' 6.5 ' # Python 3.11 needs 6.4+. Test upper bound
5460 - use-conda : ' Yes'
5561 skip-pyqt6 : true # No PyQt6 conda packages yet
56- pyside6-version : ' 6.4' # Conda only has 6.4+
5762 - use-conda : ' No'
5863 pyqt5-version : ' 5.15' # Test with latest optional packages
5964 - python-version : ' 3.7'
6065 use-conda : ' Yes'
6166 pyside2-version : ' 5.13' # Conda needs 5.13+ to work reliably
6267 pyside2-qt-version : ' 5.12' # Conda only has 5.12 and 5.15, not 5.13
68+ pyside6-version : ' 6.4' # Conda only has 6.4 for Python <3.8
6369 - python-version : ' 3.11'
6470 use-conda : ' No'
71+ pyqt-extras : ' Yes' # Check PyQt extras
6572 skip-pyside2 : true # Pyside2 wheels don't support Python 3.11+
73+ pyqt6-version : ' 6.5' # Test upper bound
74+ pyside6-version : ' 6.5' # Test upper bound
6675 - os : windows-latest
6776 python-version : ' 3.7'
6877 use-conda : ' Yes'
6978 pyqt5-version : ' 5.9' # Test lower bound
70- skip-pyside6 : true # Test hangs
79+ skip-pyside6 : true # Test hangs with 6.4. 6.5 is not available for Python 3.7
7180 - os : windows-latest
7281 python-version : ' 3.7'
7382 use-conda : ' No'
@@ -76,13 +85,40 @@ jobs:
7685 - os : windows-latest
7786 python-version : ' 3.11'
7887 use-conda : ' Yes'
79- skip- pyside6: true # Test hangs
88+ pyside6-version : 6.5 # Test upper bound
8089 - os : macos-latest
81- python-version : ' 3.7 '
90+ python-version : ' 3.11 '
8291 use-conda : ' No'
83- pyqt6-version : 6.4 # Test upper bound
92+ pyqt6-version : 6.5 # Test upper bound
8493 pyside2-version : 5.15 # Test upper bound
8594 steps :
95+ - name : Check job values
96+ run : |
97+ echo "---- General setup"
98+ echo "OS:" ${{ matrix.os }}
99+ echo "PYTHON_VERSION:" ${{ env.PYTHON_VERSION }}
100+ echo "USE_CONDA:" ${{ env.USE_CONDA }}
101+ echo "---- PyQt"
102+ echo "PYQT_EXTRAS:" ${{ env.PYQT_EXTRAS }}
103+ echo "---- PyQt5"
104+ echo "SKIP_PYQT5:" ${{ matrix.skip-pyqt5 }}
105+ echo "PYQT5_VERSION:" ${{ env.PYQT5_VERSION }}
106+ echo "PYQT5_QT_VERSION:" ${{ env.PYQT5_QT_VERSION }}
107+ echo "QSCINTILLA_VERSION:" ${{ env.QSCINTILLA_VERSION }}
108+ echo "---- PyQt6"
109+ echo "SKIP_PYQT6:" ${{ matrix.skip-pyqt6 }}
110+ echo "PYQT6_VERSION:" ${{ env.PYQT6_VERSION }}
111+ echo "PYQT6_QT_VERSION:" ${{ env.PYQT6_QT_VERSION }}
112+ echo "---- PySide2"
113+ echo "SKIP_PYSIDE2:" ${{ matrix.skip-pyside2 }}
114+ echo "PYSIDE2_VERSION:" ${{ env.PYSIDE2_VERSION }}
115+ echo "PYSIDE2_QT_VERSION:" ${{ env.PYSIDE2_QT_VERSION }}
116+ echo "---- PySide6"
117+ echo "SKIP_PYSIDE6:" ${{ matrix.skip-pyside6 }}
118+ echo "PYSIDE6_VERSION:" ${{ env.PYSIDE6_VERSION }}
119+ echo "PYSIDE6_QT_VERSION:" ${{ env.PYSIDE6_QT_VERSION }}
120+ echo "---- Other"
121+ echo "SKIP_PIP_CHECK:" ${{ env.SKIP_PIP_CHECK }}
86122 - name : Checkout branch
87123 uses : actions/checkout@v3
88124 - name : Setup Python
95131 run : |
96132 sudo apt update
97133 sudo apt install libpulse-dev libegl1-mesa libopengl0 gstreamer1.0-gl
134+ - uses : tlambert03/setup-qt-libs@v1
98135 - name : Install Conda
99136 uses : conda-incubator/setup-miniconda@v2
100137 with :
0 commit comments