Skip to content

Commit 6bf4100

Browse files
committed
Support Python 3.15
Upgrade pybind11 to 3.1.0, the first release tested on Python 3.15, and add Python 3.15 to the wheel build and PR validation matrices. The Ubuntu and Windows runners ship CMake 3.31, whose FindPython does not know Python 3.15, so those jobs upgrade CMake from PyPI first.
1 parent bd46d51 commit 6bf4100

7 files changed

Lines changed: 24 additions & 9 deletions

File tree

‎.github/workflows/ci-build-release-wheels.yaml‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ jobs:
4646
- {version: '3.12', spec: 'cp312-cp312'}
4747
- {version: '3.13', spec: 'cp313-cp313'}
4848
- {version: '3.14', spec: 'cp314-cp314'}
49+
- {version: '3.15', spec: 'cp315-cp315'}
4950
cpu:
5051
- {arch: 'x86_64', platform: 'x86_64', runner: 'ubuntu-latest'}
5152
- {arch: 'aarch64', platform: 'arm64', runner: 'ubuntu-24.04-arm'}
@@ -102,6 +103,7 @@ jobs:
102103
- {version: '3.12', version_long: '3.12.8'}
103104
- {version: '3.13', version_long: '3.13.1'}
104105
- {version: '3.14', version_long: '3.14.0'}
106+
- {version: '3.15', version_long: '3.15.0'}
105107

106108
steps:
107109
- name: checkout
@@ -132,6 +134,7 @@ jobs:
132134
- {version: '3.12'}
133135
- {version: '3.13'}
134136
- {version: '3.14'}
137+
- {version: '3.15'}
135138

136139
steps:
137140
- uses: actions/checkout@v3
@@ -140,6 +143,10 @@ jobs:
140143
with:
141144
python-version: ${{ matrix.python.version }}
142145

146+
# The runner default CMake 3.31 cannot find Python 3.15 with FindPython
147+
- name: Upgrade CMake
148+
run: python -m pip install -U cmake
149+
143150
- name: Download Pulsar C++ client on Windows
144151
shell: bash
145152
run: |

‎.github/workflows/ci-pr-validation.yaml‎

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ jobs:
5858
strategy:
5959
fail-fast: false
6060
matrix:
61-
version: ['3.10', '3.14']
61+
version: ['3.10', '3.15']
6262

6363
steps:
6464
- name: checkout
@@ -68,6 +68,10 @@ jobs:
6868
with:
6969
python-version: "${{matrix.version}}"
7070

71+
# The runner default CMake 3.31 cannot find Python 3.15 with FindPython
72+
- name: Upgrade CMake
73+
run: python -m pip install -U cmake
74+
7175
- name: Install Pulsar C++ client
7276
run: build-support/install-dependencies.sh
7377

@@ -119,7 +123,7 @@ jobs:
119123
- {name: 'manylinux', py_suffix: ''}
120124
- {name: 'manylinux_musl', py_suffix: '-alpine'}
121125
python:
122-
- {version: '3.14', spec: 'cp314-cp314'}
126+
- {version: '3.15', spec: 'cp315-cp315'}
123127
cpu:
124128
- {arch: 'x86_64', platform: 'x86_64'}
125129

@@ -166,7 +170,7 @@ jobs:
166170
strategy:
167171
matrix:
168172
py:
169-
- {version: '3.14', version_long: '3.14.0'}
173+
- {version: '3.15', version_long: '3.15.0'}
170174

171175
steps:
172176
- name: checkout
@@ -188,7 +192,7 @@ jobs:
188192
fail-fast: false
189193
matrix:
190194
python:
191-
- version: '3.14'
195+
- version: '3.15'
192196

193197
steps:
194198
- uses: actions/checkout@v3
@@ -197,6 +201,10 @@ jobs:
197201
with:
198202
python-version: ${{ matrix.python.version }}
199203

204+
# The runner default CMake 3.31 cannot find Python 3.15 with FindPython
205+
- name: Upgrade CMake
206+
run: python -m pip install -U cmake
207+
200208
- name: Download Pulsar C++ client on Windows
201209
shell: bash
202210
run: |

‎README.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Pulsar Python clients support a variety of Pulsar features to enable building ap
2525

2626
## Requirements
2727

28-
- Python 3.10, 3.11, 3.12, 3.13 or 3.14
28+
- Python 3.10, 3.11, 3.12, 3.13, 3.14 or 3.15
2929
- A C++ compiler that supports C++11
3030
- CMake >= 3.18
3131
- [Pulsar C++ client library](https://github.com/apache/pulsar-client-cpp)

‎RELEASE.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ stay open for at least 72 hours ***
132132
Python wheels:
133133
https://dist.apache.org/repos/dist/dev/pulsar/pulsar-client-python-X.Y.Z-candidate-N/
134134
135-
The supported python versions are 3.10, 3.11, 3.12, 3.13 and 3.14. The
135+
The supported python versions are 3.10, 3.11, 3.12, 3.13, 3.14 and 3.15. The
136136
supported platforms and architectures are:
137137
- Windows x86_64 (windows/)
138138
- glibc-based Linux x86_64 (linux-glibc-x86_64/)

‎dependencies.yaml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,6 @@
1818
#
1919

2020
pulsar-cpp: 4.2.0
21-
pybind11: 3.0.1
21+
pybind11: 3.1.0
2222
# The OpenSSL dependency is only used when building Python from source
2323
openssl: 1.1.1q

‎pulsar/__init__.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
The Pulsar Python client library is based on the existing C++ client library.
2222
All the same features are exposed through the Python interface.
2323
24-
Currently, the supported Python versions are 3.10, 3.11, 3.12, 3.13 and 3.14.
24+
Currently, the supported Python versions are 3.10, 3.11, 3.12, 3.13, 3.14 and 3.15.
2525
2626
=================
2727
Install from PyPI

‎pybind11‎

Submodule pybind11 updated 193 files

0 commit comments

Comments
 (0)