Skip to content

Commit bbacb25

Browse files
authored
Merge pull request #133 from CabbageDevelopment/ci-python-3.11
Add support for python 3.11 and update README
2 parents 990e7ba + 99eb06b commit bbacb25

6 files changed

Lines changed: 331 additions & 262 deletions

File tree

.github/workflows/main.yml

Lines changed: 25 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,30 @@ jobs:
1919
runs-on: ${{ matrix.image }}
2020
strategy:
2121
matrix:
22-
os: [Ubuntu, Windows, MacOS]
23-
python-version: ["3.8", "3.9", "3.10"]
22+
os: [ubuntu, windows, macos-x86_64, macos-arm64]
23+
python-version: ["3.8", "3.9", "3.10", "3.11"]
2424
qt-version: ["pyside2", "pyside6", "pyqt5", "pyqt6"]
2525
include:
26-
- os: Ubuntu
26+
- os: ubuntu
2727
image: ubuntu-24.04
28-
- os: Windows
28+
- os: windows
2929
image: windows-2022
30-
- os: MacOS
30+
- os: macos-x86_64
31+
image: macos-13
32+
- os: macos-arm64
3133
image: macos-14
34+
exclude:
35+
# pyside2 does not publish arm64 packages
36+
- os: macos-arm64
37+
qt-version: pyside2
38+
# pyside2 requires python <3.11
39+
- python-version: "3.11"
40+
qt-version: pyside2
41+
# pyside6 and pyqt6 require python >=3.9
42+
- python-version: "3.8"
43+
qt-version: pyside6
44+
- python-version: "3.8"
45+
qt-version: pyqt6
3246
fail-fast: false
3347
defaults:
3448
run:
@@ -52,15 +66,15 @@ jobs:
5266
curl -sSL https://install.python-poetry.org | POETRY_VERSION=1.8.4 python - -y
5367
5468
- name: Update Path
55-
if: ${{ matrix.os != 'Windows' }}
69+
if: ${{ matrix.os != 'windows' }}
5670
run: echo "$HOME/.local/bin" >> $GITHUB_PATH
5771

5872
- name: Update Path for Windows
59-
if: ${{ matrix.os == 'Windows' }}
73+
if: ${{ matrix.os == 'windows' }}
6074
run: echo "$APPDATA\Python\Scripts" >> $GITHUB_PATH
6175

6276
- name: Enable long paths on Windows
63-
if: ${{ matrix.os == 'Windows' }}
77+
if: ${{ matrix.os == 'windows' }}
6478
run: git config --system core.longpaths true
6579

6680
- name: Configure poetry
@@ -76,7 +90,7 @@ jobs:
7690
- name: Valdate cache
7791
if: steps.cache.outputs.cache-hit == 'true'
7892
run: |
79-
# `timeout` is not available on macOS, so we define a custom function.
93+
# `timeout` is not available on macos, so we define a custom function.
8094
[ "$(command -v timeout)" ] || function timeout() { perl -e 'alarm shift; exec @ARGV' "$@"; }
8195
8296
# Using `timeout` is a safeguard against the Poetry command hanging for some reason.
@@ -92,10 +106,10 @@ jobs:
92106
# run: poetry run mypy
93107

94108
- name: Install Qt
95-
run: poetry run pip install ${{ matrix.qt-version }}
109+
run: poetry run pip install --ignore-installed ${{ matrix.qt-version }}
96110

97111
- name: Install libxcb dependencies
98-
if: ${{ matrix.os == 'Ubuntu' }}
112+
if: ${{ matrix.os == 'ubuntu' }}
99113
env:
100114
DEBIAN_FRONTEND: noninteractive
101115
run: |

README.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# qasync
22

3-
[![Maintenance](https://img.shields.io/maintenance/yes/2023)](https://pypi.org/project/qasync)
3+
[![Maintenance](https://img.shields.io/maintenance/yes/2025)](https://pypi.org/project/qasync)
44
[![PyPI](https://img.shields.io/pypi/v/qasync)](https://pypi.org/project/qasync)
55
[![PyPI - License](https://img.shields.io/pypi/l/qasync)](/LICENSE)
66
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/qasync)](https://pypi.org/project/qasync)
@@ -18,11 +18,13 @@ If you need some CPU-intensive tasks to be executed in parallel, `qasync` also g
1818
### Basic Example
1919

2020
```python
21-
import sys
2221
import asyncio
22+
import sys
23+
24+
from PySide6.QtWidgets import QVBoxLayout, QWidget
25+
26+
from qasync import QApplication, QEventLoop
2327

24-
from qasync import QEventLoop, QApplication
25-
from PySide6.QtWidgets import QWidget, QVBoxLayout
2628

2729
class MainWindow(QWidget):
2830
def __init__(self):

0 commit comments

Comments
 (0)