Skip to content

Commit fec9f10

Browse files
authored
Add CPython 3.15 wheels for the Python SDK (#240)
Extend CI and release builds to include 3.15 on Linux x86\_64 and Windows AMD64, with matching package metadata and existing wheelhouse smoke-test coverage, while retaining 3.10-3.14 support. Fixes: #239 --------- Signed-off-by: James Sturtevant <jsturtevant@gmail.com>
1 parent b872fe6 commit fec9f10

10 files changed

Lines changed: 15 additions & 13 deletions

File tree

‎.github/workflows/ci.yml‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ jobs:
274274
- uses: astral-sh/setup-uv@c18668ad3cf93ea998bef934396af7bb5c839dc7 # v10.2.0
275275

276276
- name: Install Python
277-
run: uv python install 3.10 3.11 3.12 3.13 3.14
277+
run: uv python install 3.10 3.11 3.12 3.13 3.14 3.15
278278

279279
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
280280
with:
@@ -290,7 +290,7 @@ jobs:
290290

291291
- name: Build all Python packages
292292
run: |
293-
export INTERPRETERS="--interpreter $(uv python find 3.10) $(uv python find 3.11) $(uv python find 3.12) $(uv python find 3.13) $(uv python find 3.14)"
293+
export INTERPRETERS="--interpreter $(uv python find 3.10) $(uv python find 3.11) $(uv python find 3.12) $(uv python find 3.13) $(uv python find 3.14) $(uv python find 3.15)"
294294
just python-dist
295295
296296
- name: Verify manylinux compatibility
@@ -325,7 +325,7 @@ jobs:
325325
- uses: astral-sh/setup-uv@c18668ad3cf93ea998bef934396af7bb5c839dc7 # v10.2.0
326326

327327
- name: Install Python
328-
run: uv python install 3.10 3.11 3.12 3.13 3.14
328+
run: uv python install 3.10 3.11 3.12 3.13 3.14 3.15
329329

330330
- name: Install just
331331
run: cargo install --locked just
@@ -336,7 +336,7 @@ jobs:
336336
- name: Build backend wheels
337337
shell: pwsh
338338
run: |
339-
$interps = "3.10", "3.11", "3.12", "3.13", "3.14" | ForEach-Object { & uv python find $_ }
339+
$interps = "3.10", "3.11", "3.12", "3.13", "3.14", "3.15" | ForEach-Object { & uv python find $_ }
340340
$env:INTERPRETERS = "--interpreter $($interps -join ' ')"
341341
just python-dist-backends
342342
@@ -353,7 +353,7 @@ jobs:
353353
strategy:
354354
matrix:
355355
os: [ubuntu-latest, windows-latest]
356-
python: ["3.10", "3.11", "3.12", "3.13", "3.14"]
356+
python: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"]
357357
steps:
358358
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
359359

‎.github/workflows/publish.yml‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ jobs:
7171
- uses: astral-sh/setup-uv@c18668ad3cf93ea998bef934396af7bb5c839dc7 # v10.2.0
7272

7373
- name: Install Python
74-
run: uv python install 3.10 3.11 3.12 3.13 3.14
74+
run: uv python install 3.10 3.11 3.12 3.13 3.14 3.15
7575

7676
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
7777
with:
@@ -87,7 +87,7 @@ jobs:
8787

8888
- name: Build all Python packages
8989
run: |
90-
export INTERPRETERS="--interpreter $(uv python find 3.10) $(uv python find 3.11) $(uv python find 3.12) $(uv python find 3.13) $(uv python find 3.14)"
90+
export INTERPRETERS="--interpreter $(uv python find 3.10) $(uv python find 3.11) $(uv python find 3.12) $(uv python find 3.13) $(uv python find 3.14) $(uv python find 3.15)"
9191
just python-dist
9292
9393
- name: Verify manylinux compatibility
@@ -123,7 +123,7 @@ jobs:
123123
- uses: astral-sh/setup-uv@c18668ad3cf93ea998bef934396af7bb5c839dc7 # v10.2.0
124124

125125
- name: Install Python
126-
run: uv python install 3.10 3.11 3.12 3.13 3.14
126+
run: uv python install 3.10 3.11 3.12 3.13 3.14 3.15
127127

128128
- name: Install just
129129
run: cargo install --locked just
@@ -134,7 +134,7 @@ jobs:
134134
- name: Build backend wheels
135135
shell: pwsh
136136
run: |
137-
$interps = "3.10", "3.11", "3.12", "3.13", "3.14" | ForEach-Object { & uv python find $_ }
137+
$interps = "3.10", "3.11", "3.12", "3.13", "3.14", "3.15" | ForEach-Object { & uv python find $_ }
138138
$env:INTERPRETERS = "--interpreter $($interps -join ' ')"
139139
just python-dist-backends
140140

‎README.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ Requires [KVM](https://help.ubuntu.com/community/KVM/Installation), [MSHV](https
5656

5757
Python SDK:
5858

59-
The Python SDK and packaged Wasm guest wheels support CPython 3.10 through 3.14.
59+
The Python SDK and packaged Wasm guest wheels support CPython 3.10 through 3.15.
6060

6161
```shell
6262
uv pip install "hyperlight-sandbox[wasm,python_guest]"

‎pyproject.toml‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ dev = [
2828
"maturin>=1.15.0,<2.0",
2929
"componentize-py",
3030
"build",
31-
"twine",
3231
"ruff>=0.16.9",
3332
"hyperlight-sandbox",
3433
"hyperlight-sandbox-python-guest",

‎src/sdk/python/core/pyproject.toml‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ classifiers = [
2020
"Programming Language :: Python :: 3.12",
2121
"Programming Language :: Python :: 3.13",
2222
"Programming Language :: Python :: 3.14",
23+
"Programming Language :: Python :: 3.15",
2324
"Programming Language :: Rust",
2425
"Operating System :: POSIX :: Linux",
2526
"Operating System :: Microsoft :: Windows",

‎src/sdk/python/hyperlight_js_backend/pyproject.toml‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ classifiers = [
1818
"Programming Language :: Python :: 3.12",
1919
"Programming Language :: Python :: 3.13",
2020
"Programming Language :: Python :: 3.14",
21+
"Programming Language :: Python :: 3.15",
2122
"Programming Language :: Rust",
2223
"Operating System :: POSIX :: Linux",
2324
"Operating System :: Microsoft :: Windows",

‎src/sdk/python/wasm_backend/pyproject.toml‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ classifiers = [
1818
"Programming Language :: Python :: 3.12",
1919
"Programming Language :: Python :: 3.13",
2020
"Programming Language :: Python :: 3.14",
21+
"Programming Language :: Python :: 3.15",
2122
"Programming Language :: Rust",
2223
"Operating System :: POSIX :: Linux",
2324
"Operating System :: Microsoft :: Windows",

‎src/sdk/python/wasm_guests/javascript_guest/pyproject.toml‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ classifiers = [
1616
"Programming Language :: Python :: 3.12",
1717
"Programming Language :: Python :: 3.13",
1818
"Programming Language :: Python :: 3.14",
19+
"Programming Language :: Python :: 3.15",
1920
]
2021

2122
[tool.setuptools]

‎src/sdk/python/wasm_guests/python_guest/pyproject.toml‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ classifiers = [
1616
"Programming Language :: Python :: 3.12",
1717
"Programming Language :: Python :: 3.13",
1818
"Programming Language :: Python :: 3.14",
19+
"Programming Language :: Python :: 3.15",
1920
]
2021

2122
[tool.setuptools]

‎uv.lock‎

Lines changed: 0 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)