Skip to content

Commit c7326f4

Browse files
committed
Drop Python 3.8, confirm 3.13
1 parent 853889c commit c7326f4

File tree

14 files changed

+395
-442
lines changed

14 files changed

+395
-442
lines changed

.github/workflows/build-binaries.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
submodules: recursive
3333
- uses: actions/setup-python@v5
3434
with:
35-
python-version: "3.12"
35+
python-version: "3.13"
3636

3737
# Install Rust locally for non-Linux (Linux uses an internal docker
3838
# command to build with cibuildwheel which uses rustup install defined

.github/workflows/ci.yml

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -12,30 +12,23 @@ jobs:
1212
strategy:
1313
fail-fast: false
1414
matrix:
15-
python: ["3.8", "3.12"]
15+
python: ["3.9", "3.13"]
1616
os: [ubuntu-latest, ubuntu-arm, macos-intel, macos-arm, windows-latest]
1717
include:
1818
- os: ubuntu-latest
19-
python: "3.12"
19+
python: "3.13"
2020
docsTarget: true
2121
cloudTestTarget: true
2222
clippyLinter: true
2323
- os: ubuntu-latest
24-
python: "3.8"
24+
python: "3.9"
2525
protoCheckTarget: true
2626
- os: ubuntu-arm
2727
runsOn: ubuntu-24.04-arm64-2-core
2828
- os: macos-intel
29-
runsOn: macos-12
29+
runsOn: macos-13
3030
- os: macos-arm
31-
runsOn: macos-14
32-
# macOS ARM 3.8 does not have an available Python build at
33-
# https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json.
34-
# See https://github.com/actions/setup-python/issues/808 and
35-
# https://github.com/actions/python-versions/pull/259.
36-
exclude:
37-
- os: macos-arm
38-
python: "3.8"
31+
runsOn: macos-latest
3932
runs-on: ${{ matrix.runsOn || matrix.os }}
4033
steps:
4134
- uses: actions/checkout@v4
@@ -45,19 +38,23 @@ jobs:
4538
- uses: Swatinem/rust-cache@v2
4639
with:
4740
workspaces: temporalio/bridge -> target
41+
# - uses: actions/setup-python@v5
42+
# with:
43+
# # Pinning due to failed Windows builds on 3.12.5 https://github.com/temporalio/sdk-python/issues/637
44+
# python-version: ${{ matrix.python == '3.12' && '3.12.4' || matrix.python }}
4845
- uses: actions/setup-python@v5
4946
with:
50-
# Pinning due to failed Windows builds on 3.12.5 https://github.com/temporalio/sdk-python/issues/637
51-
python-version: ${{ matrix.python == '3.12' && '3.12.4' || matrix.python }}
47+
python-version: ${{ matrix.python }}
5248
- uses: arduino/setup-protoc@v3
5349
with:
5450
# TODO(cretz): Can upgrade proto when https://github.com/arduino/setup-protoc/issues/99 fixed
5551
version: "23.x"
5652
repo-token: ${{ secrets.GITHUB_TOKEN }}
57-
# Using fixed Poetry version until
58-
# https://github.com/python-poetry/poetry/issues/7611 and
59-
# https://github.com/python-poetry/poetry/pull/7694 are fixed
60-
- run: python -m pip install --upgrade wheel "poetry==1.3.2" poethepoet
53+
# # Using fixed Poetry version until
54+
# # https://github.com/python-poetry/poetry/issues/7611 and
55+
# # https://github.com/python-poetry/poetry/pull/7694 are fixed
56+
# - run: python -m pip install --upgrade wheel "poetry==1.3.2" poethepoet
57+
- run: python -m pip install --upgrade wheel poetry poethepoet
6158
- run: poetry install --no-root --all-extras
6259
- run: poe bridge-lint
6360
if: ${{ matrix.clippyLinter }}
@@ -93,7 +90,7 @@ jobs:
9390
env:
9491
TEMPORAL_TEST_PROTO3: 1
9592
run: |
96-
poetry add "protobuf<4"
93+
poetry add --python 3.9 "protobuf<4"
9794
poe gen-protos
9895
poe format
9996
[[ -z $(git status --porcelain temporalio) ]] || (git diff temporalio; echo "Protos changed"; exit 1)
@@ -122,3 +119,4 @@ jobs:
122119
python-repo-path: ${{github.event.pull_request.head.repo.full_name}}
123120
version: ${{github.event.pull_request.head.ref}}
124121
version-is-repo-ref: true
122+
features-repo-ref: python-version-upgrade

.github/workflows/run-bench.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ jobs:
3737
workspaces: temporalio/bridge -> target
3838
- uses: actions/setup-python@v5
3939
with:
40-
python-version: "3.12"
40+
python-version: "3.13"
4141
- uses: arduino/setup-protoc@v3
4242
with:
4343
# TODO(cretz): Can upgrade proto when https://github.com/arduino/setup-protoc/issues/99 fixed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
![Temporal Python SDK](https://assets.temporal.io/w/py-banner.svg)
22

3-
[![Python 3.8+](https://img.shields.io/pypi/pyversions/temporalio.svg?style=for-the-badge)](https://pypi.org/project/temporalio)
3+
[![Python 3.9+](https://img.shields.io/pypi/pyversions/temporalio.svg?style=for-the-badge)](https://pypi.org/project/temporalio)
44
[![PyPI](https://img.shields.io/pypi/v/temporalio.svg?style=for-the-badge)](https://pypi.org/project/temporalio)
55
[![MIT](https://img.shields.io/pypi/l/temporalio.svg?style=for-the-badge)](LICENSE)
66

@@ -1367,7 +1367,7 @@ The Python SDK is built to work with Python 3.8 and newer. It is built using
13671367

13681368
To build the SDK from source for use as a dependency, the following prerequisites are required:
13691369

1370-
* [Python](https://www.python.org/) >= 3.8
1370+
* [Python](https://www.python.org/) >= 3.9
13711371
* Make sure the latest version of `pip` is in use
13721372
* [Rust](https://www.rust-lang.org/)
13731373
* [Protobuf Compiler](https://protobuf.dev/)

0 commit comments

Comments
 (0)