Drop support for Qt 4 and python 3.6 and below #68
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Run Tests | |
| on: | |
| push: | |
| branches: | |
| - "*" | |
| pull_request: | |
| branches: | |
| - "*" | |
| jobs: | |
| membership: | |
| # Install a specific combination of PySide/PyQt and python. Gather the | |
| # available module.class member information and generate common membership. | |
| runs-on: ubuntu-22.04 | |
| env: | |
| QT_QPA_PLATFORM: minimal | |
| QT_VERBOSE: 1 | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup tox | |
| uses: ./.github/actions/setup-tox | |
| - name: Run Tox | |
| # Gather membership data for each each Qt binding. This uses only one | |
| # version of python to reduce the complexity of the output. | |
| # membership-end combines binding/py data into common membership report | |
| run: | | |
| which tox | |
| tox -e membership-py37-PySide5.13,membership-py37-PyQt5.13,membership-py39-PySide5.15,membership-py39-PyQt5.15,membership-py311-PySide6.5,membership-py311-PyQt6.7,membership-end | |
| ls -lha .members | |
| - name: Upload membership report | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: membership-report | |
| path: | | |
| .members/ | |
| include-hidden-files: true | |
| test: | |
| runs-on: ubuntu-22.04 | |
| needs: membership | |
| strategy: | |
| matrix: | |
| test_env: [ | |
| # Cy2020 | |
| 'test-py37-PySide5.13', | |
| 'test-py37-PyQt5.13', | |
| # Cy2021 | |
| 'test-py37-PySide5.15', | |
| 'test-py37-PyQt5.15', | |
| # Cy2022 | |
| 'test-py39-PySide5.15', | |
| 'test-py39-PyQt5.15', | |
| # Cy2023 | |
| 'test-py310-PySide5.15', | |
| 'test-py310-PyQt5.15', | |
| # Cy2024, Cy2025 | |
| 'test-py311-PySide6.5', | |
| 'test-py311-PyQt6.5', | |
| ] | |
| env: | |
| QT_QPA_PLATFORM: minimal | |
| QT_VERBOSE: 1 | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup tox | |
| uses: ./.github/actions/setup-tox | |
| - name: Download coverage artifacts | |
| # This is needed by the test_membership test | |
| uses: actions/download-artifact@v7 | |
| with: | |
| name: membership-report | |
| path: .members | |
| merge-multiple: true | |
| - name: Display structure of downloaded files | |
| run: ls -lha .members | |
| - name: Tox Test - Implementation | |
| # Note: `--skip-missing-interpreters` prevents false success if python | |
| # version is not installed when testing. | |
| run: | | |
| which tox | |
| tox --skip-missing-interpreters false -e test-begin,${{ matrix.test_env }}-impl | |
| - name: Tox Test - Caveats | |
| run: | | |
| tox --skip-missing-interpreters false -e ${{ matrix.test_env }}-caveats | |
| - name: Tox Test - Examples | |
| run: | | |
| tox --skip-missing-interpreters false -e ${{ matrix.test_env }}-examples | |
| pip-package: | |
| # Build and upload pip packages as artifacts so we can inspect them and | |
| # ensure they are correct for actual release | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v4 | |
| with: | |
| python-version: "3.10.x" | |
| - name: Install build dependency | |
| run: python3 -m pip install --upgrade build | |
| - name: Build a binary wheel and a source tarball | |
| run: python3 -m build | |
| - name: Upload packages. | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: pip-packages | |
| path: | | |
| dist/Qt[._]py-*.whl | |
| dist/Qt[._]py-*.tar.gz |