From fd962abe0e421c8adc49db690ba065e062032f12 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 12 Oct 2025 12:28:27 +0000 Subject: [PATCH 1/4] Initial plan From 1503c0db46804878172d375dda99e6a75e8af590 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 12 Oct 2025 12:33:04 +0000 Subject: [PATCH 2/4] Add Python 3.14 support: update cibuildwheel and add to CI matrix Co-authored-by: fruch <340979+fruch@users.noreply.github.com> --- .github/workflows/integration-tests.yml | 4 +++- .github/workflows/lib-build-and-push.yml | 2 +- pyproject.toml | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/integration-tests.yml b/.github/workflows/integration-tests.yml index 71d2d4a1b0..df8bf58af9 100644 --- a/.github/workflows/integration-tests.yml +++ b/.github/workflows/integration-tests.yml @@ -29,13 +29,15 @@ jobs: fail-fast: false matrix: java-version: [8] - python-version: ["3.9", "3.11", "3.12", "3.13"] + python-version: ["3.9", "3.11", "3.12", "3.13", "3.14"] event_loop_manager: ["libev", "asyncio", "asyncore"] exclude: - python-version: "3.12" event_loop_manager: "asyncore" - python-version: "3.13" event_loop_manager: "asyncore" + - python-version: "3.14" + event_loop_manager: "asyncore" steps: - uses: actions/checkout@v5 diff --git a/.github/workflows/lib-build-and-push.yml b/.github/workflows/lib-build-and-push.yml index bb10b89edb..a7361e8850 100644 --- a/.github/workflows/lib-build-and-push.yml +++ b/.github/workflows/lib-build-and-push.yml @@ -110,7 +110,7 @@ jobs: - name: Install cibuildwheel run: | - uv tool install 'cibuildwheel==2.22.0' + uv tool install 'cibuildwheel==3.2.1' - name: Install OpenSSL for Windows if: runner.os == 'Windows' diff --git a/pyproject.toml b/pyproject.toml index a462273fdb..f9421ef7d3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,6 +14,7 @@ classifiers = [ 'Programming Language :: Python :: 3.11', 'Programming Language :: Python :: 3.12', 'Programming Language :: Python :: 3.13', + 'Programming Language :: Python :: 3.14', 'Programming Language :: Python :: Implementation :: CPython', 'Programming Language :: Python :: Implementation :: PyPy', 'Topic :: Software Development :: Libraries :: Python Modules', From 1bc0452591ac330e071ce192422908be360ba3df Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 12 Oct 2025 12:39:36 +0000 Subject: [PATCH 3/4] Update documentation to mention Python 3.14 support Co-authored-by: fruch <340979+fruch@users.noreply.github.com> --- README.rst | 2 +- docs/index.rst | 2 +- docs/installation.rst | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/README.rst b/README.rst index f6a983a5b2..3a37b40558 100644 --- a/README.rst +++ b/README.rst @@ -20,7 +20,7 @@ Scylla Enterprise (2018.1.x+) using exclusively Cassandra's binary protocol and .. image:: https://github.com/scylladb/python-driver/actions/workflows/integration-tests.yml/badge.svg?branch=master :target: https://github.com/scylladb/python-driver/actions/workflows/integration-tests.yml?query=event%3Apush+branch%3Amaster -The driver supports Python versions 3.9-3.13. +The driver supports Python versions 3.9-3.14. .. **Note:** This driver does not support big-endian systems. diff --git a/docs/index.rst b/docs/index.rst index 8c38dc315c..90149d1922 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -4,7 +4,7 @@ A Python client driver for `Scylla `_. This driver works exclusively with the Cassandra Query Language v3 (CQL3) and Cassandra's native protocol. -The driver supports Python 3.9-3.13. +The driver supports Python 3.9-3.14. This driver is open source under the `Apache v2 License `_. diff --git a/docs/installation.rst b/docs/installation.rst index 884380c2bc..9a0a4accd2 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -3,7 +3,7 @@ Installation Supported Platforms ------------------- -Python versions 3.9-3.13 are supported. Both CPython (the standard Python +Python versions 3.9-3.14 are supported. Both CPython (the standard Python implementation) and `PyPy `_ are supported and tested. Linux, OSX, and Windows are supported. From 647e2a8e1553beca365b06b06b29958fc919a732 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 12 Oct 2025 12:46:03 +0000 Subject: [PATCH 4/4] Remove PyPy build support - pp3* pattern not supported in cibuildwheel 3.x Co-authored-by: fruch <340979+fruch@users.noreply.github.com> --- .github/workflows/lib-build-and-push.yml | 4 ++-- docs/installation.rst | 4 ++-- pyproject.toml | 12 +----------- 3 files changed, 5 insertions(+), 15 deletions(-) diff --git a/.github/workflows/lib-build-and-push.yml b/.github/workflows/lib-build-and-push.yml index a7361e8850..7c436b1393 100644 --- a/.github/workflows/lib-build-and-push.yml +++ b/.github/workflows/lib-build-and-push.yml @@ -98,8 +98,8 @@ jobs: echo "CIBW_TEST_COMMAND=true" >> $GITHUB_ENV; echo "CIBW_TEST_COMMAND_WINDOWS=(exit 0)" >> $GITHUB_ENV; echo "CIBW_TEST_SKIP=*" >> $GITHUB_ENV; - echo "CIBW_SKIP=cp2* cp36* pp36* cp37* pp37* cp38* pp38* *i686 *musllinux*" >> $GITHUB_ENV; - echo "CIBW_BUILD=cp3* pp3*" >> $GITHUB_ENV; + echo "CIBW_SKIP=cp2* cp36* cp37* cp38* *i686 *musllinux*" >> $GITHUB_ENV; + echo "CIBW_BUILD=cp3*" >> $GITHUB_ENV; echo "CIBW_BEFORE_TEST=true" >> $GITHUB_ENV; echo "CIBW_BEFORE_TEST_WINDOWS=(exit 0)" >> $GITHUB_ENV; diff --git a/docs/installation.rst b/docs/installation.rst index 9a0a4accd2..fce66b0f13 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -3,8 +3,8 @@ Installation Supported Platforms ------------------- -Python versions 3.9-3.14 are supported. Both CPython (the standard Python -implementation) and `PyPy `_ are supported and tested. +Python versions 3.9-3.14 are supported. The driver is built for CPython (the +standard Python implementation). Linux, OSX, and Windows are supported. diff --git a/pyproject.toml b/pyproject.toml index f9421ef7d3..287dd23d44 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -16,7 +16,6 @@ classifiers = [ 'Programming Language :: Python :: 3.13', 'Programming Language :: Python :: 3.14', 'Programming Language :: Python :: Implementation :: CPython', - 'Programming Language :: Python :: Implementation :: PyPy', 'Topic :: Software Development :: Libraries :: Python Modules', ] dependencies = ['geomet>=1.1', 'pyyaml > 5.0'] @@ -133,21 +132,16 @@ environment = { CASS_DRIVER_BUILD_CONCURRENCY = "2", CASS_DRIVER_BUILD_EXTENSION skip = [ "cp2*", "cp36*", - "pp36*", "cp37*", - "pp37*", "cp38*", - "pp38*", "*i686", "*musllinux*", ] -build = ["cp3*", "pp3*"] +build = ["cp3*"] test-groups = ["dev"] manylinux-x86_64-image = "manylinux_2_28" manylinux-aarch64-image = "manylinux_2_28" -manylinux-pypy_x86_64-image = "manylinux_2_28" -manylinux-pypy_aarch64-image = "manylinux_2_28" [tool.cibuildwheel.linux] @@ -171,7 +165,3 @@ test-command = [ # TODO: set CASS_DRIVER_BUILD_EXTENSIONS_ARE_MUST to yes when https://github.com/scylladb/python-driver/issues/429 is fixed environment = { CASS_DRIVER_BUILD_CONCURRENCY = "2", CASS_DRIVER_BUILD_EXTENSIONS_ARE_MUST = "no" } - -[[tool.cibuildwheel.overrides]] -select = "pp*" -test-command = []