diff --git a/.github/workflows/python-lib-build.yml b/.github/workflows/python-lib-build.yml index 4c2590d42..e8e802d44 100644 --- a/.github/workflows/python-lib-build.yml +++ b/.github/workflows/python-lib-build.yml @@ -9,5 +9,5 @@ jobs: uses: zepben/.github/.github/workflows/python-build.yml@main with: private: false - python-versions-to-test: "['3.10', '3.11', '3.12', '3.13']" + python-versions-to-test: "['3.10', '3.11', '3.12', '3.13', '3.14']" secrets: inherit diff --git a/README.md b/README.md index 6ab0e4299..fba34ba6f 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ The Python EWB SDK contains everything necessary to communicate with a Zepben En ## Requirements -- Python 3.10 - 3.13 inclusive +- Python 3.10 - 3.14 inclusive ## Installation diff --git a/changelog.md b/changelog.md index c1c099eff..ee265bd01 100644 --- a/changelog.md +++ b/changelog.md @@ -25,6 +25,7 @@ * Switched from using `dataclassy` to native dataclasses ### Fixes +* added python3.14 to compatibility list. * Fixed errors in handling phase energisation of `LinearShuntCompensator` instances with a `grounding_terminal`. * **E721**: Replaced `is`/`is not` type checks with `isinstance()` in `base_service_comparator.py` and `traversal.py`. * **F821**: Deleted dead `services/network/tracing/util.py` file. Fixed undefined names by importing `EnergySource` directly, importing `Generic` where needed, and importing customer types in `test_customer_consumer.py`. diff --git a/pyproject.toml b/pyproject.toml index 6874c8641..c32d8b758 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,13 +18,13 @@ description = "Python SDK for interacting with the Energy Workbench platform" readme = {file = "README.md", content-type = "text/markdown"} license = "MPL-2.0" - requires-python = '>=3.10,<3.14' + requires-python = '>=3.10,<3.15' authors = [ {name = "Kurt Greaves", email = "kurt.greaves@zepben.com"}, {name = "Max Chesterfield", email = "max.chesterfield@zepben.com"} ] dependencies = [ - "zepben.protobuf==1.8.0b2", + "zepben.protobuf==1.8.0b3", "typing_extensions==4.15.0", "requests==2.32.5", "urllib3==2.5.0", @@ -37,6 +37,7 @@ "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "Operating System :: OS Independent" ] diff --git a/tox.ini b/tox.ini index 46237d9ea..97b02f752 100644 --- a/tox.ini +++ b/tox.ini @@ -1,7 +1,7 @@ [tox] envlist = lint - py{3.13, 3.12, 3.11, 3.10} + py{3.14, 3.13, 3.12, 3.11, 3.10} build [testenv] @@ -11,9 +11,9 @@ pip_pre = true extras = test depends = # run lint before testing - py{3.13, 3.12, 3.11, 3.10}: lint + py{3.14, 3.13, 3.12, 3.11, 3.10}: lint # build the package after testing - build: py{3.13, 3.12, 3.11, 3.10} + build: py{3.14, 3.13, 3.12, 3.11, 3.10} commands = pytest --cov=zepben.ewb --cov-report=xml --cov-branch {posargs} [testenv:lint]