From 1b5c7ad367ad195e21bb75078fd6433cd1c654ae Mon Sep 17 00:00:00 2001 From: Ali Hamdan Date: Sun, 31 May 2026 11:57:58 +0200 Subject: [PATCH 1/4] Streamline the CI jobs --- .github/workflows/tests.yml | 63 +++++++------------------------------ 1 file changed, 12 insertions(+), 51 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 8332b4f..f38577b 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -22,19 +22,20 @@ env: FORCE_COLOR: 1 jobs: - ruff: - name: Run ruff check and ruff format + set-up: + name: Set up the project runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - - name: Set up Python ${{ env.UV_PYTHON }} - uses: actions/setup-python@v6 - with: - python-version: ${{ env.UV_PYTHON }} - name: Install uv uses: astral-sh/setup-uv@v7 - name: Install dependencies run: uv sync --frozen + ruff: + name: Run ruff check and ruff format + runs-on: ubuntu-latest + needs: set-up + steps: - name: Lint with ruff run: uv run python run.py ruff-check - name: Format with ruff @@ -42,70 +43,30 @@ jobs: pytest: name: Run the test suite runs-on: ubuntu-latest + needs: set-up steps: - - uses: actions/checkout@v6 - - name: Set up Python ${{ env.UV_PYTHON }} - uses: actions/setup-python@v6 - with: - python-version: ${{ env.UV_PYTHON }} - - name: Install uv - uses: astral-sh/setup-uv@v7 - - name: Install dependencies - run: uv sync --frozen - run: uv run python run.py pytest mypy: name: Run mypy on the tests and on the stubs runs-on: ubuntu-latest + needs: set-up steps: - - uses: actions/checkout@v6 - - name: Set up Python ${{ env.UV_PYTHON }} - uses: actions/setup-python@v6 - with: - python-version: ${{ env.UV_PYTHON }} - - name: Install uv - uses: astral-sh/setup-uv@v7 - - name: Install dependencies - run: uv sync --frozen - run: uv run python run.py mypy stubtest: name: Run stubtest on the the stubs runs-on: ubuntu-latest + needs: set-up steps: - - uses: actions/checkout@v6 - - name: Set up Python ${{ env.UV_PYTHON }} - uses: actions/setup-python@v6 - with: - python-version: ${{ env.UV_PYTHON }} - - name: Install uv - uses: astral-sh/setup-uv@v7 - - name: Install dependencies - run: uv sync --frozen - run: uv run python run.py stubtest pyright: name: Run pyright on the tests and on the stubs runs-on: ubuntu-latest + needs: set-up steps: - - uses: actions/checkout@v6 - - name: Set up Python ${{ env.UV_PYTHON }} - uses: actions/setup-python@v6 - with: - python-version: ${{ env.UV_PYTHON }} - - name: Install uv - uses: astral-sh/setup-uv@v7 - - name: Install dependencies - run: uv sync --frozen - run: uv run python run.py pyright ty: name: Run ty on the tests and on the stubs runs-on: ubuntu-latest + needs: set-up steps: - - uses: actions/checkout@v6 - - name: Set up Python ${{ env.UV_PYTHON }} - uses: actions/setup-python@v6 - with: - python-version: ${{ env.UV_PYTHON }} - - name: Install uv - uses: astral-sh/setup-uv@v7 - - name: Install dependencies - run: uv sync --frozen - run: uv run python run.py ty-check From bf4f37bfbaaa7c271f7d3433c4801ff2b0d546c2 Mon Sep 17 00:00:00 2001 From: Ali Hamdan Date: Sun, 31 May 2026 12:13:21 +0200 Subject: [PATCH 2/4] Attempt 2 --- .github/workflows/tests.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index f38577b..e54d1de 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -36,6 +36,7 @@ jobs: runs-on: ubuntu-latest needs: set-up steps: + - uses: astral-sh/setup-uv@v7 - name: Lint with ruff run: uv run python run.py ruff-check - name: Format with ruff @@ -45,28 +46,33 @@ jobs: runs-on: ubuntu-latest needs: set-up steps: + - uses: astral-sh/setup-uv@v7 - run: uv run python run.py pytest mypy: name: Run mypy on the tests and on the stubs runs-on: ubuntu-latest needs: set-up steps: + - uses: astral-sh/setup-uv@v7 - run: uv run python run.py mypy stubtest: name: Run stubtest on the the stubs runs-on: ubuntu-latest needs: set-up steps: + - uses: astral-sh/setup-uv@v7 - run: uv run python run.py stubtest pyright: name: Run pyright on the tests and on the stubs runs-on: ubuntu-latest needs: set-up steps: + - uses: astral-sh/setup-uv@v7 - run: uv run python run.py pyright ty: name: Run ty on the tests and on the stubs runs-on: ubuntu-latest needs: set-up steps: + - uses: astral-sh/setup-uv@v7 - run: uv run python run.py ty-check From f22cf3a4c6d527dad20836e0cb1782f84af3e826 Mon Sep 17 00:00:00 2001 From: Ali Hamdan Date: Sun, 31 May 2026 12:14:40 +0200 Subject: [PATCH 3/4] Attempt 3 --- .github/workflows/tests.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index e54d1de..09a441f 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -36,6 +36,7 @@ jobs: runs-on: ubuntu-latest needs: set-up steps: + - uses: actions/checkout@v6 - uses: astral-sh/setup-uv@v7 - name: Lint with ruff run: uv run python run.py ruff-check @@ -46,6 +47,7 @@ jobs: runs-on: ubuntu-latest needs: set-up steps: + - uses: actions/checkout@v6 - uses: astral-sh/setup-uv@v7 - run: uv run python run.py pytest mypy: @@ -53,6 +55,7 @@ jobs: runs-on: ubuntu-latest needs: set-up steps: + - uses: actions/checkout@v6 - uses: astral-sh/setup-uv@v7 - run: uv run python run.py mypy stubtest: @@ -60,6 +63,7 @@ jobs: runs-on: ubuntu-latest needs: set-up steps: + - uses: actions/checkout@v6 - uses: astral-sh/setup-uv@v7 - run: uv run python run.py stubtest pyright: @@ -67,6 +71,7 @@ jobs: runs-on: ubuntu-latest needs: set-up steps: + - uses: actions/checkout@v6 - uses: astral-sh/setup-uv@v7 - run: uv run python run.py pyright ty: @@ -74,5 +79,6 @@ jobs: runs-on: ubuntu-latest needs: set-up steps: + - uses: actions/checkout@v6 - uses: astral-sh/setup-uv@v7 - run: uv run python run.py ty-check From 7731a8d2f8367cf7dea62abeb9f5cfc661478934 Mon Sep 17 00:00:00 2001 From: Ali Hamdan Date: Sun, 31 May 2026 12:25:40 +0200 Subject: [PATCH 4/4] Attempt 4 --- .github/workflows/tests.yml | 51 +++++++++++++++++++++++-------------- 1 file changed, 32 insertions(+), 19 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 09a441f..429459d 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -22,8 +22,8 @@ env: FORCE_COLOR: 1 jobs: - set-up: - name: Set up the project + ruff: + name: Run ruff check and ruff format runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 @@ -31,13 +31,6 @@ jobs: uses: astral-sh/setup-uv@v7 - name: Install dependencies run: uv sync --frozen - ruff: - name: Run ruff check and ruff format - runs-on: ubuntu-latest - needs: set-up - steps: - - uses: actions/checkout@v6 - - uses: astral-sh/setup-uv@v7 - name: Lint with ruff run: uv run python run.py ruff-check - name: Format with ruff @@ -45,40 +38,60 @@ jobs: pytest: name: Run the test suite runs-on: ubuntu-latest - needs: set-up steps: - uses: actions/checkout@v6 - - uses: astral-sh/setup-uv@v7 + - name: Install uv + uses: astral-sh/setup-uv@v7 + with: + save-cache: "false" + - name: Install dependencies + run: uv sync --frozen - run: uv run python run.py pytest mypy: name: Run mypy on the tests and on the stubs runs-on: ubuntu-latest - needs: set-up steps: - uses: actions/checkout@v6 - - uses: astral-sh/setup-uv@v7 + - name: Install uv + uses: astral-sh/setup-uv@v7 + with: + save-cache: "false" + - name: Install dependencies + run: uv sync --frozen - run: uv run python run.py mypy stubtest: name: Run stubtest on the the stubs runs-on: ubuntu-latest - needs: set-up steps: - uses: actions/checkout@v6 - - uses: astral-sh/setup-uv@v7 + - name: Install uv + uses: astral-sh/setup-uv@v7 + with: + save-cache: "false" + - name: Install dependencies + run: uv sync --frozen - run: uv run python run.py stubtest pyright: name: Run pyright on the tests and on the stubs runs-on: ubuntu-latest - needs: set-up steps: - uses: actions/checkout@v6 - - uses: astral-sh/setup-uv@v7 + - name: Install uv + uses: astral-sh/setup-uv@v7 + with: + save-cache: "false" + - name: Install dependencies + run: uv sync --frozen - run: uv run python run.py pyright ty: name: Run ty on the tests and on the stubs runs-on: ubuntu-latest - needs: set-up steps: - uses: actions/checkout@v6 - - uses: astral-sh/setup-uv@v7 + - name: Install uv + uses: astral-sh/setup-uv@v7 + with: + save-cache: "false" + - name: Install dependencies + run: uv sync --frozen - run: uv run python run.py ty-check