Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
strategy:
matrix:
os: [ubuntu, windows, macos-x86_64, macos-arm64]
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"]
qt-version: ["pyside2", "pyside6", "pyqt5", "pyqt6"]
include:
- os: ubuntu
Expand All @@ -40,6 +40,8 @@ jobs:
qt-version: pyside2
- python-version: "3.12"
qt-version: pyside2
- python-version: "3.13"
qt-version: pyside2
# pyside6 and pyqt6 require python >=3.9
- python-version: "3.8"
qt-version: pyside6
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ More detailed examples can be found [here](https://github.com/CabbageDevelopment

## Requirements

- Python >=3.8, <3.13
- Python >=3.8, <3.14
- PyQt5/PyQt6 or PySide2/PySide6

`qasync` is tested on Ubuntu, Windows and MacOS.
Expand Down
4 changes: 2 additions & 2 deletions poetry.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ classifiers = [
]

[tool.poetry.dependencies]
python = ">=3.8, <3.13"
python = ">=3.8, <3.14"

[tool.poetry.group.dev.dependencies]
pre-commit = "^2.21"
Expand Down
11 changes: 2 additions & 9 deletions qasync/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,6 @@
BSD License
"""

__author__ = (
"Sam McCormack",
"Gerard Marull-Paretas <gerard@teslabs.com>, "
"Mark Harviston <mark.harviston@gmail.com>, "
"Arve Knudsen <arve.knudsen@gmail.com>",
)
__all__ = ["QEventLoop", "QThreadExecutor", "asyncSlot", "asyncClose"]

import asyncio
Expand All @@ -39,11 +33,10 @@
env_to_mod_map = {
"pyqt5": "PyQt5",
"pyqt6": "PyQt6",
"pyqt": "PyQt4",
"pyqt4": "PyQt4",
"pyqt": "PyQt6",
"pyside6": "PySide6",
"pyside2": "PySide2",
"pyside": "PySide",
"pyside": "PySide6",
}
if qtapi_env in env_to_mod_map:
QtModuleName = env_to_mod_map[qtapi_env]
Expand Down
14 changes: 9 additions & 5 deletions qasync/_common.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
# © 2018 Gerard Marull-Paretas <gerard@teslabs.com>
# © 2014 Mark Harviston <mark.harviston@gmail.com>
# © 2014 Arve Knudsen <arve.knudsen@gmail.com>
# BSD License
"""
Mostly irrelevant, but useful utilities common to UNIX and Windows.

Copyright (c) 2018 Gerard Marull-Paretas <gerard@teslabs.com>
Copyright (c) 2014 Mark Harviston <mark.harviston@gmail.com>
Copyright (c) 2014 Arve Knudsen <arve.knudsen@gmail.com>

BSD License
"""

"""Mostly irrelevant, but useful utilities common to UNIX and Windows."""
import logging


Expand Down
19 changes: 10 additions & 9 deletions qasync/_unix.py
Original file line number Diff line number Diff line change
@@ -1,23 +1,24 @@
# © 2018 Gerard Marull-Paretas <gerard@teslabs.com>
# © 2014 Mark Harviston <mark.harviston@gmail.com>
# © 2014 Arve Knudsen <arve.knudsen@gmail.com>
# BSD License
"""
UNIX specific qasync functionality.

"""UNIX specific Quamash functionality."""
Copyright (c) 2018 Gerard Marull-Paretas <gerard@teslabs.com>
Copyright (c) 2014 Mark Harviston <mark.harviston@gmail.com>
Copyright (c) 2014 Arve Knudsen <arve.knudsen@gmail.com>

BSD License
"""

import asyncio
import selectors
import collections
import selectors

from . import QtCore, with_logger, _fileno

from . import QtCore, _fileno, with_logger

EVENT_READ = 1 << 0
EVENT_WRITE = 1 << 1


class _SelectorMapping(collections.abc.Mapping):

"""Mapping of file objects to selector keys."""

def __init__(self, selector):
Expand Down
17 changes: 9 additions & 8 deletions qasync/_windows.py
Original file line number Diff line number Diff line change
@@ -1,17 +1,20 @@
# © 2018 Gerard Marull-Paretas <gerard@teslabs.com>
# © 2014 Mark Harviston <mark.harviston@gmail.com>
# © 2014 Arve Knudsen <arve.knudsen@gmail.com>
# BSD License
"""
Windows specific qasync functionality.

"""Windows specific Quamash functionality."""
Copyright (c) 2018 Gerard Marull-Paretas <gerard@teslabs.com>
Copyright (c) 2014 Mark Harviston <mark.harviston@gmail.com>
Copyright (c) 2014 Arve Knudsen <arve.knudsen@gmail.com>

BSD License
"""

import asyncio
import sys

try:
import _overlapped
import _winapi
from asyncio import windows_events
import _overlapped
except ImportError: # noqa
pass # w/o guarding this import py.test can't gather doctests on platforms w/o _winapi

Expand All @@ -24,7 +27,6 @@


class _ProactorEventLoop(asyncio.ProactorEventLoop):

"""Proactor based event loop."""

def __init__(self):
Expand Down Expand Up @@ -203,7 +205,6 @@ def run(self):

@with_logger
class _EventPoller:

"""Polling of events in separate thread."""

def __init__(self, sig_events):
Expand Down
Loading