From 20df7c331ca36840ed2f3a4e6a8031c95eeb2a81 Mon Sep 17 00:00:00 2001 From: Artur Shiriev Date: Tue, 17 Dec 2024 23:10:22 +0300 Subject: [PATCH] python 3.13 (#103) * python 3.13 --------- Co-authored-by: artur.shiriev --- .github/workflows/ci.yml | 7 ++++++- Justfile | 8 ++++++-- README.md | 2 +- pyproject.toml | 1 + 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f55dce9..382a46e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,6 +32,7 @@ jobs: - "3.10" - "3.11" - "3.12" + - "3.13" steps: - uses: actions/checkout@v4 - uses: extractions/setup-just@v2 @@ -40,7 +41,11 @@ jobs: enable-cache: true cache-dependency-glob: "**/pyproject.toml" - run: uv python install ${{ matrix.python-version }} - - run: just install test . --cov=. --cov-report xml + - if: ${{ matrix.python-version == 3.13 }} + run: just install-313 + - if: ${{ matrix.python-version < 3.13 }} + run: just install + - run: just test . --cov=. --cov-report xml - uses: codecov/codecov-action@v4.0.1 env: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} diff --git a/Justfile b/Justfile index b2e9644..a832e78 100644 --- a/Justfile +++ b/Justfile @@ -2,7 +2,11 @@ default: install lint test install: uv lock --upgrade - uv sync --all-extras --frozen + uv sync --only-dev --frozen + +install-313: + uv lock --upgrade + uv sync --only-dev --no-install-package litestar --no-install-package msgspec --frozen lint: uv run ruff format @@ -15,7 +19,7 @@ lint-ci: uv run mypy . test *args: - uv run pytest {{ args }} + uv run --no-sync pytest {{ args }} publish: rm -rf dist diff --git a/README.md b/README.md index fa51459..475c7cf 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ Dependency injection framework for Python inspired by `dependency-injector`. It is production-ready and gives you the following: - Simple async-first DI framework with IOC-container. -- Python 3.10-3.12 support. +- Python 3.10-3.13 support. - Full coverage by types annotations (mypy in strict mode). - FastAPI and LiteStar compatibility. - Overriding dependencies for tests. diff --git a/pyproject.toml b/pyproject.toml index 125429a..dacf98f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -12,6 +12,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Typing :: Typed", "Topic :: Software Development :: Libraries", ]