diff --git a/.github/workflows/python-sdk-tests.yml b/.github/workflows/python-sdk-tests.yml index e51ee3f3c8..72a89972db 100644 --- a/.github/workflows/python-sdk-tests.yml +++ b/.github/workflows/python-sdk-tests.yml @@ -22,13 +22,15 @@ jobs: working-directory: ./python steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0 - with: - python-version: "3.11" - - name: Set up uv + - name: Set up uv and Python uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7 with: + python-version: "3.11" + activate-environment: true + working-directory: python enable-cache: true + cache-python: true + cache-suffix: validate - name: Install Python dev dependencies run: uv sync --all-extras --dev - name: Run ruff format check @@ -39,7 +41,7 @@ jobs: run: uv run ty check copilot test: - name: "Python SDK Tests (${{ matrix.os }}, ${{ matrix.transport }})" + name: "Python SDK Tests (Python ${{ matrix.python-version }}, ${{ matrix.os }}, ${{ matrix.transport }})" if: github.event.repository.fork == false env: POWERSHELL_UPDATECHECK: Off @@ -47,8 +49,8 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, macos-latest, windows-latest] - # Test the oldest supported Python version to make sure compatibility is maintained. - python-version: ["3.11"] + # Test the oldest and newest supported Python versions. + python-version: ["3.11", "3.15"] transport: ["default", "inprocess"] runs-on: ${{ matrix.os }} timeout-minutes: 20 @@ -58,19 +60,21 @@ jobs: working-directory: ./python steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0 - with: - python-version: ${{ matrix.python-version }} - uses: actions/setup-node@249970729cb0ef3589644e2896645e5dc5ba9c38 # v6.5.0 with: node-version: "22" cache: "npm" cache-dependency-path: "./nodejs/package-lock.json" - - name: Set up uv + - name: Set up uv and Python uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7 with: + python-version: ${{ matrix.python-version }} + activate-environment: true + working-directory: python enable-cache: true + cache-python: true + cache-suffix: ${{ matrix.transport }} - name: Install Python dev dependencies run: uv sync --all-extras --dev diff --git a/python/pyproject.toml b/python/pyproject.toml index e96c587a64..6809718c72 100644 --- a/python/pyproject.toml +++ b/python/pyproject.toml @@ -23,6 +23,7 @@ classifiers = [ "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", + "Programming Language :: Python :: 3.15", ] dependencies = [ "python-dateutil>=2.9.0.post0",