diff --git a/.github/workflows/build_ft_wheel.yml b/.github/workflows/build_ft_wheel.yml index ec2a964..166c5b9 100644 --- a/.github/workflows/build_ft_wheel.yml +++ b/.github/workflows/build_ft_wheel.yml @@ -7,60 +7,100 @@ on: branches: [ 'master', 'release/v*' ] jobs: - bdist-wheels: +# bdist-wheels: +# runs-on: ${{ matrix.info.machine }} +# strategy: +# fail-fast: false +# matrix: +# info: +# - { machine: 'ubuntu-20.04', python: '3.13t', arch: 'amd64', cmd: '.github/env/Linux/bdist-wheel.sh' } +# - { machine: 'macos-13', python: '3.13t', arch: 'amd64', cmd: '.github/env/macOS/bdist-wheel.sh' } +# - { machine: 'macos-latest', python: '3.13t', arch: 'arm64', cmd: '.github/env/macOS/bdist-wheel.sh' } +# +# steps: +# - uses: actions/checkout@v4 +# +# - uses: astral-sh/setup-uv@v3 +# - run: | +# uv python install 3.13t +# uv venv --python 3.13t +# source .venv/bin/activate +# uv pip install pip +# echo $JAVA_HOME +# echo PATH=$PATH >> $GITHUB_ENV +# +# - run: ${{ matrix.info.cmd }} +# +# - uses: actions/upload-artifact@v4 +# with: +# name: build-${{ matrix.info.python }}-${{ matrix.info.machine }}-${{ matrix.info.arch }} +# path: dist/*.whl +# retention-days: 1 +# +# bdist-wheels-windows: +# runs-on: ${{ matrix.info.machine }} +# strategy: +# fail-fast: false +# matrix: +# info: +# - { machine: 'windows-2022', python: '3.13t', arch: 'amd64', cmd: '.\.github\env\Windows\bdist-wheel.ps1' } +# +# steps: +# - uses: actions/checkout@v4 +# +# - uses: astral-sh/setup-uv@v3 +# - run: | +# uv python install 3.13t +# uv venv --python 3.13t +# .venv\Scripts\Activate.ps1 +# uv pip install pip +# echo PATH=%PATH% >> $GITHUB_ENV +# ${{ matrix.info.cmd }} +# +# - uses: actions/upload-artifact@v4 +# with: +# name: build-${{ matrix.info.python }}-${{ matrix.info.machine }}-${{ matrix.info.arch }} +# path: dist/*.whl +# retention-days: 1 + + bdist-wheels-linux-aarch64: runs-on: ${{ matrix.info.machine }} strategy: fail-fast: false matrix: info: - - { machine: 'ubuntu-20.04', python: '3.13t', arch: 'amd64', cmd: '.github/env/Linux/bdist-wheel.sh' } -# - { machine: 'ubuntu-20.04', python: '3.13', arch: 'arm64', cmd: '.github/env/Linux/bdist-wheel.sh' } -# - { machine: 'windows-2022', python: '3.13', arch: 'amd64', cmd: '.\.github\env\Windows\bdist-wheel.ps1' } - - { machine: 'macos-13', python: '3.13t', arch: 'amd64', cmd: '.github/env/macOS/bdist-wheel.sh' } - - { machine: 'macos-latest', python: '3.13t', arch: 'arm64', cmd: '.github/env/macOS/bdist-wheel.sh' } - + - { machine: 'ubuntu-20.04', python: '3.13t', arch: 'aarch64', cmd: '.github/env/Linux/bdist-wheel.sh' } steps: - uses: actions/checkout@v4 - - uses: astral-sh/setup-uv@v3 - - run: | - uv python install 3.13t - uv venv --python 3.13t - source .venv/bin/activate - uv pip install pip - echo PATH=$PATH >> $GITHUB_ENV + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 - - run: ${{ matrix.info.cmd }} +# - uses: astral-sh/setup-uv@v3 +# - run: | +# uv python install 3.13t +# uv venv --python 3.13t +# source .venv/bin/activate +# uv pip install pip +# echo PATH=$PATH >> $GITHUB_ENV - - uses: actions/upload-artifact@v4 + - name: Build wheels + uses: pypa/cibuildwheel@v2.21.3 + env: + CIBW_FREE_THREADED_SUPPORT: true + CIBW_ARCHS_LINUX: "aarch64" + CIBW_BUILD: "cp313t-*" + CIBW_BEFORE_ALL_LINUX: yum install -y java-11-openjdk-devel maven + CIBW_ENVIRONMENT: JAVA_HOME=/etc/alternatives/jre_11_openjdk with: - name: build-${{ matrix.info.python }}-${{ matrix.info.machine }}-${{ matrix.info.arch }} - path: dist/*.whl - retention-days: 1 - - bdist-wheels-windows: - runs-on: ${{ matrix.info.machine }} - strategy: - fail-fast: false - matrix: - info: - - { machine: 'windows-2022', python: '3.13t', arch: 'amd64', cmd: '.\.github\env\Windows\bdist-wheel.ps1' } - - steps: - - uses: actions/checkout@v4 - - - uses: astral-sh/setup-uv@v3 - - run: | - uv python install 3.13t - uv venv --python 3.13t - .venv\Scripts\Activate.ps1 - uv pip install pip - echo PATH=%PATH% >> $GITHUB_ENV - ${{ matrix.info.cmd }} + package-dir: . + output-dir: dist +# config-file: "{package}/pyproject.toml" - uses: actions/upload-artifact@v4 with: name: build-${{ matrix.info.python }}-${{ matrix.info.machine }}-${{ matrix.info.arch }} path: dist/*.whl retention-days: 1 + diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 9b1aaf2..1388cc1 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -32,6 +32,27 @@ jobs: test-free-threaded: runs-on: ubuntu-22.04 + strategy: + matrix: + java: ['8', '11', '17', '21', '23'] steps: - uses: actions/checkout@v4 - + + - uses: astral-sh/setup-uv@v3 + - run: | + uv python install 3.13t + uv venv --python 3.13t + source .venv/bin/activate + uv pip install pip + echo PATH=$PATH >> $GITHUB_ENV + + - uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: ${{ matrix.java }} + + - run: pip install "setuptools < 72" + + - name: Run Free-threaded Test + run: python setup.py test +