From e30b0def0da8c927be91a2be01b10fe7b7c7024c Mon Sep 17 00:00:00 2001 From: Marcelo Trylesinski Date: Sat, 22 Mar 2025 12:59:34 +0100 Subject: [PATCH] ci: test multiple Python versions --- .github/workflows/publish-pypi.yml | 9 +++------ .github/workflows/shared.yml | 32 ++++++++++-------------------- .python-version | 1 - 3 files changed, 13 insertions(+), 29 deletions(-) delete mode 100644 .python-version diff --git a/.github/workflows/publish-pypi.yml b/.github/workflows/publish-pypi.yml index fddf83fa..13e69d6a 100644 --- a/.github/workflows/publish-pypi.yml +++ b/.github/workflows/publish-pypi.yml @@ -14,14 +14,11 @@ jobs: - name: Install uv uses: astral-sh/setup-uv@v3 - - - name: "Set up Python" - uses: actions/setup-python@v5 with: - python-version-file: ".python-version" + enable-cache: true - - name: Install the project - run: uv sync --frozen --all-extras --dev + - name: Set up Python 3.12 + run: uv python install 3.12 - name: Build run: uv build diff --git a/.github/workflows/shared.yml b/.github/workflows/shared.yml index 2be9f129..03c36a69 100644 --- a/.github/workflows/shared.yml +++ b/.github/workflows/shared.yml @@ -14,16 +14,11 @@ jobs: with: enable-cache: true - - name: "Set up Python" - uses: actions/setup-python@v5 - with: - python-version-file: ".python-version" - - name: Install the project - run: uv sync --frozen --all-extras --dev + run: uv sync --frozen --all-extras --dev --python 3.12 - name: Run ruff format check - run: uv run --frozen ruff check . + run: uv run --no-sync ruff check . typecheck: runs-on: ubuntu-latest @@ -35,19 +30,17 @@ jobs: with: enable-cache: true - - name: "Set up Python" - uses: actions/setup-python@v5 - with: - python-version-file: ".python-version" - - name: Install the project - run: uv sync --frozen --all-extras --dev + run: uv sync --frozen --all-extras --dev --python 3.12 - name: Run pyright - run: uv run --frozen pyright + run: uv run --no-sync pyright - build: + test: runs-on: ubuntu-latest + strategy: + matrix: + python-version: ["3.10", "3.11", "3.12", "3.13"] steps: - uses: actions/checkout@v4 @@ -57,13 +50,8 @@ jobs: with: enable-cache: true - - name: "Set up Python" - uses: actions/setup-python@v5 - with: - python-version-file: ".python-version" - - name: Install the project - run: uv sync --frozen --all-extras --dev + run: uv sync --frozen --all-extras --dev --python ${{ matrix.python-version }} - name: Run pytest - run: uv run --frozen pytest + run: uv run --no-sync pytest diff --git a/.python-version b/.python-version deleted file mode 100644 index c8cfe395..00000000 --- a/.python-version +++ /dev/null @@ -1 +0,0 @@ -3.10