Skip to content

Commit 1b15515

Browse files
authored
Merge pull request #401 from wudidapaopao/support_build_with_python314
Support buildind for Python 3.14
2 parents ec3e13f + 4e2c0d9 commit 1b15515

File tree

7 files changed

+34
-29
lines changed

7 files changed

+34
-29
lines changed

.github/workflows/build_linux_arm64_wheels-gh.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,8 @@ jobs:
7474
pyenv install 3.11:latest
7575
pyenv install 3.12:latest
7676
pyenv install 3.13:latest
77-
pyenv global 3.8 3.9 3.10 3.11 3.12 3.13
77+
pyenv install 3.14:latest
78+
pyenv global 3.8 3.9 3.10 3.11 3.12 3.13 3.14
7879
7980
# Verify installations
8081
echo "Installed versions:"
@@ -87,7 +88,7 @@ jobs:
8788
pyenv versions
8889
echo ""
8990
echo "Verifying all required Python versions are available:"
90-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
91+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
9192
if ! pyenv versions --bare | grep -q "^$version"; then
9293
echo "ERROR: Python $version is not installed!"
9394
exit 1
@@ -99,7 +100,7 @@ jobs:
99100
run: |
100101
export PATH="$HOME/.pyenv/bin:$PATH"
101102
eval "$(pyenv init -)"
102-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
103+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
103104
echo "Installing dependencies for Python $version"
104105
pyenv shell $version
105106
python -m pip install --upgrade pip
@@ -258,7 +259,7 @@ jobs:
258259
run: |
259260
export PATH="$HOME/.pyenv/bin:$PATH"
260261
eval "$(pyenv init -)"
261-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
262+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
262263
echo "Testing chdb on Python $version"
263264
pyenv shell $version
264265
python -m pip install dist/*.whl --force-reinstall

.github/workflows/build_linux_x86_wheels.yml

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,8 @@ jobs:
7474
pyenv install 3.11:latest
7575
pyenv install 3.12:latest
7676
pyenv install 3.13:latest
77-
pyenv global 3.8 3.9 3.10 3.11 3.12 3.13
77+
pyenv install 3.14:latest
78+
pyenv global 3.8 3.9 3.10 3.11 3.12 3.13 3.14
7879
7980
# Verify installations
8081
echo "Installed versions:"
@@ -87,7 +88,7 @@ jobs:
8788
pyenv versions
8889
echo ""
8990
echo "Verifying all required Python versions are available:"
90-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
91+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
9192
if ! pyenv versions --bare | grep -q "^$version"; then
9293
echo "ERROR: Python $version is not installed!"
9394
exit 1
@@ -99,7 +100,7 @@ jobs:
99100
run: |
100101
export PATH="$HOME/.pyenv/bin:$PATH"
101102
eval "$(pyenv init -)"
102-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
103+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
103104
echo "Installing dependencies for Python $version"
104105
pyenv shell $version
105106
python -m pip install --upgrade pip
@@ -123,7 +124,7 @@ jobs:
123124
which clang++-19
124125
clang++-19 --version
125126
sudo apt-get install -y make cmake ccache ninja-build yasm gawk wget
126-
# Install WebAssembly linker (wasm-ld)
127+
# Install WebAssembly linker (wasm-ld)
127128
sudo apt-get install -y lld-19
128129
# Create symlink for wasm-ld
129130
if ! command -v wasm-ld &> /dev/null; then
@@ -257,7 +258,7 @@ jobs:
257258
run: |
258259
export PATH="$HOME/.pyenv/bin:$PATH"
259260
eval "$(pyenv init -)"
260-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
261+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
261262
echo "Testing chdb on Python $version"
262263
pyenv shell $version
263264
python -m pip install dist/*.whl --force-reinstall

.github/workflows/build_macos_arm64_wheels.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,8 @@ jobs:
6060
pyenv install 3.11:latest
6161
pyenv install 3.12:latest
6262
pyenv install 3.13:latest
63-
pyenv global 3.8 3.9 3.10 3.11 3.12 3.13
63+
pyenv install 3.14:latest
64+
pyenv global 3.8 3.9 3.10 3.11 3.12 3.13 3.14
6465
6566
echo "Installed versions:"
6667
pyenv versions
@@ -72,7 +73,7 @@ jobs:
7273
pyenv versions
7374
echo ""
7475
echo "Verifying all required Python versions are available:"
75-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
76+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
7677
if ! pyenv versions --bare | grep -q "^$version"; then
7778
echo "ERROR: Python $version is not installed!"
7879
exit 1
@@ -84,7 +85,7 @@ jobs:
8485
run: |
8586
export PATH="$HOME/.pyenv/bin:$PATH"
8687
eval "$(pyenv init -)"
87-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
88+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
8889
echo "Installing dependencies for Python $version"
8990
pyenv shell $version
9091
python -m pip install --upgrade pip
@@ -251,7 +252,7 @@ jobs:
251252
run: |
252253
export PATH="$HOME/.pyenv/bin:$PATH"
253254
eval "$(pyenv init -)"
254-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
255+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
255256
echo "Testing chdb on Python $version"
256257
pyenv shell $version
257258
python -m pip install dist/*.whl --force-reinstall --no-cache-dir

.github/workflows/build_macos_x86_wheels.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,8 @@ jobs:
4949
pyenv install 3.11:latest
5050
pyenv install 3.12:latest
5151
pyenv install 3.13:latest
52-
pyenv global 3.9 3.10 3.11 3.12 3.13
52+
pyenv install 3.14:latest
53+
pyenv global 3.9 3.10 3.11 3.12 3.13 3.14
5354
5455
echo "Installed versions:"
5556
pyenv versions
@@ -61,7 +62,7 @@ jobs:
6162
pyenv versions
6263
echo ""
6364
echo "Verifying all required Python versions are available:"
64-
for version in 3.9 3.10 3.11 3.12 3.13; do
65+
for version in 3.9 3.10 3.11 3.12 3.13 3.14; do
6566
if ! pyenv versions --bare | grep -q "^$version"; then
6667
echo "ERROR: Python $version is not installed!"
6768
exit 1
@@ -73,7 +74,7 @@ jobs:
7374
run: |
7475
export PATH="$HOME/.pyenv/bin:$PATH"
7576
eval "$(pyenv init -)"
76-
for version in 3.9 3.10 3.11 3.12 3.13; do
77+
for version in 3.9 3.10 3.11 3.12 3.13 3.14; do
7778
echo "Installing dependencies for Python $version"
7879
pyenv shell $version
7980
python -m pip install --upgrade pip
@@ -253,7 +254,7 @@ jobs:
253254
run: |
254255
export PATH="$HOME/.pyenv/bin:$PATH"
255256
eval "$(pyenv init -)"
256-
for version in 3.9 3.10 3.11 3.12 3.13; do
257+
for version in 3.9 3.10 3.11 3.12 3.13 3.14; do
257258
echo "Testing chdb on Python $version"
258259
pyenv shell $version
259260
python -m pip install dist/*.whl --force-reinstall

.github/workflows/build_musllinux_arm64_wheels.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -103,16 +103,16 @@ jobs:
103103
eval "$(pyenv init -)"
104104
105105
# Install Python versions
106-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
106+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
107107
echo "Installing Python $version"
108108
pyenv install $version:latest
109109
done
110-
pyenv global 3.8 3.9 3.10 3.11 3.12 3.13
110+
pyenv global 3.8 3.9 3.10 3.11 3.12 3.13 3.14
111111
112112
# Verify installations
113113
echo "Installed versions:"
114114
pyenv versions
115-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
115+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
116116
if ! pyenv versions --bare | grep -q "^$version"; then
117117
echo "ERROR: Python $version is not installed!"
118118
exit 1
@@ -128,7 +128,7 @@ jobs:
128128
rustup component add --toolchain nightly-2025-07-07 rust-src
129129
130130
# Install Python dependencies
131-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
131+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
132132
echo "Installing dependencies for Python $version"
133133
pyenv shell $version
134134
python -m pip install --upgrade pip
@@ -235,7 +235,7 @@ jobs:
235235
CURRENT_TEST=0
236236
TEST_FAILED=false
237237
238-
for version in 3.9 3.10 3.11 3.12 3.13; do
238+
for version in 3.9 3.10 3.11 3.12 3.13 3.14; do
239239
CURRENT_TEST=$((CURRENT_TEST + 1))
240240
echo "=== Test $CURRENT_TEST/$TOTAL_TESTS: Python $version ==="
241241
echo "Test start time: $(date)"

.github/workflows/build_musllinux_x86_wheels.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,8 @@ jobs:
9090
pyenv install 3.11:latest
9191
pyenv install 3.12:latest
9292
pyenv install 3.13:latest
93-
pyenv global 3.8 3.9 3.10 3.11 3.12 3.13
93+
pyenv install 3.14:latest
94+
pyenv global 3.8 3.9 3.10 3.11 3.12 3.13 3.14
9495
9596
# Verify installations
9697
echo "Installed versions:"
@@ -100,7 +101,7 @@ jobs:
100101
export PATH="$HOME/.pyenv/bin:$PATH"
101102
eval "$(pyenv init -)"
102103
echo "Verifying all required Python versions are available:"
103-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
104+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
104105
if ! pyenv versions --bare | grep -q "^$version"; then
105106
echo "ERROR: Python $version is not installed!"
106107
exit 1
@@ -112,7 +113,7 @@ jobs:
112113
run: |
113114
export PATH="$HOME/.pyenv/bin:$PATH"
114115
eval "$(pyenv init -)"
115-
for version in 3.8 3.9 3.10 3.11 3.12 3.13; do
116+
for version in 3.8 3.9 3.10 3.11 3.12 3.13 3.14; do
116117
echo "Installing dependencies for Python $version"
117118
pyenv shell $version
118119
python -m pip install --upgrade pip
@@ -237,7 +238,7 @@ jobs:
237238
run: |
238239
export PATH="$HOME/.pyenv/bin:$PATH"
239240
eval "$(pyenv init -)"
240-
for version in 3.9 3.10 3.11 3.12 3.13; do
241+
for version in 3.9 3.10 3.11 3.12 3.13 3.14; do
241242
echo "Testing chdb on Python $version"
242243
pyenv shell $version
243244
python -m pip install dist/*.whl --force-reinstall

chdb/build_pybind11.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,11 +63,11 @@ build_pybind11_nonlimitedapi() {
6363
}
6464

6565
build_all_pybind11_nonlimitedapi() {
66-
local python_versions=("3.8" "3.9" "3.10" "3.11" "3.12" "3.13")
67-
66+
local python_versions=("3.8" "3.9" "3.10" "3.11" "3.12" "3.13" "3.14")
67+
6868
# Skip Python 3.8 for macOS x86_64
6969
if [ "$(uname)" == "Darwin" ] && [ "$(uname -m)" == "x86_64" ]; then
70-
python_versions=("3.9" "3.10" "3.11" "3.12" "3.13")
70+
python_versions=("3.9" "3.10" "3.11" "3.12" "3.13" "3.14")
7171
fi
7272

7373
echo "Building pybind11 nonlimitedapi libraries for all Python versions..."

0 commit comments

Comments
 (0)