Skip to content

Commit 933d38c

Browse files
committed
chore: align sdk support with python 3.11-3.14
1 parent f558326 commit 933d38c

6 files changed

Lines changed: 28 additions & 162 deletions

File tree

.github/workflows/main.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ name: CI
33
on: push
44

55
env:
6-
PYTHON_VERSIONS: '[ "3.10", "3.11", "3.12", "3.13.3" ]'
6+
DEFAULT_PYTHON_VERSION: "3.14"
7+
PYTHON_VERSIONS: '[ "3.11", "3.12", "3.13", "3.14" ]'
78

89
jobs:
910

@@ -19,6 +20,8 @@ jobs:
1920
name: Static analysis on Python ${{ matrix.python-version }}
2021
runs-on: ubuntu-latest
2122
needs: set-python-matrix
23+
env:
24+
PYTHON: ${{ matrix.python-version }}
2225
strategy:
2326
fail-fast: false # Ensure all matrix jobs run to completion
2427
matrix:
@@ -44,6 +47,8 @@ jobs:
4447
name: Testing on Python ${{ matrix.python-version }}
4548
runs-on: ubuntu-latest
4649
needs: set-python-matrix
50+
env:
51+
PYTHON: ${{ matrix.python-version }}
4752
strategy:
4853
fail-fast: false # Ensure all matrix jobs run to completion
4954
matrix:
@@ -111,7 +116,7 @@ jobs:
111116

112117
- uses: actions/setup-python@v6
113118
with:
114-
python-version: '3.10'
119+
python-version: ${{ env.DEFAULT_PYTHON_VERSION }}
115120

116121
- uses: astral-sh/setup-uv@v6
117122

Makefile

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1+
PYTHON ?= 3.14
12
srcs = src docs/modules/ROOT/examples tests
2-
UV_SYNC = uv sync --frozen --extra dev
3-
UV_RUN = uv run --frozen --extra dev
3+
UV_SYNC = uv sync --frozen --extra dev --python $(PYTHON)
4+
UV_RUN = uv run --frozen --extra dev --python $(PYTHON)
45

56
## all: Run linter and tests.
67
.PHONY: all
@@ -19,7 +20,7 @@ install:
1920
## install-corva-sdk: Install corva-sdk requirements.
2021
.PHONY: install-corva-sdk
2122
install-corva-sdk:
22-
@uv sync --frozen
23+
@uv sync --frozen --python $(PYTHON)
2324

2425
## install-dev: Install dev requirements.
2526
.PHONY: install-dev

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ for more details.
1212

1313
## Install
1414

15+
`corva-sdk` supports Python `3.11` through `3.14` for app development.
16+
Local development and CI use Python `3.14` by default.
17+
Python `3.11` and `3.12` remain supported, but new apps should prefer `3.14`.
18+
1519
Install using `pip install corva-sdk`.
1620

1721
## Contributing

docs/modules/ROOT/pages/index.adoc

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,9 @@ Documentation for version *{page-version}*.
2929

3030
== Install
3131

32-
{corva-sdk} requires Python 3.9.
32+
{corva-sdk} supports Python 3.11 through 3.14 for apps
33+
and uses Python 3.14 by default for local development and CI.
34+
Python 3.11 and 3.12 remain supported, but new apps should prefer Python 3.14.
3335

3436
Installation is as simple as:
3537

@@ -797,12 +799,13 @@ Here are some guidelines to set up your environment.
797799

798800
What's needed:
799801

800-
* Python 3.9.
802+
* Python 3.14 for the default development environment.
803+
The SDK supports app runtimes from Python 3.11 through 3.14.
801804
* Opened terminal inside cloned {corva-sdk} repository.
802805

803806
[source,bash]
804807
----
805-
python -m venv env <.>
808+
python3.14 -m venv env <.>
806809
source ./env/bin/activate <.>
807810
----
808811
<.> Create a directory `./env/`

pyproject.toml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ authors = [
1212
{ name = "Jordan Ambra", email = "jordan.ambra@corva.ai" }
1313
]
1414
keywords = ["corva", "sdk"]
15-
requires-python = ">=3.10,<4.0"
15+
requires-python = ">=3.11,<4.0"
1616
dependencies = [
1717
"fakeredis >= 2.30.0, <2.32.0",
1818
"pydantic >= 2.0, <3.0",
@@ -28,7 +28,10 @@ classifiers = [
2828
"Operating System :: OS Independent",
2929
"Programming Language :: Python",
3030
"Programming Language :: Python :: 3",
31-
"Programming Language :: Python :: 3.9",
31+
"Programming Language :: Python :: 3.11",
32+
"Programming Language :: Python :: 3.12",
33+
"Programming Language :: Python :: 3.13",
34+
"Programming Language :: Python :: 3.14",
3235
"Topic :: Software Development :: Libraries",
3336
"Typing :: Typed"
3437
]
@@ -97,7 +100,7 @@ omit = [
97100
]
98101

99102
[tool.mypy]
100-
python_version = "3.9"
103+
python_version = "3.11"
101104
mypy_path = "src"
102105
explicit_package_bases = true
103106
check_untyped_defs = true

0 commit comments

Comments
 (0)