From 8b4335fd83e2235794409d5bfd7a40b5bfbfa2cf Mon Sep 17 00:00:00 2001 From: WANG Xuerui Date: Thu, 20 Jun 2024 17:51:14 +0800 Subject: [PATCH] ci: build wheels for PyPy --- .github/workflows/CI.yml | 67 +++++++++++++++++++++++++++++++++++----- 1 file changed, 60 insertions(+), 7 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index e72be38..fec4b9c 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -36,11 +36,31 @@ jobs: target: s390x - runner: ubuntu-latest target: ppc64le + interpreter: ['3.x'] + include: + - runner: ubuntu-latest + target: x86_64 + interpreter: pypy3.9 + - runner: ubuntu-latest + target: x86 + interpreter: pypy3.9 + - runner: ubuntu-latest + target: aarch64 + interpreter: pypy3.9 + - runner: ubuntu-latest + target: x86_64 + interpreter: pypy3.10 + - runner: ubuntu-latest + target: x86 + interpreter: pypy3.10 + - runner: ubuntu-latest + target: aarch64 + interpreter: pypy3.10 steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: - python-version: 3.x + python-version: ${{ matrix.interpreter }} - name: Build wheels uses: PyO3/maturin-action@v1 with: @@ -51,7 +71,7 @@ jobs: - name: Upload wheels uses: actions/upload-artifact@v4 with: - name: wheels-linux-${{ matrix.platform.target }} + name: wheels-linux-${{ matrix.platform.target }}-${{ matrix.interpreter }} path: dist - name: pytest if: ${{ startsWith(matrix.platform.target, 'x86_64') }} @@ -92,11 +112,31 @@ jobs: target: aarch64 - runner: ubuntu-latest target: armv7 + interpreter: ['3.x'] + include: + - runner: ubuntu-latest + target: x86_64 + interpreter: pypy3.9 + - runner: ubuntu-latest + target: x86 + interpreter: pypy3.9 + - runner: ubuntu-latest + target: aarch64 + interpreter: pypy3.9 + - runner: ubuntu-latest + target: x86_64 + interpreter: pypy3.10 + - runner: ubuntu-latest + target: x86 + interpreter: pypy3.10 + - runner: ubuntu-latest + target: aarch64 + interpreter: pypy3.10 steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: - python-version: 3.x + python-version: ${{ matrix.interpreter }} - name: Build wheels uses: PyO3/maturin-action@v1 with: @@ -107,7 +147,7 @@ jobs: - name: Upload wheels uses: actions/upload-artifact@v4 with: - name: wheels-musllinux-${{ matrix.platform.target }} + name: wheels-musllinux-${{ matrix.platform.target }}-${{ matrix.interpreter }} path: dist - name: pytest if: ${{ startsWith(matrix.platform.target, 'x86_64') }} @@ -147,13 +187,22 @@ jobs: platform: - runner: windows-latest target: x64 + interpreter: '3.x' - runner: windows-latest target: x86 + interpreter: '3.x' + include: + - runner: windows-latest + target: x64 + interpreter: pypy3.9 + - runner: windows-latest + target: x64 + interpreter: pypy3.10 steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: - python-version: 3.x + python-version: ${{ matrix.interpreter }} architecture: ${{ matrix.platform.target }} - name: Build wheels uses: PyO3/maturin-action@v1 @@ -186,11 +235,15 @@ jobs: target: x86_64 - runner: macos-14 target: aarch64 + interpreter: + - '3.x' + - pypy3.9 + - pypy3.10 steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: - python-version: 3.x + python-version: ${{ matrix.interpreter }} - name: Build wheels uses: PyO3/maturin-action@v1 with: @@ -200,7 +253,7 @@ jobs: - name: Upload wheels uses: actions/upload-artifact@v4 with: - name: wheels-macos-${{ matrix.platform.target }} + name: wheels-macos-${{ matrix.platform.target }}-${{ matrix.interpreter }} path: dist - name: pytest run: |