diff --git a/.github/workflows/build_linux_arm64_wheels-gh.yml b/.github/workflows/build_linux_arm64_wheels-gh.yml index bdc8b7a5ca5..2b6a3d0e0c7 100644 --- a/.github/workflows/build_linux_arm64_wheels-gh.yml +++ b/.github/workflows/build_linux_arm64_wheels-gh.yml @@ -23,7 +23,7 @@ on: jobs: build_universal_wheel: name: Build Universal Wheel (Linux ARM64) - runs-on: GH-Linux-ARM64 + runs-on: [self-hosted, linux, arm64, amazon] steps: - name: Install Python build dependencies run: | diff --git a/.github/workflows/build_linux_x86_wheels.yml b/.github/workflows/build_linux_x86_wheels.yml index a3d799d3679..79d3ab87f71 100644 --- a/.github/workflows/build_linux_x86_wheels.yml +++ b/.github/workflows/build_linux_x86_wheels.yml @@ -1,206 +1,206 @@ -name: Build Linux X86 +# name: Build Linux X86 -on: - workflow_dispatch: - inputs: - TAG_NAME: - description: 'Release Version Tag' - required: true - release: - types: [created] - push: - branches: - - main - paths-ignore: - - '**/*.md' - pull_request: - branches: - - main - paths-ignore: - - '**/*.md' +# on: +# workflow_dispatch: +# inputs: +# TAG_NAME: +# description: 'Release Version Tag' +# required: true +# release: +# types: [created] +# push: +# branches: +# - main +# paths-ignore: +# - '**/*.md' +# pull_request: +# branches: +# - main +# paths-ignore: +# - '**/*.md' -jobs: - build_universal_wheel: - name: Build Universal Wheel (Linux x86_64) - runs-on: gh-64c - steps: - - name: Install Python build dependencies - run: | - sudo apt-get update - sudo apt-get install -y make build-essential libssl-dev zlib1g-dev \ - libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \ - libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev \ - libffi-dev liblzma-dev - - name: Setup pyenv - run: | - curl https://pyenv.run | bash - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - pyenv install 3.8:latest - pyenv install 3.9:latest - pyenv install 3.10:latest - pyenv install 3.11:latest - pyenv install 3.12:latest - pyenv install 3.13:latest - pyenv global 3.8 3.9 3.10 3.11 3.12 3.13 +# jobs: +# build_universal_wheel: +# name: Build Universal Wheel (Linux x86_64) +# runs-on: gh-64c +# steps: +# - name: Install Python build dependencies +# run: | +# sudo apt-get update +# sudo apt-get install -y make build-essential libssl-dev zlib1g-dev \ +# libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \ +# libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev \ +# libffi-dev liblzma-dev +# - name: Setup pyenv +# run: | +# curl https://pyenv.run | bash +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# pyenv install 3.8:latest +# pyenv install 3.9:latest +# pyenv install 3.10:latest +# pyenv install 3.11:latest +# pyenv install 3.12:latest +# pyenv install 3.13:latest +# pyenv global 3.8 3.9 3.10 3.11 3.12 3.13 - # Verify installations - echo "Installed versions:" - pyenv versions - - name: Verify pyenv installations - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - echo "Installed Python versions:" - pyenv versions - echo "" - echo "Verifying all required Python versions are available:" - for version in 3.8 3.9 3.10 3.11 3.12 3.13; do - if ! pyenv versions --bare | grep -q "^$version"; then - echo "ERROR: Python $version is not installed!" - exit 1 - fi - echo "✓ Python $version is installed" - done - echo "All Python versions verified successfully!" - - name: Install dependencies for all Python versions - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - for version in 3.8 3.9 3.10 3.11 3.12 3.13; do - echo "Installing dependencies for Python $version" - pyenv shell $version - python -m pip install --upgrade pip - python -m pip install setuptools tox pandas pyarrow twine psutil deltalake wheel - pyenv shell --unset - done - - name: Install clang++ for Ubuntu - run: | - pwd - uname -a - wget https://apt.llvm.org/llvm.sh - chmod +x llvm.sh - sudo ./llvm.sh 19 - which clang++-19 - clang++-19 --version - sudo apt-get install -y make cmake ccache ninja-build yasm gawk wget - ccache -s - - name: Update git - run: | - sudo add-apt-repository ppa:git-core/ppa -y - sudo apt-get update - sudo apt-get install -y git - git --version - - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - name: Update submodules - run: | - git submodule update --init --recursive --jobs 4 - - name: ccache - uses: hendrikmuhs/ccache-action@v1.2 - with: - key: ubuntu-22.04-x86_64 - max-size: 5G - append-timestamp: true - - name: remove old clang and link clang-19 to clang - run: | - sudo rm -f /usr/bin/clang || true - sudo ln -s /usr/bin/clang-19 /usr/bin/clang - sudo rm -f /usr/bin/clang++ || true - sudo ln -s /usr/bin/clang++-19 /usr/bin/clang++ - which clang++ - clang++ --version - - name: Run chdb/build.sh - timeout-minutes: 600 - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - pyenv shell 3.8 - export CC=/usr/bin/clang - export CXX=/usr/bin/clang++ - bash ./chdb/build.sh - pyenv shell 3.8 - bash -x ./chdb/test_smoke.sh - continue-on-error: false - - name: Run libchdb stub in examples dir - run: | - bash -x ./examples/runStub.sh - - name: Check ccache statistics - run: | - ccache -s - ls -lh chdb - df -h - - name: Build wheels - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - export CC=/usr/bin/clang - export CXX=/usr/bin/clang++ - pyenv shell 3.8 - make wheel - - name: Install patchelf from github - run: | - wget https://github.com/NixOS/patchelf/releases/download/0.18.0/patchelf-0.18.0-x86_64.tar.gz -O patchelf.tar.gz - tar -xvf patchelf.tar.gz - sudo cp bin/patchelf /usr/bin/ - sudo chmod +x /usr/bin/patchelf - patchelf --version - - name: Audit wheels - run: | - python3 -m pip install auditwheel - auditwheel -v repair -w dist/ --plat manylinux2014_x86_64 dist/*.whl - continue-on-error: false - - name: Show files - run: | - sudo rm -f dist/*-linux_x86_64.whl - ls -lh dist - shell: bash - - name: Test wheel on all Python versions - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - for version in 3.8 3.9 3.10 3.11 3.12 3.13; do - echo "Testing chdb on Python $version" - pyenv shell $version - python -m pip install dist/*.whl --force-reinstall - python -c "import chdb; res = chdb.query('select 1112222222,555', 'CSV'); print(f'Python $version: {res}')" - make test - pyenv shell --unset - done - continue-on-error: false - - name: Upload wheels to release - if: startsWith(github.ref, 'refs/tags/v') - run: | - gh release upload ${{ github.ref_name }} dist/*.whl --clobber - env: - GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} - - name: Packege libchdb.so - run: | - cp programs/local/chdb.h chdb.h - tar -czvf linux-x86_64-libchdb.tar.gz libchdb.so chdb.h - - name: Upload libchdb.so to release - if: startsWith(github.ref, 'refs/tags/v') - run: | - gh release upload ${{ github.ref_name }} linux-x86_64-libchdb.tar.gz --clobber - env: - GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} - - uses: actions/upload-artifact@v4 - with: - name: chdb-artifacts-linux-x86_64 - path: | - ./dist/*.whl - ./linux-x86_64-libchdb.tar.gz - overwrite: true - - name: Upload pypi - if: startsWith(github.ref, 'refs/tags/v') - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - pyenv shell 3.8 - python -m twine upload dist/*.whl - env: - TWINE_USERNAME: __token__ - TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} +# # Verify installations +# echo "Installed versions:" +# pyenv versions +# - name: Verify pyenv installations +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# echo "Installed Python versions:" +# pyenv versions +# echo "" +# echo "Verifying all required Python versions are available:" +# for version in 3.8 3.9 3.10 3.11 3.12 3.13; do +# if ! pyenv versions --bare | grep -q "^$version"; then +# echo "ERROR: Python $version is not installed!" +# exit 1 +# fi +# echo "✓ Python $version is installed" +# done +# echo "All Python versions verified successfully!" +# - name: Install dependencies for all Python versions +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# for version in 3.8 3.9 3.10 3.11 3.12 3.13; do +# echo "Installing dependencies for Python $version" +# pyenv shell $version +# python -m pip install --upgrade pip +# python -m pip install setuptools tox pandas pyarrow twine psutil deltalake wheel +# pyenv shell --unset +# done +# - name: Install clang++ for Ubuntu +# run: | +# pwd +# uname -a +# wget https://apt.llvm.org/llvm.sh +# chmod +x llvm.sh +# sudo ./llvm.sh 19 +# which clang++-19 +# clang++-19 --version +# sudo apt-get install -y make cmake ccache ninja-build yasm gawk wget +# ccache -s +# - name: Update git +# run: | +# sudo add-apt-repository ppa:git-core/ppa -y +# sudo apt-get update +# sudo apt-get install -y git +# git --version +# - uses: actions/checkout@v3 +# with: +# fetch-depth: 0 +# - name: Update submodules +# run: | +# git submodule update --init --recursive --jobs 4 +# - name: ccache +# uses: hendrikmuhs/ccache-action@v1.2 +# with: +# key: ubuntu-22.04-x86_64 +# max-size: 5G +# append-timestamp: true +# - name: remove old clang and link clang-19 to clang +# run: | +# sudo rm -f /usr/bin/clang || true +# sudo ln -s /usr/bin/clang-19 /usr/bin/clang +# sudo rm -f /usr/bin/clang++ || true +# sudo ln -s /usr/bin/clang++-19 /usr/bin/clang++ +# which clang++ +# clang++ --version +# - name: Run chdb/build.sh +# timeout-minutes: 600 +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# pyenv shell 3.8 +# export CC=/usr/bin/clang +# export CXX=/usr/bin/clang++ +# bash ./chdb/build.sh +# pyenv shell 3.8 +# bash -x ./chdb/test_smoke.sh +# continue-on-error: false +# - name: Run libchdb stub in examples dir +# run: | +# bash -x ./examples/runStub.sh +# - name: Check ccache statistics +# run: | +# ccache -s +# ls -lh chdb +# df -h +# - name: Build wheels +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# export CC=/usr/bin/clang +# export CXX=/usr/bin/clang++ +# pyenv shell 3.8 +# make wheel +# - name: Install patchelf from github +# run: | +# wget https://github.com/NixOS/patchelf/releases/download/0.18.0/patchelf-0.18.0-x86_64.tar.gz -O patchelf.tar.gz +# tar -xvf patchelf.tar.gz +# sudo cp bin/patchelf /usr/bin/ +# sudo chmod +x /usr/bin/patchelf +# patchelf --version +# - name: Audit wheels +# run: | +# python3 -m pip install auditwheel +# auditwheel -v repair -w dist/ --plat manylinux2014_x86_64 dist/*.whl +# continue-on-error: false +# - name: Show files +# run: | +# sudo rm -f dist/*-linux_x86_64.whl +# ls -lh dist +# shell: bash +# - name: Test wheel on all Python versions +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# for version in 3.8 3.9 3.10 3.11 3.12 3.13; do +# echo "Testing chdb on Python $version" +# pyenv shell $version +# python -m pip install dist/*.whl --force-reinstall +# python -c "import chdb; res = chdb.query('select 1112222222,555', 'CSV'); print(f'Python $version: {res}')" +# make test +# pyenv shell --unset +# done +# continue-on-error: false +# - name: Upload wheels to release +# if: startsWith(github.ref, 'refs/tags/v') +# run: | +# gh release upload ${{ github.ref_name }} dist/*.whl --clobber +# env: +# GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} +# - name: Packege libchdb.so +# run: | +# cp programs/local/chdb.h chdb.h +# tar -czvf linux-x86_64-libchdb.tar.gz libchdb.so chdb.h +# - name: Upload libchdb.so to release +# if: startsWith(github.ref, 'refs/tags/v') +# run: | +# gh release upload ${{ github.ref_name }} linux-x86_64-libchdb.tar.gz --clobber +# env: +# GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} +# - uses: actions/upload-artifact@v4 +# with: +# name: chdb-artifacts-linux-x86_64 +# path: | +# ./dist/*.whl +# ./linux-x86_64-libchdb.tar.gz +# overwrite: true +# - name: Upload pypi +# if: startsWith(github.ref, 'refs/tags/v') +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# pyenv shell 3.8 +# python -m twine upload dist/*.whl +# env: +# TWINE_USERNAME: __token__ +# TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} diff --git a/.github/workflows/build_macos_arm64_wheels.yml b/.github/workflows/build_macos_arm64_wheels.yml index f1cfbcb5222..db80fc766be 100644 --- a/.github/workflows/build_macos_arm64_wheels.yml +++ b/.github/workflows/build_macos_arm64_wheels.yml @@ -1,208 +1,208 @@ -name: Build macOS arm64 +# name: Build macOS arm64 -on: - workflow_dispatch: - inputs: - TAG_NAME: - description: 'Release Version Tag' - required: true - release: - types: [created] - push: - branches: - - main - paths-ignore: - - '**/*.md' - pull_request: - branches: - - main - paths-ignore: - - '**/*.md' +# on: +# workflow_dispatch: +# inputs: +# TAG_NAME: +# description: 'Release Version Tag' +# required: true +# release: +# types: [created] +# push: +# branches: +# - main +# paths-ignore: +# - '**/*.md' +# pull_request: +# branches: +# - main +# paths-ignore: +# - '**/*.md' -jobs: - build_universal_wheel: - name: Build Universal Wheel (macOS ARM64) - runs-on: macos-13-xlarge - steps: - - name: Setup pyenv - run: | - curl https://pyenv.run | bash - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" +# jobs: +# build_universal_wheel: +# name: Build Universal Wheel (macOS ARM64) +# runs-on: macos-13-xlarge +# steps: +# - name: Setup pyenv +# run: | +# curl https://pyenv.run | bash +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" - pyenv install 3.8:latest - pyenv install 3.9:latest - pyenv install 3.10:latest - pyenv install 3.11:latest - pyenv install 3.12:latest - pyenv install 3.13:latest - pyenv global 3.8 3.9 3.10 3.11 3.12 3.13 +# pyenv install 3.8:latest +# pyenv install 3.9:latest +# pyenv install 3.10:latest +# pyenv install 3.11:latest +# pyenv install 3.12:latest +# pyenv install 3.13:latest +# pyenv global 3.8 3.9 3.10 3.11 3.12 3.13 - echo "Installed versions:" - pyenv versions - - name: Verify pyenv installations - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - echo "Installed Python versions:" - pyenv versions - echo "" - echo "Verifying all required Python versions are available:" - for version in 3.8 3.9 3.10 3.11 3.12 3.13; do - if ! pyenv versions --bare | grep -q "^$version"; then - echo "ERROR: Python $version is not installed!" - exit 1 - fi - echo "✓ Python $version is installed" - done - echo "All Python versions verified successfully!" - - name: Install dependencies for all Python versions - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - for version in 3.8 3.9 3.10 3.11 3.12 3.13; do - echo "Installing dependencies for Python $version" - pyenv shell $version - python -m pip install --upgrade pip - python -m pip install setuptools wheel tox pandas pyarrow twine psutil deltalake wheel>=0.40.0 - pyenv shell --unset - done - - name: Remove /usr/local/bin/python3 - run: | - sudo rm -f /usr/local/bin/python3 - - name: Install clang++ for macOS - run: | - pwd - uname -a - export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 - brew update - brew install ca-certificates lz4 mpdecimal openssl@3 readline sqlite xz z3 zstd - brew install --ignore-dependencies llvm@19 - brew install git ccache ninja libtool gettext gcc binutils grep findutils nasm - cd /usr/local/opt/ && sudo rm -f llvm && sudo ln -sf llvm@19 llvm - export PATH=$(brew --prefix llvm@19)/bin:$PATH - which clang++ - clang++ --version - ccache -s - - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - name: Update submodules - run: | - git submodule update --init --recursive --jobs 4 - - name: ccache - uses: hendrikmuhs/ccache-action@v1.2 - with: - key: macos-13-xlarge - max-size: 5G - append-timestamp: true - - name: Run chdb/build.sh - timeout-minutes: 600 - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - pyenv shell 3.8 - export PATH=$(brew --prefix llvm@19)/bin:/usr/local/opt/grep/libexec/gnubin:/usr/local/opt/binutils/bin:$PATH:/usr/local/opt/findutils/libexec/gnubin - export CC=$(brew --prefix llvm@19)/bin/clang - export CXX=$(brew --prefix llvm@19)/bin/clang++ - bash gen_manifest.sh - bash ./chdb/build.sh - pyenv shell 3.8 - bash -x ./chdb/test_smoke.sh - continue-on-error: false - - name: Debug libchdb - run: | - ls -lh - llvm-nm libchdb.so | grep query_stable || true - echo "Global Symbol in libchdb.so:" - llvm-nm -g libchdb.so || true - echo "Global Symbol in libclickhouse-local-chdb.a:" - llvm-nm -g buildlib/programs/local/libclickhouse-local-chdb.a || true - echo "Global Symbol in libclickhouse-local-lib.a:" - llvm-nm -g buildlib/programs/local/libclickhouse-local-lib.a || true - echo "pychdb_cmd.sh:" - cat buildlib/pychdb_cmd.sh - echo "libchdb_cmd.sh:" - cat buildlib/libchdb_cmd.sh - - name: Run libchdb stub in examples dir - run: | - bash -x ./examples/runStub.sh - - name: Keep killall ccache and wait for ccache to finish - if: always() - run: | - sleep 60 - while ps -ef | grep ccache | grep -v grep; do \ - killall ccache; \ - sleep 10; \ - done - - name: Check ccache statistics - run: | - ccache -s - ls -lh chdb - df -h - env: - CIBW_ENVIRONMENT_MACOS: "PATH=$(brew --prefix llvm@19)/bin:/usr/local/opt/grep/libexec/gnubin:/usr/local/opt/binutils/bin:$PATH:/usr/local/opt/findutils/libexec/gnubin CC=$(brew --prefix llvm@19)/bin/clang CXX=$(brew --prefix llvm@19)/bin/clang++" - - name: Build wheels - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - export PATH=$(brew --prefix llvm@19)/bin:/usr/local/opt/grep/libexec/gnubin:/usr/local/opt/binutils/bin:$PATH:/usr/local/opt/findutils/libexec/gnubin - export CC=$(brew --prefix llvm@19)/bin/clang - export CXX=$(brew --prefix llvm@19)/bin/clang++ - pyenv shell 3.8 - make wheel - - name: Fix wheel platform tag - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - pyenv shell 3.8 - python -m wheel tags --platform-tag=macosx_11_0_arm64 --remove dist/*.whl - - name: Test wheel on all Python versions - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - for version in 3.8 3.9 3.10 3.11 3.12 3.13; do - echo "Testing chdb on Python $version" - pyenv shell $version - python -m pip install dist/*.whl --force-reinstall - python -c "import chdb; res = chdb.query('select 1112222222,555', 'CSV'); print(f'Python $version: {res}')" - make test - pyenv shell --unset - done - continue-on-error: false - - name: Show files - run: ls -lh dist - shell: bash - - name: Upload wheels to release - if: startsWith(github.ref, 'refs/tags/v') - run: | - gh release upload ${{ github.ref_name }} dist/*.whl --clobber - env: - GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} - - name: Packege libchdb.so - run: | - cp programs/local/chdb.h chdb.h - tar -czvf macos-arm64-libchdb.tar.gz libchdb.so chdb.h - - name: Upload libchdb.so to release - if: startsWith(github.ref, 'refs/tags/v') - run: | - gh release upload ${{ github.ref_name }} macos-arm64-libchdb.tar.gz --clobber - env: - GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} - - uses: actions/upload-artifact@v4 - with: - name: chdb-artifacts-macos-arm64 - path: | - ./dist/*.whl - ./macos-arm64-libchdb.tar.gz - overwrite: true - - name: Upload pypi - if: startsWith(github.ref, 'refs/tags/v') - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - pyenv shell 3.8 - python -m twine upload dist/*.whl - env: - TWINE_USERNAME: __token__ - TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} +# echo "Installed versions:" +# pyenv versions +# - name: Verify pyenv installations +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# echo "Installed Python versions:" +# pyenv versions +# echo "" +# echo "Verifying all required Python versions are available:" +# for version in 3.8 3.9 3.10 3.11 3.12 3.13; do +# if ! pyenv versions --bare | grep -q "^$version"; then +# echo "ERROR: Python $version is not installed!" +# exit 1 +# fi +# echo "✓ Python $version is installed" +# done +# echo "All Python versions verified successfully!" +# - name: Install dependencies for all Python versions +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# for version in 3.8 3.9 3.10 3.11 3.12 3.13; do +# echo "Installing dependencies for Python $version" +# pyenv shell $version +# python -m pip install --upgrade pip +# python -m pip install setuptools wheel tox pandas pyarrow twine psutil deltalake wheel>=0.40.0 +# pyenv shell --unset +# done +# - name: Remove /usr/local/bin/python3 +# run: | +# sudo rm -f /usr/local/bin/python3 +# - name: Install clang++ for macOS +# run: | +# pwd +# uname -a +# export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 +# brew update +# brew install ca-certificates lz4 mpdecimal openssl@3 readline sqlite xz z3 zstd +# brew install --ignore-dependencies llvm@19 +# brew install git ccache ninja libtool gettext gcc binutils grep findutils nasm +# cd /usr/local/opt/ && sudo rm -f llvm && sudo ln -sf llvm@19 llvm +# export PATH=$(brew --prefix llvm@19)/bin:$PATH +# which clang++ +# clang++ --version +# ccache -s +# - uses: actions/checkout@v3 +# with: +# fetch-depth: 0 +# - name: Update submodules +# run: | +# git submodule update --init --recursive --jobs 4 +# - name: ccache +# uses: hendrikmuhs/ccache-action@v1.2 +# with: +# key: macos-13-xlarge +# max-size: 5G +# append-timestamp: true +# - name: Run chdb/build.sh +# timeout-minutes: 600 +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# pyenv shell 3.8 +# export PATH=$(brew --prefix llvm@19)/bin:/usr/local/opt/grep/libexec/gnubin:/usr/local/opt/binutils/bin:$PATH:/usr/local/opt/findutils/libexec/gnubin +# export CC=$(brew --prefix llvm@19)/bin/clang +# export CXX=$(brew --prefix llvm@19)/bin/clang++ +# bash gen_manifest.sh +# bash ./chdb/build.sh +# pyenv shell 3.8 +# bash -x ./chdb/test_smoke.sh +# continue-on-error: false +# - name: Debug libchdb +# run: | +# ls -lh +# llvm-nm libchdb.so | grep query_stable || true +# echo "Global Symbol in libchdb.so:" +# llvm-nm -g libchdb.so || true +# echo "Global Symbol in libclickhouse-local-chdb.a:" +# llvm-nm -g buildlib/programs/local/libclickhouse-local-chdb.a || true +# echo "Global Symbol in libclickhouse-local-lib.a:" +# llvm-nm -g buildlib/programs/local/libclickhouse-local-lib.a || true +# echo "pychdb_cmd.sh:" +# cat buildlib/pychdb_cmd.sh +# echo "libchdb_cmd.sh:" +# cat buildlib/libchdb_cmd.sh +# - name: Run libchdb stub in examples dir +# run: | +# bash -x ./examples/runStub.sh +# - name: Keep killall ccache and wait for ccache to finish +# if: always() +# run: | +# sleep 60 +# while ps -ef | grep ccache | grep -v grep; do \ +# killall ccache; \ +# sleep 10; \ +# done +# - name: Check ccache statistics +# run: | +# ccache -s +# ls -lh chdb +# df -h +# env: +# CIBW_ENVIRONMENT_MACOS: "PATH=$(brew --prefix llvm@19)/bin:/usr/local/opt/grep/libexec/gnubin:/usr/local/opt/binutils/bin:$PATH:/usr/local/opt/findutils/libexec/gnubin CC=$(brew --prefix llvm@19)/bin/clang CXX=$(brew --prefix llvm@19)/bin/clang++" +# - name: Build wheels +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# export PATH=$(brew --prefix llvm@19)/bin:/usr/local/opt/grep/libexec/gnubin:/usr/local/opt/binutils/bin:$PATH:/usr/local/opt/findutils/libexec/gnubin +# export CC=$(brew --prefix llvm@19)/bin/clang +# export CXX=$(brew --prefix llvm@19)/bin/clang++ +# pyenv shell 3.8 +# make wheel +# - name: Fix wheel platform tag +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# pyenv shell 3.8 +# python -m wheel tags --platform-tag=macosx_11_0_arm64 --remove dist/*.whl +# - name: Test wheel on all Python versions +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# for version in 3.8 3.9 3.10 3.11 3.12 3.13; do +# echo "Testing chdb on Python $version" +# pyenv shell $version +# python -m pip install dist/*.whl --force-reinstall +# python -c "import chdb; res = chdb.query('select 1112222222,555', 'CSV'); print(f'Python $version: {res}')" +# make test +# pyenv shell --unset +# done +# continue-on-error: false +# - name: Show files +# run: ls -lh dist +# shell: bash +# - name: Upload wheels to release +# if: startsWith(github.ref, 'refs/tags/v') +# run: | +# gh release upload ${{ github.ref_name }} dist/*.whl --clobber +# env: +# GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} +# - name: Packege libchdb.so +# run: | +# cp programs/local/chdb.h chdb.h +# tar -czvf macos-arm64-libchdb.tar.gz libchdb.so chdb.h +# - name: Upload libchdb.so to release +# if: startsWith(github.ref, 'refs/tags/v') +# run: | +# gh release upload ${{ github.ref_name }} macos-arm64-libchdb.tar.gz --clobber +# env: +# GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} +# - uses: actions/upload-artifact@v4 +# with: +# name: chdb-artifacts-macos-arm64 +# path: | +# ./dist/*.whl +# ./macos-arm64-libchdb.tar.gz +# overwrite: true +# - name: Upload pypi +# if: startsWith(github.ref, 'refs/tags/v') +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# pyenv shell 3.8 +# python -m twine upload dist/*.whl +# env: +# TWINE_USERNAME: __token__ +# TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} diff --git a/.github/workflows/build_macos_x86_wheels.yml b/.github/workflows/build_macos_x86_wheels.yml index d1376a44228..d851dd5dba5 100644 --- a/.github/workflows/build_macos_x86_wheels.yml +++ b/.github/workflows/build_macos_x86_wheels.yml @@ -1,208 +1,208 @@ -name: Build macOS X86 +# name: Build macOS X86 -on: - workflow_dispatch: - inputs: - TAG_NAME: - description: 'Release Version Tag' - required: true - release: - types: [created] - push: - branches: - - main - paths-ignore: - - '**/*.md' - pull_request: - branches: - - main - paths-ignore: - - '**/*.md' +# on: +# workflow_dispatch: +# inputs: +# TAG_NAME: +# description: 'Release Version Tag' +# required: true +# release: +# types: [created] +# push: +# branches: +# - main +# paths-ignore: +# - '**/*.md' +# pull_request: +# branches: +# - main +# paths-ignore: +# - '**/*.md' -jobs: - build_universal_wheel: - name: Build Universal Wheel (macOS x86_64) - runs-on: macos-13 - steps: - - name: Setup pyenv - run: | - curl https://pyenv.run | bash - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" +# jobs: +# build_universal_wheel: +# name: Build Universal Wheel (macOS x86_64) +# runs-on: macos-13 +# steps: +# - name: Setup pyenv +# run: | +# curl https://pyenv.run | bash +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" - pyenv install 3.8:latest - pyenv install 3.9:latest - pyenv install 3.10:latest - pyenv install 3.11:latest - pyenv install 3.12:latest - pyenv install 3.13:latest - pyenv global 3.8 3.9 3.10 3.11 3.12 3.13 +# pyenv install 3.8:latest +# pyenv install 3.9:latest +# pyenv install 3.10:latest +# pyenv install 3.11:latest +# pyenv install 3.12:latest +# pyenv install 3.13:latest +# pyenv global 3.8 3.9 3.10 3.11 3.12 3.13 - echo "Installed versions:" - pyenv versions - - name: Verify pyenv installations - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - echo "Installed Python versions:" - pyenv versions - echo "" - echo "Verifying all required Python versions are available:" - for version in 3.8 3.9 3.10 3.11 3.12 3.13; do - if ! pyenv versions --bare | grep -q "^$version"; then - echo "ERROR: Python $version is not installed!" - exit 1 - fi - echo "✓ Python $version is installed" - done - echo "All Python versions verified successfully!" - - name: Install dependencies for all Python versions - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - for version in 3.8 3.9 3.10 3.11 3.12 3.13; do - echo "Installing dependencies for Python $version" - pyenv shell $version - python -m pip install --upgrade pip - python -m pip install setuptools tox pandas pyarrow twine psutil deltalake wheel>=0.40.0 - pyenv shell --unset - done - - name: Remove /usr/local/bin/python3 - run: | - sudo rm -f /usr/local/bin/python3 - - name: Install clang++ for macOS - run: | - pwd - uname -a - export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 - brew update - brew install ca-certificates lz4 mpdecimal openssl@3 readline sqlite xz z3 zstd - brew install --ignore-dependencies llvm@19 - brew install git ccache ninja libtool gettext gcc binutils grep findutils nasm - cd /usr/local/opt/ && sudo rm -f llvm && sudo ln -sf llvm@19 llvm - export PATH=$(brew --prefix llvm@19)/bin:$PATH - which clang++ - clang++ --version - ccache -s - - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - name: Update submodules - run: | - git submodule update --init --recursive --jobs 4 - - name: ccache - uses: hendrikmuhs/ccache-action@v1.2 - with: - key: macos-13-x86_64 - max-size: 5G - append-timestamp: true - - name: Run chdb/build.sh - timeout-minutes: 600 - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - pyenv shell 3.8 - export PATH=$(brew --prefix llvm@19)/bin:/usr/local/opt/grep/libexec/gnubin:/usr/local/opt/binutils/bin:$PATH:/usr/local/opt/findutils/libexec/gnubin - export CC=$(brew --prefix llvm@19)/bin/clang - export CXX=$(brew --prefix llvm@19)/bin/clang++ - bash gen_manifest.sh - bash ./chdb/build.sh - pyenv shell 3.8 - bash -x ./chdb/test_smoke.sh - continue-on-error: false - - name: Debug libchdb - run: | - ls -lh - llvm-nm libchdb.so | grep query_stable || true - echo "Global Symbol in libchdb.so:" - llvm-nm -g libchdb.so || true - echo "Global Symbol in libclickhouse-local-chdb.a:" - llvm-nm -g buildlib/programs/local/libclickhouse-local-chdb.a || true - echo "Global Symbol in libclickhouse-local-lib.a:" - llvm-nm -g buildlib/programs/local/libclickhouse-local-lib.a || true - echo "pychdb_cmd.sh:" - cat buildlib/pychdb_cmd.sh - echo "libchdb_cmd.sh:" - cat buildlib/libchdb_cmd.sh - - name: Run libchdb stub in examples dir - run: | - bash -x ./examples/runStub.sh - - name: Keep killall ccache and wait for ccache to finish - if: always() - run: | - sleep 60 - while ps -ef | grep ccache | grep -v grep; do \ - killall ccache; \ - sleep 10; \ - done - - name: Check ccache statistics - run: | - ccache -s - ls -lh chdb - df -h - env: - CIBW_ENVIRONMENT_MACOS: "PATH=$(brew --prefix llvm@19)/bin:/usr/local/opt/grep/libexec/gnubin:/usr/local/opt/binutils/bin:$PATH:/usr/local/opt/findutils/libexec/gnubin CC=$(brew --prefix llvm@19)/bin/clang CXX=$(brew --prefix llvm@19)/bin/clang++" - - name: Build wheels - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - export PATH=$(brew --prefix llvm@19)/bin:/usr/local/opt/grep/libexec/gnubin:/usr/local/opt/binutils/bin:$PATH:/usr/local/opt/findutils/libexec/gnubin - export CC=$(brew --prefix llvm@19)/bin/clang - export CXX=$(brew --prefix llvm@19)/bin/clang++ - pyenv shell 3.8 - make wheel - - name: Fix wheel platform tag - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - pyenv shell 3.8 - python -m wheel tags --platform-tag=macosx_10_15_x86_64 --remove dist/*.whl - - name: Test wheel on all Python versions - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - for version in 3.8 3.9 3.10 3.11 3.12 3.13; do - echo "Testing chdb on Python $version" - pyenv shell $version - python -m pip install dist/*.whl --force-reinstall - python -c "import chdb; res = chdb.query('select 1112222222,555', 'CSV'); print(f'Python $version: {res}')" - make test - pyenv shell --unset - done - continue-on-error: false - - name: Show files - run: ls -lh dist - shell: bash - - name: Upload wheels to release - if: startsWith(github.ref, 'refs/tags/v') - run: | - gh release upload ${{ github.ref_name }} dist/*.whl --clobber - env: - GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} - - name: Packege libchdb.so - run: | - cp programs/local/chdb.h chdb.h - tar -czvf macos-x86_64-libchdb.tar.gz libchdb.so chdb.h - - name: Upload libchdb.so to release - if: startsWith(github.ref, 'refs/tags/v') - run: | - gh release upload ${{ github.ref_name }} macos-x86_64-libchdb.tar.gz --clobber - env: - GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} - - uses: actions/upload-artifact@v4 - with: - name: chdb-artifacts-macos-x86_64 - path: | - ./dist/*.whl - ./macos-x86_64-libchdb.tar.gz - overwrite: true - - name: Upload pypi - if: startsWith(github.ref, 'refs/tags/v') - run: | - export PATH="$HOME/.pyenv/bin:$PATH" - eval "$(pyenv init -)" - pyenv shell 3.8 - python -m twine upload dist/*.whl - env: - TWINE_USERNAME: __token__ - TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} +# echo "Installed versions:" +# pyenv versions +# - name: Verify pyenv installations +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# echo "Installed Python versions:" +# pyenv versions +# echo "" +# echo "Verifying all required Python versions are available:" +# for version in 3.8 3.9 3.10 3.11 3.12 3.13; do +# if ! pyenv versions --bare | grep -q "^$version"; then +# echo "ERROR: Python $version is not installed!" +# exit 1 +# fi +# echo "✓ Python $version is installed" +# done +# echo "All Python versions verified successfully!" +# - name: Install dependencies for all Python versions +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# for version in 3.8 3.9 3.10 3.11 3.12 3.13; do +# echo "Installing dependencies for Python $version" +# pyenv shell $version +# python -m pip install --upgrade pip +# python -m pip install setuptools tox pandas pyarrow twine psutil deltalake wheel>=0.40.0 +# pyenv shell --unset +# done +# - name: Remove /usr/local/bin/python3 +# run: | +# sudo rm -f /usr/local/bin/python3 +# - name: Install clang++ for macOS +# run: | +# pwd +# uname -a +# export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 +# brew update +# brew install ca-certificates lz4 mpdecimal openssl@3 readline sqlite xz z3 zstd +# brew install --ignore-dependencies llvm@19 +# brew install git ccache ninja libtool gettext gcc binutils grep findutils nasm +# cd /usr/local/opt/ && sudo rm -f llvm && sudo ln -sf llvm@19 llvm +# export PATH=$(brew --prefix llvm@19)/bin:$PATH +# which clang++ +# clang++ --version +# ccache -s +# - uses: actions/checkout@v3 +# with: +# fetch-depth: 0 +# - name: Update submodules +# run: | +# git submodule update --init --recursive --jobs 4 +# - name: ccache +# uses: hendrikmuhs/ccache-action@v1.2 +# with: +# key: macos-13-x86_64 +# max-size: 5G +# append-timestamp: true +# - name: Run chdb/build.sh +# timeout-minutes: 600 +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# pyenv shell 3.8 +# export PATH=$(brew --prefix llvm@19)/bin:/usr/local/opt/grep/libexec/gnubin:/usr/local/opt/binutils/bin:$PATH:/usr/local/opt/findutils/libexec/gnubin +# export CC=$(brew --prefix llvm@19)/bin/clang +# export CXX=$(brew --prefix llvm@19)/bin/clang++ +# bash gen_manifest.sh +# bash ./chdb/build.sh +# pyenv shell 3.8 +# bash -x ./chdb/test_smoke.sh +# continue-on-error: false +# - name: Debug libchdb +# run: | +# ls -lh +# llvm-nm libchdb.so | grep query_stable || true +# echo "Global Symbol in libchdb.so:" +# llvm-nm -g libchdb.so || true +# echo "Global Symbol in libclickhouse-local-chdb.a:" +# llvm-nm -g buildlib/programs/local/libclickhouse-local-chdb.a || true +# echo "Global Symbol in libclickhouse-local-lib.a:" +# llvm-nm -g buildlib/programs/local/libclickhouse-local-lib.a || true +# echo "pychdb_cmd.sh:" +# cat buildlib/pychdb_cmd.sh +# echo "libchdb_cmd.sh:" +# cat buildlib/libchdb_cmd.sh +# - name: Run libchdb stub in examples dir +# run: | +# bash -x ./examples/runStub.sh +# - name: Keep killall ccache and wait for ccache to finish +# if: always() +# run: | +# sleep 60 +# while ps -ef | grep ccache | grep -v grep; do \ +# killall ccache; \ +# sleep 10; \ +# done +# - name: Check ccache statistics +# run: | +# ccache -s +# ls -lh chdb +# df -h +# env: +# CIBW_ENVIRONMENT_MACOS: "PATH=$(brew --prefix llvm@19)/bin:/usr/local/opt/grep/libexec/gnubin:/usr/local/opt/binutils/bin:$PATH:/usr/local/opt/findutils/libexec/gnubin CC=$(brew --prefix llvm@19)/bin/clang CXX=$(brew --prefix llvm@19)/bin/clang++" +# - name: Build wheels +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# export PATH=$(brew --prefix llvm@19)/bin:/usr/local/opt/grep/libexec/gnubin:/usr/local/opt/binutils/bin:$PATH:/usr/local/opt/findutils/libexec/gnubin +# export CC=$(brew --prefix llvm@19)/bin/clang +# export CXX=$(brew --prefix llvm@19)/bin/clang++ +# pyenv shell 3.8 +# make wheel +# - name: Fix wheel platform tag +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# pyenv shell 3.8 +# python -m wheel tags --platform-tag=macosx_10_15_x86_64 --remove dist/*.whl +# - name: Test wheel on all Python versions +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# for version in 3.8 3.9 3.10 3.11 3.12 3.13; do +# echo "Testing chdb on Python $version" +# pyenv shell $version +# python -m pip install dist/*.whl --force-reinstall +# python -c "import chdb; res = chdb.query('select 1112222222,555', 'CSV'); print(f'Python $version: {res}')" +# make test +# pyenv shell --unset +# done +# continue-on-error: false +# - name: Show files +# run: ls -lh dist +# shell: bash +# - name: Upload wheels to release +# if: startsWith(github.ref, 'refs/tags/v') +# run: | +# gh release upload ${{ github.ref_name }} dist/*.whl --clobber +# env: +# GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} +# - name: Packege libchdb.so +# run: | +# cp programs/local/chdb.h chdb.h +# tar -czvf macos-x86_64-libchdb.tar.gz libchdb.so chdb.h +# - name: Upload libchdb.so to release +# if: startsWith(github.ref, 'refs/tags/v') +# run: | +# gh release upload ${{ github.ref_name }} macos-x86_64-libchdb.tar.gz --clobber +# env: +# GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} +# - uses: actions/upload-artifact@v4 +# with: +# name: chdb-artifacts-macos-x86_64 +# path: | +# ./dist/*.whl +# ./macos-x86_64-libchdb.tar.gz +# overwrite: true +# - name: Upload pypi +# if: startsWith(github.ref, 'refs/tags/v') +# run: | +# export PATH="$HOME/.pyenv/bin:$PATH" +# eval "$(pyenv init -)" +# pyenv shell 3.8 +# python -m twine upload dist/*.whl +# env: +# TWINE_USERNAME: __token__ +# TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} diff --git a/chdb/build.sh b/chdb/build.sh index 719bc20127e..886b7a95d40 100755 --- a/chdb/build.sh +++ b/chdb/build.sh @@ -61,21 +61,21 @@ elif [ "$(uname)" == "Linux" ]; then if [ "$(uname -m)" == "x86_64" ]; then CPU_FEATURES="-DENABLE_AVX=1 -DENABLE_AVX2=0" LLVM="-DENABLE_EMBEDDED_COMPILER=1 -DENABLE_DWARF_PARSER=1" - RUST_FEATURES="-DENABLE_RUST=1 -DENABLE_DELTA_KERNEL_RS=1" - CORROSION_CMAKE_FILE="${PROJ_DIR}/contrib/corrosion-cmake/CMakeLists.txt" - if [ -f "${CORROSION_CMAKE_FILE}" ]; then - if ! grep -q 'OPENSSL_NO_DEPRECATED_3_0' "${CORROSION_CMAKE_FILE}"; then - echo "Modifying corrosion CMakeLists.txt for Linux x86_64..." - ${SED_INPLACE} 's/corrosion_set_env_vars(${target_name} "RUSTFLAGS=${RUSTFLAGS}")/corrosion_set_env_vars(${target_name} "RUSTFLAGS=${RUSTFLAGS} --cfg osslconf=\\\"OPENSSL_NO_DEPRECATED_3_0\\\"")/g' "${CORROSION_CMAKE_FILE}" - else - echo "corrosion CMakeLists.txt already modified, skipping..." - fi + else + CPU_FEATURES="-DENABLE_AVX=0 -DENABLE_AVX2=0" + LLVM="-DENABLE_EMBEDDED_COMPILER=0 -DENABLE_DWARF_PARSER=0" + fi + RUST_FEATURES="-DENABLE_RUST=1 -DENABLE_DELTA_KERNEL_RS=1" + CORROSION_CMAKE_FILE="${PROJ_DIR}/contrib/corrosion-cmake/CMakeLists.txt" + if [ -f "${CORROSION_CMAKE_FILE}" ]; then + if ! grep -q 'OPENSSL_NO_DEPRECATED_3_0' "${CORROSION_CMAKE_FILE}"; then + echo "Modifying corrosion CMakeLists.txt for Linux x86_64..." + ${SED_INPLACE} 's/corrosion_set_env_vars(${target_name} "RUSTFLAGS=${RUSTFLAGS}")/corrosion_set_env_vars(${target_name} "RUSTFLAGS=${RUSTFLAGS} --cfg osslconf=\\\"OPENSSL_NO_DEPRECATED_3_0\\\"")/g' "${CORROSION_CMAKE_FILE}" else - echo "Warning: corrosion CMakeLists.txt not found at ${CORROSION_CMAKE_FILE}" + echo "corrosion CMakeLists.txt already modified, skipping..." fi else - CPU_FEATURES="-DENABLE_AVX=0 -DENABLE_AVX2=0 -DNO_ARMV81_OR_HIGHER=1" - LLVM="-DENABLE_EMBEDDED_COMPILER=0 -DENABLE_DWARF_PARSER=0" + echo "Warning: corrosion CMakeLists.txt not found at ${CORROSION_CMAKE_FILE}" fi else echo "OS not supported" diff --git a/tests/test_delta_lake.py b/tests/test_delta_lake.py index c89d2787341..df611cf32f3 100644 --- a/tests/test_delta_lake.py +++ b/tests/test_delta_lake.py @@ -6,7 +6,7 @@ import chdb from chdb import session -@unittest.skipUnless(sys.platform.startswith("linux") and platform.machine() in ["x86_64", "AMD64"], "Runs only in the Linux x86 environment") +@unittest.skipUnless(sys.platform.startswith("linux"), "Runs only on Linux platforms") class TestDeltaLake(unittest.TestCase): def setUp(self) -> None: return super().setUp()