Skip to content
16 changes: 13 additions & 3 deletions .github/workflows/ci-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ["3.10", "3.11", "3.12", "3.13"]
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]

runs-on: ${{ matrix.os }}
# Hard cap per matrix job — bail out fast on real hangs instead of
Expand All @@ -38,21 +38,31 @@ jobs:
run: git config --system core.longpaths true

- name: Install poetry
run: pipx install poetry==2.1.3
run: pipx install poetry==2.4.1

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6
with:
cache: "poetry"
python-version: ${{ matrix.python-version }}
cache-dependency-path: "pyproject.toml"
cache-dependency-path: "poetry.lock"

- name: Install invoke
run: pipx install invoke

- name: Install Dependencies
run: invoke install

- name: Verify Poetry Python version
run: |
poetry run python -c "
import sys
expected = tuple(map(int, '${{ matrix.python-version }}'.split('.')))
actual = sys.version_info[:len(expected)]
print('Python:', sys.version)
assert actual == expected, f'Expected Python {expected}, got {actual}'
"

- name: Validate Types
if: always()
run: invoke type-check
Expand Down
Loading
Loading