Skip to content

Commit 3b1495b

Browse files
committed
chore: drop python3.8 support
1 parent 2ac0cee commit 3b1495b

File tree

11 files changed

+35
-24
lines changed

11 files changed

+35
-24
lines changed

.github/dependabot.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,16 @@ updates:
1010
directory: "/"
1111
schedule:
1212
interval: "weekly"
13+
groups:
14+
github-actions:
15+
patterns:
16+
- "*"
1317
# Python
1418
- package-ecosystem: "pip" # See documentation for possible values
1519
directory: "/" # Location of package manifests
1620
schedule:
1721
interval: "weekly"
22+
groups:
23+
pip:
24+
patterns:
25+
- "*"

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ jobs:
4040
runs-on: ubuntu-latest
4141
strategy:
4242
matrix:
43-
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]
43+
python-version: ["3.9", "3.10", "3.11", "3.12, "3.13"]
4444
fail-fast: false
4545

4646
steps:

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
uv.lock
2+
13
# Byte-compiled / optimized / DLL files
24
__pycache__/
35
*.py[cod]
@@ -143,6 +145,8 @@ venv.bak/
143145
.dmypy.json
144146
dmypy.json
145147

148+
.ruff_cache/
149+
146150
# Pyre type checker
147151
.pyre/
148152

pyproject.toml

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,19 +13,19 @@ authors = [
1313

1414
keywords = ["taskiq", "tasks", "distributed", "async", "FastStream"]
1515

16-
requires-python = ">=3.8"
16+
requires-python = ">=3.9"
1717

1818
classifiers = [
1919
"Development Status :: 5 - Production/Stable",
2020
"License :: OSI Approved :: MIT License",
2121
"Programming Language :: Python",
2222
"Programming Language :: Python :: 3",
2323
"Programming Language :: Python :: 3 :: Only",
24-
"Programming Language :: Python :: 3.8",
2524
"Programming Language :: Python :: 3.9",
2625
"Programming Language :: Python :: 3.10",
2726
"Programming Language :: Python :: 3.11",
2827
"Programming Language :: Python :: 3.12",
28+
"Programming Language :: Python :: 3.13",
2929
"Operating System :: OS Independent",
3030
"Topic :: Software Development :: Libraries :: Python Modules",
3131
"Topic :: Software Development :: Libraries",
@@ -107,7 +107,7 @@ exclude = [
107107
]
108108

109109
[tool.mypy]
110-
python_version = "3.8"
110+
python_version = "3.9"
111111
strict = true
112112
ignore_missing_imports = true
113113
allow_subclassing_any = true
@@ -125,12 +125,14 @@ known_third_party = ["faststream", "taskiq"]
125125

126126
[tool.ruff]
127127
fix = true
128-
target-version = "py38"
128+
target-version = "py39"
129129
line-length = 88
130-
mccabe = { max-complexity = 10 }
131130

131+
[tool.ruff.lint]
132132
# List of enabled rulsets.
133133
# See https://docs.astral.sh/ruff/rules/ for more information.
134+
mccabe = { max-complexity = 10 }
135+
134136
select = [
135137
"E", # Error
136138
"F", # Pyflakes
@@ -167,8 +169,6 @@ ignore = [
167169
"D401", # First line should be in imperative mood
168170
"D104", # Missing docstring in public package
169171
"D100", # Missing docstring in public module
170-
"ANN102", # Missing type annotation for self in method
171-
"ANN101", # Missing type annotation for argument
172172
"ANN401", # typing.Any are disallowed in `**kwargs
173173
"PLR0913", # Too many arguments for function call
174174
"D106", # Missing docstring in public nested class
@@ -177,7 +177,7 @@ ignore = [
177177
]
178178
exclude = [".venv/"]
179179

180-
[tool.ruff.per-file-ignores]
180+
[tool.ruff.lint.per-file-ignores]
181181
"tests/*" = [
182182
"S101", # Use of assert detected
183183
"S301", # Use of pickle detected
@@ -187,14 +187,14 @@ exclude = [".venv/"]
187187
"D101", # Missing docstring in public class
188188
]
189189

190-
[tool.ruff.pydocstyle]
190+
[tool.ruff.lint.pydocstyle]
191191
convention = "google"
192192
ignore-decorators = ["typing.overload"]
193193

194-
[tool.ruff.pylint]
194+
[tool.ruff.lint.pylint]
195195
allow-magic-value-types = ["int", "str", "float"]
196196

197-
[tool.ruff.flake8-bugbear]
197+
[tool.ruff.lint.flake8-bugbear]
198198
extend-immutable-calls = []
199199

200200
[tool.pytest.ini_options]

scripts/lint.sh

100644100755
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/bash
22

33
echo "Running ruff..."
4-
ruff taskiq_faststream tests --fix
4+
ruff check taskiq_faststream tests --fix
55

66
echo "Running ruff formatter..."
77
ruff format taskiq_faststream tests

taskiq_faststream/__about__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
"""FastStream - taskiq integration to schedule FastStream tasks."""
22

3-
__version__ = "0.2.0"
3+
__version__ = "0.2.1"

taskiq_faststream/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
from taskiq_faststream.scheduler import StreamScheduler
33

44
__all__ = (
5+
"AppWrapper",
56
"BrokerWrapper",
67
"StreamScheduler",
7-
"AppWrapper",
88
)

taskiq_faststream/broker.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
from taskiq import AsyncBroker
99
from taskiq.acks import AckableMessage
1010
from taskiq.decor import AsyncTaskiqDecoratedTask
11-
from typing_extensions import TypeAlias, override
11+
from typing_extensions import TypeAlias
1212

1313
from taskiq_faststream.formatter import PatchedFormatter, PathcedMessage
1414
from taskiq_faststream.types import ScheduledTask
@@ -66,8 +66,7 @@ async def listen(
6666
yield b""
6767
await anyio.sleep(60)
6868

69-
@override
70-
def task( # type: ignore[override]
69+
def task(
7170
self,
7271
message: typing.Union[
7372
None,
@@ -76,7 +75,7 @@ def task( # type: ignore[override]
7675
typing.Callable[[], typing.Awaitable[SendableMessage]],
7776
] = None,
7877
*,
79-
schedule: typing.List[ScheduledTask],
78+
schedule: list[ScheduledTask],
8079
**kwargs: PublishParameters,
8180
) -> "AsyncTaskiqDecoratedTask[[], None]":
8281
"""Register FastStream scheduled task.

taskiq_faststream/formatter.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from dataclasses import dataclass
2-
from typing import Any, Dict
2+
from typing import Any
33

44
from taskiq.abc.formatter import TaskiqFormatter
55
from taskiq.message import TaskiqMessage
@@ -10,7 +10,7 @@ class PathcedMessage:
1010
"""DTO to transfer data to `broker.kick`."""
1111

1212
body: Any
13-
labels: Dict[str, Any]
13+
labels: dict[str, Any]
1414

1515

1616
class PatchedFormatter(TaskiqFormatter):

tests/test_resolve_message.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from typing import AsyncIterator, Iterator
1+
from collections.abc import AsyncIterator, Iterator
22

33
import pytest
44

0 commit comments

Comments
 (0)