Skip to content

Commit f25c26e

Browse files
committed
Update Python support matrix
Signed-off-by: James Sturtevant <jsturtevant@gmail.com>
1 parent 10cf656 commit f25c26e

10 files changed

Lines changed: 89 additions & 56 deletions

File tree

.github/workflows/ci.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ jobs:
6060
- uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
6161

6262
- name: Install Python
63-
run: uv python install 3.12
63+
run: uv python install 3.14
6464

6565
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
6666
with:
@@ -121,7 +121,7 @@ jobs:
121121
- uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
122122

123123
- name: Install Python
124-
run: uv python install 3.12
124+
run: uv python install 3.14
125125

126126
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
127127
with:
@@ -191,7 +191,7 @@ jobs:
191191
- uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
192192

193193
- name: Install Python
194-
run: uv python install 3.12
194+
run: uv python install 3.14
195195

196196
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
197197
with:
@@ -268,7 +268,7 @@ jobs:
268268
- uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
269269

270270
- name: Install Python
271-
run: uv python install 3.10 3.11 3.12 3.13
271+
run: uv python install 3.10 3.11 3.12 3.13 3.14
272272

273273
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
274274
with:
@@ -284,7 +284,7 @@ jobs:
284284

285285
- name: Build all Python packages
286286
run: |
287-
export INTERPRETERS="--interpreter $(uv python find 3.10) $(uv python find 3.11) $(uv python find 3.12) $(uv python find 3.13)"
287+
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)"
288288
just python-dist
289289
290290
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
@@ -307,7 +307,7 @@ jobs:
307307
- uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
308308

309309
- name: Install Python
310-
run: uv python install 3.10 3.11 3.12 3.13
310+
run: uv python install 3.10 3.11 3.12 3.13 3.14
311311

312312
- name: Install just
313313
run: cargo install --locked just
@@ -318,7 +318,7 @@ jobs:
318318
- name: Build backend wheels
319319
shell: pwsh
320320
run: |
321-
$interps = "3.10", "3.11", "3.12", "3.13" | ForEach-Object { & uv python find $_ }
321+
$interps = "3.10", "3.11", "3.12", "3.13", "3.14" | ForEach-Object { & uv python find $_ }
322322
$env:INTERPRETERS = "--interpreter $($interps -join ' ')"
323323
just python-dist-backends
324324
@@ -335,7 +335,7 @@ jobs:
335335
strategy:
336336
matrix:
337337
os: [ubuntu-latest, windows-latest]
338-
python: ["3.10", "3.11", "3.12", "3.13"]
338+
python: ["3.10", "3.11", "3.12", "3.13", "3.14"]
339339
steps:
340340
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
341341

.github/workflows/publish.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ jobs:
3636
- uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
3737

3838
- name: Install Python
39-
run: uv python install 3.10 3.11 3.12 3.13
39+
run: uv python install 3.10 3.11 3.12 3.13 3.14
4040

4141
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
4242
with:
@@ -52,7 +52,7 @@ jobs:
5252

5353
- name: Build all Python packages
5454
run: |
55-
export INTERPRETERS="--interpreter $(uv python find 3.10) $(uv python find 3.11) $(uv python find 3.12) $(uv python find 3.13)"
55+
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)"
5656
just python-dist
5757
5858
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
@@ -76,7 +76,7 @@ jobs:
7676
- uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
7777

7878
- name: Install Python
79-
run: uv python install 3.10 3.11 3.12 3.13
79+
run: uv python install 3.10 3.11 3.12 3.13 3.14
8080

8181
- name: Install just
8282
run: cargo install --locked just
@@ -87,7 +87,7 @@ jobs:
8787
- name: Build backend wheels
8888
shell: pwsh
8989
run: |
90-
$interps = "3.10", "3.11", "3.12", "3.13" | ForEach-Object { & uv python find $_ }
90+
$interps = "3.10", "3.11", "3.12", "3.13", "3.14" | ForEach-Object { & uv python find $_ }
9191
$env:INTERPRETERS = "--interpreter $($interps -join ' ')"
9292
just python-dist-backends
9393
@@ -140,7 +140,7 @@ jobs:
140140
- uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
141141

142142
- name: Install Python
143-
run: uv python install 3.12
143+
run: uv python install 3.14
144144

145145
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
146146
with:
@@ -197,7 +197,7 @@ jobs:
197197
- uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
198198

199199
- name: Install Python
200-
run: uv python install 3.12
200+
run: uv python install 3.14
201201

