Skip to content

Commit a33f034

Browse files
committed
All the cool kids are using uv now, lets try it
1 parent e48ed41 commit a33f034

13 files changed

Lines changed: 675 additions & 867 deletions

.gitignore

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -21,17 +21,7 @@ _build
2121
.cache
2222
*.so
2323

24-
# logs
25-
pip-log.txt
26-
2724
# testing / coverage
2825
.coverage
2926
.pytest_cache
30-
31-
# release
32-
/setup.cfg
33-
MANIFEST.in
34-
# /setup.py
35-
/releases/*
36-
pip-wheel-metadata
37-
poetry.toml
27+
.ruff_cache

.mise.toml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
[tools]
2+
uv = "0.8.3"
3+
4+
[settings]
5+
python.uv_venv_auto = true

.pre-commit-config.yaml

Lines changed: 23 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,27 @@
1+
default_stages:
2+
- pre-commit
3+
- pre-push
14
repos:
2-
- repo: https://github.com/pre-commit/pre-commit-hooks
3-
rev: v4.4.0
5+
- repo: https://github.com/astral-sh/uv-pre-commit
6+
# uv version.
7+
rev: 0.8.3
48
hooks:
5-
- id: trailing-whitespace
6-
- id: end-of-file-fixer
7-
exclude: ^.*\.egg-info/
8-
- id: check-merge-conflict
9-
- id: check-case-conflict
10-
- id: check-toml
11-
- id: check-yaml
12-
- id: check-ast
13-
- id: check-docstring-first
14-
15-
- repo: https://github.com/psf/black-pre-commit-mirror
16-
rev: 23.9.1
9+
- id: uv-lock
10+
- repo: https://github.com/astral-sh/ruff-pre-commit
11+
# Ruff version.
12+
rev: v0.12.5
1713
hooks:
18-
- id: black
19-
20-
- repo: https://github.com/pre-commit/pre-commit
21-
rev: v3.4.0
14+
# Run the linter.
15+
- id: ruff
16+
args: [--fix]
17+
# Run the formatter.
18+
- id: ruff-format
19+
- repo: https://github.com/pre-commit/pre-commit-hooks
20+
rev: v5.0.0
2221
hooks:
23-
- id: validate_manifest
22+
- id: check-yaml
23+
- id: check-toml
24+
- id: end-of-file-fixer
25+
exclude_types: [json]
26+
- id: trailing-whitespace
27+
exclude_types: [json]

.pre-commit-hooks.yaml

Lines changed: 0 additions & 33 deletions
This file was deleted.

Pipfile

Lines changed: 0 additions & 14 deletions
This file was deleted.

poetry.lock

Lines changed: 0 additions & 745 deletions
This file was deleted.

pyproject.toml

Lines changed: 45 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,23 @@
1-
[tool.poetry]
1+
[build-system]
2+
build-backend = "uv_build"
3+
requires = ["uv_build>=0.8.3,<0.9.0"]
4+
5+
[project]
26
name = "qasync"
3-
version = "0.27.2"
47
description = "Python library for using asyncio in Qt-based applications"
8+
license = "BSD-2-Clause"
9+
license-files = ["LICENSE"]
510
authors = [
6-
"Arve Knudsen <arve.knudsen@gmail.com>",
7-
"Gerard Marull-Paretas <gerard@teslabs.com>",
8-
"Mark Harviston <mark.harviston@gmail.com>",
9-
"Alex March <alexmarch@fastmail.com>",
10-
"Sam McCormack",
11+
{ name = "Arve Knudsen", email = "arve.knudsen@gmail.com" },
12+
{ name = "Gerard Marull-Paretas", email = "gerard@teslabs.com" },
13+
{ name = "Mark Harviston", email = "mark.harviston@gmail.com" },
14+
{ name = "Alex March", email = "alexmarch@fastmail.com" },
15+
{ name = "Sam McCormack" },
1116
]
12-
maintainers = ["Alex March <alexmach@fastmail.com>"]
13-
license = "BSD-2-Clause"
17+
maintainers = [{ name = "Alex March", email = "alexmach@fastmail.com" }]
1418
readme = "README.md"
15-
homepage = "https://github.com/CabbageDevelopment/qasync"
16-
repository = "https://github.com/CabbageDevelopment/qasync"
17-
keywords = ["Qt", "asncio"]
19+
requires-python = ">=3.8"
20+
keywords = ["Qt", "asyncio"]
1821
classifiers = [
1922
"Development Status :: 5 - Production/Stable",
2023
"Environment :: X11 Applications :: Qt",
@@ -27,41 +30,45 @@ classifiers = [
2730
"Operating System :: POSIX :: Linux",
2831
"Topic :: Software Development :: Libraries :: Python Modules",
2932
]
33+
version = "0.27.1"
3034

31-
[tool.poetry.dependencies]
32-
python = ">=3.8, <3.14"
35+
dependencies = []
3336

34-
[tool.poetry.group.dev.dependencies]
35-
pre-commit = "^2.21"
37+
[project.optional-dependencies]
38+
typing = ["mypy>=1.0"]
3639

37-
[tool.poetry.group.test.dependencies]
38-
pytest = [
39-
{ version = "^7.4", python = "<3.9" },
40-
{ version = "^8.4", python = ">=3.9" },
41-
]
42-
pytest-cov = [
43-
{ version = "^4.1", python = "<3.9" },
44-
{ version = "^6.2", python = ">=3.9" },
45-
]
46-
pytest-xdist = [
47-
{ version = "^3.3", extras = [ "psutil", ], python = "<3.9" },
48-
{ version = "^3.8", extras = [ "psutil", ], python = ">=3.9" },
40+
[dependency-groups]
41+
dev = [
42+
"pytest>=8.4; python_version>='3.9'",
43+
"coverage>=7.10; python_version>='3.9'",
44+
"pytest-xdist[psutil]>=3.8; python_version>='3.9'",
45+
46+
"pytest==7.4; python_version<'3.9'",
47+
"coverage==7.6.1; python_version<'3.9'",
48+
"pytest-xdist[psutil]==3.3; python_version<'3.9'",
4949
]
50+
# only used in github actions
51+
ci = ["pytest-github-actions-annotate-failures>=0.1.7"]
5052

51-
[tool.poetry.group.typing.dependencies]
52-
mypy = ">=1.0"
53+
[project.urls]
54+
Homepage = "https://github.com/CabbageDevelopment/qasync"
55+
Repository = "https://github.com/CabbageDevelopment/qasync"
56+
Releases = "https://github.com/CabbageDevelopment/qasync/releases"
57+
Tracker = "https://github.com/CabbageDevelopment/qasync/issues"
5358

54-
# only used in github actions
55-
[tool.poetry.group.github-actions]
56-
optional = true
57-
[tool.poetry.group.github-actions.dependencies]
58-
pytest-github-actions-annotate-failures = "^0.1.7"
59+
[tool.ruff]
60+
target-version = "py313"
5961

60-
[build-system]
61-
requires = ["poetry-core>=1.5.0"]
62-
build-backend = "poetry.core.masonry.api"
62+
[tool.pyright]
63+
include = ["src", "tests", "examples"]
64+
venvPath = "."
65+
venv = ".venv"
6366

6467
[tool.pytest.ini_options]
6568
addopts = "-n auto"
6669
markers = ["raises"]
6770
testpaths = ["tests"]
71+
72+
[tool.coverage.run]
73+
source = ["src", "tests"]
74+
omit = ["tests/conftest.py"]
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)