Skip to content

Commit f5b8bf3

Browse files
committed
INTPYTHON-805 Add support for PyArrow 22 and Python 3.14
1 parent 048e864 commit f5b8bf3

File tree

4 files changed

+11
-30
lines changed

4 files changed

+11
-30
lines changed

.github/workflows/dist-python.yml

Lines changed: 3 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -39,16 +39,7 @@ jobs:
3939
- [ubuntu-24.04, manylinux_aarch64]
4040
- [macos-14, macosx_*]
4141
- [windows-2022, win_amd64]
42-
python: ["cp39", "cp310", "cp311", "cp312", "cp313", "cp313t"]
43-
exclude:
44-
- buildplat: [macos-14, macosx_*]
45-
python: "cp39"
46-
- buildplat: [windows-2022, win_amd64]
47-
python: "cp313t"
48-
include:
49-
- buildplat: [macos-latest, macosx_*]
50-
python: "cp39"
51-
42+
python: ["cp310", "cp311", "cp312", "cp313", "cp314", "cp314t"]
5243

5344
steps:
5445
- name: Checkout pymongoarrow
@@ -87,22 +78,12 @@ jobs:
8778
pipx install "cmake>=3.15,<4"
8879
8980
- name: Install deps
90-
run: python -m pip install "cibuildwheel>=2.4,<3" uv rust-just
91-
92-
- name: Build MacOS Py39 Wheels
93-
if: ${{ matrix.python == 'cp39' && matrix.buildplat[0] == 'macos-11' }}
94-
env:
95-
MACOS_TEST_SKIP: "*arm64"
96-
CIBW_BUILD: cp39-macosx_*
97-
CIBW_ENABLE: cpython-freethreading
98-
MACOSX_DEPLOYMENT_TARGET: "10.14"
99-
run: python -m cibuildwheel --output-dir wheelhouse
81+
run: python -m pip install "cibuildwheel>=3.3,<4" uv rust-just
10082

10183
- name: Build wheels
10284
if: ${{ matrix.buildplat[0] != 'macos-11' }}
10385
env:
10486
CIBW_BUILD: ${{ matrix.python }}-${{ matrix.buildplat[1] }}
105-
CIBW_ENABLE: cpython-freethreading
10687
MACOSX_DEPLOYMENT_TARGET: "12.0"
10788
run: python -m cibuildwheel --output-dir wheelhouse
10889

@@ -123,7 +104,7 @@ jobs:
123104
- uses: actions/setup-python@v6
124105
with:
125106
# Build sdist on lowest supported Python
126-
python-version: '3.9'
107+
python-version: '3.10'
127108

128109
- name: Install deps
129110
run: |

.github/workflows/test-python.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ jobs:
3737
strategy:
3838
matrix:
3939
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
40-
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.13t"]
40+
python-version: [ "3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"]
4141
fail-fast: false
4242
name: CPython ${{ matrix.python-version }}-${{ matrix.os }}
4343
steps:
@@ -138,7 +138,7 @@ jobs:
138138
- name: Setup Python
139139
uses: actions/setup-python@v6
140140
with:
141-
python-version: 3.9
141+
python-version: "3.10"
142142
cache: 'pip'
143143
cache-dependency-path: '**/pyproject.toml'
144144
- name: Install Deps
@@ -159,7 +159,7 @@ jobs:
159159
- name: Setup Python
160160
uses: actions/setup-python@v6
161161
with:
162-
python-version: 3.9
162+
python-version: "3.10"
163163
cache: 'pip'
164164
cache-dependency-path: '**/pyproject.toml'
165165
- name: Install Deps

bindings/python/CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ be of interest or that has already been addressed.
1313

1414
## Supported Interpreters
1515

16-
PyMongoArrow supports CPython 3.9+ and PyPy3.9+. Language features not
16+
PyMongoArrow supports CPython 3.10+. Language features not
1717
supported by all interpreters can not be used.
1818

1919
## Style Guide

bindings/python/pyproject.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ requires = [
66
# Needed for numpy headers.
77
"numpy>=2.0",
88
# Must be kept in sync with "project.dependencies" below.
9-
"pyarrow>=21.0,<21.1.0",
9+
"pyarrow>=22.0,<22.1.0",
1010
]
1111

1212
[project]
@@ -25,19 +25,19 @@ classifiers = [
2525
"Operating System :: POSIX",
2626
"Programming Language :: Python :: 3",
2727
"Programming Language :: Python :: 3 :: Only",
28-
"Programming Language :: Python :: 3.9",
2928
"Programming Language :: Python :: 3.10",
3029
"Programming Language :: Python :: 3.11",
3130
"Programming Language :: Python :: 3.12",
3231
"Programming Language :: Python :: 3.13",
32+
"Programming Language :: Python :: 3.14",
3333
"Programming Language :: Python :: Implementation :: CPython",
3434
"Topic :: Database",
3535
]
3636
readme = "README.md"
37-
requires-python = ">=3.9"
37+
requires-python = ">=3.10"
3838
dependencies = [
3939
# Must be kept in sync with "build_sytem.requires" above.
40-
"pyarrow >=21.0,<21.1",
40+
"pyarrow >=22.0,<22.1",
4141
"pymongo >=4.4,<5",
4242
"numpy>=2.0.1",
4343
"packaging >=23.2",

0 commit comments

Comments
 (0)