202202
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
203203
with:

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ Requires [KVM](https://help.ubuntu.com/community/KVM/Installation), [MSHV](https
5757

5858
Python SDK:
5959

60+
The Python SDK and packaged Wasm guest wheels support CPython 3.10 through 3.14.
61+
6062
```shell
6163
uv pip install "hyperlight-sandbox[wasm,python_guest]"
6264
```

src/sdk/python/Justfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ export WIT_WORLD := repo-root + "/src/wasm_sandbox/wit/sandbox-world.wasm"
55
rmrf := if os() == "windows" { "Remove-Item -Recurse -Force -ErrorAction SilentlyContinue" } else { "rm -rf" }
66
mkdirp := if os() == "windows" { "New-Item -ItemType Directory -Force" } else { "mkdir -p" }
77

8-
# Set via env or CLI (e.g. `just interpreters="--interpreter python3.10 python3.13" python-dist`)
8+
# Set via env or CLI (e.g. `just interpreters="--interpreter python3.10 python3.14" python-dist`)
99
# to build wheels for multiple Python versions. Defaults to empty (maturin uses active Python).
1010
interpreters := env("INTERPRETERS", "")
1111

src/sdk/python/core/pyproject.toml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,11 @@ classifiers = [
1515
"Development Status :: 3 - Alpha",
1616
"Intended Audience :: Developers",
1717
"Programming Language :: Python :: 3",
18+
"Programming Language :: Python :: 3.10",
19+
"Programming Language :: Python :: 3.11",
20+
"Programming Language :: Python :: 3.12",
21+
"Programming Language :: Python :: 3.13",
22+
"Programming Language :: Python :: 3.14",
1823
"Programming Language :: Rust",
1924
"Operating System :: POSIX :: Linux",
2025
"Operating System :: Microsoft :: Windows",

src/sdk/python/hyperlight_js_backend/pyproject.toml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[build-system]
2-
requires = ["maturin>=1.7,<2.0"]
2+
requires = ["maturin>=1.13.3,<2.0"]
33
build-backend = "maturin"
44

55
[project]
@@ -13,6 +13,11 @@ classifiers = [
1313
"Development Status :: 3 - Alpha",
1414
"Intended Audience :: Developers",
1515
"Programming Language :: Python :: 3",
16+
"Programming Language :: Python :: 3.10",
17+
"Programming Language :: Python :: 3.11",
18+
"Programming Language :: Python :: 3.12",
19+
"Programming Language :: Python :: 3.13",
20+
"Programming Language :: Python :: 3.14",
1621
"Programming Language :: Rust",
1722
"Operating System :: POSIX :: Linux",
1823
"Operating System :: Microsoft :: Windows",

src/sdk/python/wasm_backend/pyproject.toml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[build-system]
2-
requires = ["maturin>=1.7,<2.0"]
2+
requires = ["maturin>=1.13.3,<2.0"]
33
build-backend = "maturin"
44

55
[project]
@@ -13,6 +13,11 @@ classifiers = [
1313
"Development Status :: 3 - Alpha",
1414
"Intended Audience :: Developers",
1515
"Programming Language :: Python :: 3",
16+
"Programming Language :: Python :: 3.10",
17+
"Programming Language :: Python :: 3.11",
18+
"Programming Language :: Python :: 3.12",
19+
"Programming Language :: Python :: 3.13",
20+
"Programming Language :: Python :: 3.14",
1621
"Programming Language :: Rust",
1722
"Operating System :: POSIX :: Linux",
1823
"Operating System :: Microsoft :: Windows",

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

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,14 @@ description = "Packaged Hyperlight Wasm JavaScript guest exposed as javascript_g
99
readme = "README.md"
1010
license = "Apache-2.0"
1111
requires-python = ">=3.10"
12+
classifiers = [
13+
"Programming Language :: Python :: 3",
14+
"Programming Language :: Python :: 3.10",
15+
"Programming Language :: Python :: 3.11",
16+
"Programming Language :: Python :: 3.12",
17+
"Programming Language :: Python :: 3.13",
18+
"Programming Language :: Python :: 3.14",
19+
]
1220

1321
[tool.setuptools]
1422
packages = ["javascript_guest", "javascript_guest.resources"]

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

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,14 @@ description = "Packaged Hyperlight Wasm Python guest exposed as python_guest.pat
99
readme = "README.md"
1010
license = "Apache-2.0"
1111
requires-python = ">=3.10"
12+
classifiers = [
13+
"Programming Language :: Python :: 3",
14+
"Programming Language :: Python :: 3.10",
15+
"Programming Language :: Python :: 3.11",
16+
"Programming Language :: Python :: 3.12",
17+
"Programming Language :: Python :: 3.13",
18+
"Programming Language :: Python :: 3.14",
19+
]
1220

1321
[tool.setuptools]
1422
packages = ["python_guest", "python_guest.resources"]

0 commit comments

Comments
 (0)