From 5f2a93a92c3412fe5a0a842a57ee00b3460b14c5 Mon Sep 17 00:00:00 2001 From: Lev Vereshchagin Date: Tue, 8 Oct 2024 13:17:52 +0300 Subject: [PATCH 1/3] Use setup-uv action --- .github/workflows/ci.yml | 25 +++++++++++++------------ .github/workflows/publish.yml | 12 ++++-------- 2 files changed, 17 insertions(+), 20 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b305056a..f55dce94 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,12 +14,13 @@ jobs: lint: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-python@v4 - with: - python-version: "3.10" + - uses: actions/checkout@v4 - uses: extractions/setup-just@v2 - - run: curl -LsSf https://astral.sh/uv/install.sh | sh + - uses: astral-sh/setup-uv@v3 + with: + enable-cache: true + cache-dependency-glob: "**/pyproject.toml" + - run: uv python install 3.10 - run: just install lint-ci pytest: @@ -32,15 +33,15 @@ jobs: - "3.11" - "3.12" steps: - - uses: actions/checkout@v3 - - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} + - uses: actions/checkout@v4 - uses: extractions/setup-just@v2 - - run: curl -LsSf https://astral.sh/uv/install.sh | sh + - uses: astral-sh/setup-uv@v3 + with: + enable-cache: true + cache-dependency-glob: "**/pyproject.toml" + - run: uv python install ${{ matrix.python-version }} - run: just install test . --cov=. --cov-report xml - - name: Upload coverage to Codecov - uses: codecov/codecov-action@v4.0.1 + - uses: codecov/codecov-action@v4.0.1 env: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} with: diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 4a422bb1..c0699ac7 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -10,15 +10,11 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: "3.12" - - uses: actions/cache@v4 - with: - path: ~/.cache/uv - key: publish-${{ hashFiles('pyproject.toml') }} - uses: extractions/setup-just@v2 - - run: curl -LsSf https://astral.sh/uv/install.sh | sh + - uses: astral-sh/setup-uv@v3 + with: + enable-cache: true + cache-dependency-glob: "**/pyproject.toml" - run: just publish env: PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }} From fd3a7626d26dc2bbd3ea76177709c882a941e49e Mon Sep 17 00:00:00 2001 From: Lev Vereshchagin Date: Tue, 8 Oct 2024 14:49:42 +0300 Subject: [PATCH 2/3] Test on Python 3.13 --- .github/workflows/ci.yml | 1 + README.md | 2 +- pyproject.toml | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f55dce94..3e3771f1 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 diff --git a/README.md b/README.md index bf8aaa78..7494501e 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 73d122e5..92ee9c8a 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", ] From 22e1cf669297468840a44e3b3db41df5b427552a Mon Sep 17 00:00:00 2001 From: Lev Vereshchagin Date: Tue, 8 Oct 2024 14:49:53 +0300 Subject: [PATCH 3/3] Revert "Test on Python 3.13" This reverts commit fd3a7626d26dc2bbd3ea76177709c882a941e49e. --- .github/workflows/ci.yml | 1 - README.md | 2 +- pyproject.toml | 1 - 3 files changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3e3771f1..f55dce94 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,7 +32,6 @@ jobs: - "3.10" - "3.11" - "3.12" - - "3.13" steps: - uses: actions/checkout@v4 - uses: extractions/setup-just@v2 diff --git a/README.md b/README.md index 7494501e..bf8aaa78 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.13 support. +- Python 3.10-3.12 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 92ee9c8a..73d122e5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -12,7 +12,6 @@ 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", ]