diff --git a/.github/workflows/python-poetry-package.yml b/.github/workflows/python-poetry-package.yml index 0ede31f..dd7019c 100644 --- a/.github/workflows/python-poetry-package.yml +++ b/.github/workflows/python-poetry-package.yml @@ -15,7 +15,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: [ "3.10", "3.11", "3.12"] + python-version: [ "3.8", "3.9", "3.10", "3.11", "3.12"] steps: - uses: actions/checkout@v4 diff --git a/pyproject.toml b/pyproject.toml index ab9f4d3..25451d0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -11,7 +11,7 @@ include = ["CHANGELOG.md"] license = "GPL-3.0-only" [tool.poetry.dependencies] -python = ">=3.10,<4.0" +python = ">=3.8,<4.0" spond = ">=1.0.0" pydantic = ">=2.7.1" @@ -53,10 +53,17 @@ ignore = ["COM812", "ISC001", "D205"] # F841 Local variable is assigned to but never used (triggered by testing raises) "**/{tests}/*" = ["S101", "F841"] -# Ignore rules that conflict with Mypy +# Ignore rules that conflict with Mypy: # PLC0414 Import alias does not rename original package "__init__.py" = ["PLC0414"] +# Ignore rules that conflict with Pydantic: +# TCH001 Move application import ... into a type-checking block +# TCH003 Move standard library import ... into a type-checking block +"event.py" = ["TCH003"] # `datetime.datetime` +"group.py" = ["TCH001"] # `.member.Member` +"member.py" = ["TCH001", "TCH003"] # `.profile.Profile`, `datetime.datetime` + [tool.ruff.lint.pydocstyle] convention = "numpy" diff --git a/spond_classes/event.py b/spond_classes/event.py index 6f92e95..cfb2d08 100644 --- a/spond_classes/event.py +++ b/spond_classes/event.py @@ -1,5 +1,7 @@ """Module containing `Event` class and nested `EventType`,`Responses` classes.""" +from __future__ import annotations + from datetime import datetime from enum import Enum diff --git a/spond_classes/group.py b/spond_classes/group.py index 01fd700..6356c14 100644 --- a/spond_classes/group.py +++ b/spond_classes/group.py @@ -1,5 +1,7 @@ """Module containing `Group` class.""" +from __future__ import annotations + from pydantic import BaseModel, Field from .member import Member diff --git a/spond_classes/member.py b/spond_classes/member.py index 4ed5af3..eaf9e3a 100644 --- a/spond_classes/member.py +++ b/spond_classes/member.py @@ -1,5 +1,7 @@ """Module containing `Member` class.""" +from __future__ import annotations + from datetime import datetime from pydantic import BaseModel, Field