Update sphinx requirement from >=4.5.0 to >=8.1.3 #645
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build Wheels | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| paths: | |
| - 'tamp/**' | |
| - 'pyproject.toml' | |
| - 'setup.py' | |
| - 'MANIFEST.in' | |
| - '.github/workflows/build_wheels.yaml' | |
| push: | |
| tags: | |
| - 'v*.*.*' | |
| paths: | |
| - 'tamp/**' | |
| - 'pyproject.toml' | |
| - 'setup.py' | |
| - 'MANIFEST.in' | |
| - '.github/workflows/build_wheels.yaml' | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build_sdist: | |
| name: 'sdist' | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest] | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 0 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v6 | |
| with: | |
| python-version: '3.12' | |
| enable-cache: true | |
| - name: Build sdist | |
| run: uv build --sdist | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: wheels-sdist | |
| path: dist/*.tar.gz | |
| build_wheels_windows: | |
| name: '${{ matrix.os }} ${{ matrix.cibw_archs }} ${{ matrix.cibw_build }}' | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [windows-latest] | |
| cibw_build: ['cp39-*', 'cp310-*', 'cp311-*', 'cp312-*', 'cp313-*', 'cp314-*'] | |
| cibw_archs: ['AMD64', 'x86'] | |
| env: | |
| PYTHON: 3.12 | |
| steps: | |
| - name: 'Set environment variables (Windows)' | |
| shell: pwsh | |
| run: | | |
| (Get-ItemProperty "HKLM:System\CurrentControlSet\Control\FileSystem").LongPathsEnabled | |
| - name: Sanitize matrix.cibw_build | |
| id: sanitize_build | |
| run: echo "CIBW_BUILD_SANITIZED=$(echo '${{ matrix.cibw_build }}' | sed 's/\*/_/g')" >> $GITHUB_ENV | |
| shell: bash | |
| - name: Check out repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Set up python ${{ env.PYTHON }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ env.PYTHON }} | |
| - name: Build wheels | |
| uses: pypa/cibuildwheel@v3.2.1 | |
| env: | |
| CIBW_BUILD_FRONTEND: 'pip' | |
| CIBW_ARCHS: ${{ matrix.cibw_archs }} | |
| CIBW_BUILD: ${{ matrix.cibw_build }} | |
| CIBW_TEST_REQUIRES: 'pytest cyclopts packaging' | |
| CIBW_TEST_COMMAND: pytest {package}/tests --no-dataset | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: wheels-${{ matrix.os }}-${{ env.CIBW_BUILD_SANITIZED }}-${{ matrix.cibw_archs }} | |
| path: wheelhouse/*.whl | |
| build_wheels_windows_arm64: | |
| name: '${{ matrix.os }} ${{ matrix.cibw_archs }} ${{ matrix.cibw_build }}' | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [windows-11-arm] | |
| cibw_build: ['cp39-*', 'cp310-*', 'cp311-*', 'cp312-*', 'cp313-*', 'cp314-*'] | |
| cibw_archs: ['ARM64'] | |
| env: | |
| PYTHON: 3.12 | |
| steps: | |
| - name: 'Set environment variables (Windows)' | |
| shell: pwsh | |
| run: | | |
| (Get-ItemProperty "HKLM:System\CurrentControlSet\Control\FileSystem").LongPathsEnabled | |
| - name: Sanitize matrix.cibw_build | |
| id: sanitize_build | |
| run: echo "CIBW_BUILD_SANITIZED=$(echo '${{ matrix.cibw_build }}' | sed 's/\*/_/g')" >> $GITHUB_ENV | |
| shell: bash | |
| - name: Check out repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Set up python ${{ env.PYTHON }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ env.PYTHON }} | |
| - name: Build wheels | |
| uses: pypa/cibuildwheel@v3.2.1 | |
| env: | |
| CIBW_BUILD_FRONTEND: 'pip' | |
| CIBW_ARCHS: ${{ matrix.cibw_archs }} | |
| CIBW_BUILD: ${{ matrix.cibw_build }} | |
| CIBW_TEST_REQUIRES: 'pytest cyclopts packaging' | |
| CIBW_TEST_COMMAND: pytest {package}/tests --no-dataset | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: wheels-${{ matrix.os }}-${{ env.CIBW_BUILD_SANITIZED }}-${{ matrix.cibw_archs }} | |
| path: wheelhouse/*.whl | |
| build_wheels_linux: | |
| name: '${{ matrix.os }} ${{ matrix.cibw_archs }} ${{ matrix.cibw_build }}' | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-22.04] # TODO: change back to ubuntu-latest; see https://github.com/actions/runner-images/issues/11471 | |
| cibw_build: ['cp39-*', 'cp310-*', 'cp311-*', 'cp312-*', 'cp313-*', 'cp314-*'] | |
| cibw_archs: ['x86_64', 'i686'] | |
| env: | |
| PYTHON: 3.12 | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Sanitize matrix.cibw_build | |
| id: sanitize_build | |
| run: echo "CIBW_BUILD_SANITIZED=$(echo '${{ matrix.cibw_build }}' | sed 's/\*/_/g')" >> $GITHUB_ENV | |
| shell: bash | |
| - name: Set up QEMU | |
| if: matrix.cibw_archs != 'x86_64' | |
| uses: docker/setup-qemu-action@v3 | |
| with: | |
| platforms: all | |
| - name: Set up python ${{ env.PYTHON }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ env.PYTHON }} | |
| - name: Build wheels | |
| uses: pypa/cibuildwheel@v3.2.1 | |
| env: | |
| CIBW_BUILD_FRONTEND: 'pip' | |
| CIBW_ARCHS: ${{ matrix.cibw_archs }} | |
| CIBW_BUILD: ${{ matrix.cibw_build }} | |
| CIBW_TEST_REQUIRES: 'pytest cyclopts packaging' | |
| CIBW_TEST_COMMAND: pytest {package}/tests --no-dataset | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: wheels-${{ matrix.os }}-${{ env.CIBW_BUILD_SANITIZED }}-${{ matrix.cibw_archs }} | |
| path: wheelhouse/*.whl | |
| build_wheels_linux_arm64: | |
| name: '${{ matrix.os }} ${{ matrix.cibw_archs }} ${{ matrix.cibw_build }}' | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-24.04-arm] # Native ARM runner | |
| cibw_build: ['cp39-*', 'cp310-*', 'cp311-*', 'cp312-*', 'cp313-*', 'cp314-*'] | |
| cibw_archs: ['aarch64'] | |
| env: | |
| PYTHON: 3.12 | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Sanitize matrix.cibw_build | |
| id: sanitize_build | |
| run: echo "CIBW_BUILD_SANITIZED=$(echo '${{ matrix.cibw_build }}' | sed 's/\*/_/g')" >> $GITHUB_ENV | |
| shell: bash | |
| - name: Set up python ${{ env.PYTHON }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ env.PYTHON }} | |
| - name: Build wheels | |
| uses: pypa/cibuildwheel@v3.2.1 | |
| env: | |
| CIBW_BUILD_FRONTEND: 'pip' | |
| CIBW_ARCHS: ${{ matrix.cibw_archs }} | |
| CIBW_BUILD: ${{ matrix.cibw_build }} | |
| CIBW_TEST_REQUIRES: 'pytest cyclopts packaging' | |
| CIBW_TEST_COMMAND: pytest {package}/tests --no-dataset | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: wheels-${{ matrix.os }}-${{ env.CIBW_BUILD_SANITIZED }}-${{ matrix.cibw_archs }} | |
| path: wheelhouse/*.whl | |
| build_wheels_linux_ppc64le: | |
| name: '${{ matrix.os }} ${{ matrix.cibw_archs }} ${{ matrix.cibw_build }}' | |
| if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags/v') | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-22.04] | |
| cibw_build: ['cp39-*', 'cp310-*', 'cp311-*', 'cp312-*', 'cp313-*', 'cp314-*'] | |
| cibw_archs: ['ppc64le'] | |
| env: | |
| PYTHON: 3.12 | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Sanitize matrix.cibw_build | |
| id: sanitize_build | |
| run: echo "CIBW_BUILD_SANITIZED=$(echo '${{ matrix.cibw_build }}' | sed 's/\*/_/g')" >> $GITHUB_ENV | |
| shell: bash | |
| - name: Set up QEMU | |
| uses: docker/setup-qemu-action@v3 | |
| with: | |
| platforms: all | |
| - name: Set up python ${{ env.PYTHON }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ env.PYTHON }} | |
| - name: Build wheels | |
| uses: pypa/cibuildwheel@v3.2.1 | |
| env: | |
| CIBW_BUILD_FRONTEND: 'pip' | |
| CIBW_ARCHS: ${{ matrix.cibw_archs }} | |
| CIBW_BUILD: ${{ matrix.cibw_build }} | |
| CIBW_TEST_REQUIRES: 'pytest cyclopts packaging' | |
| CIBW_TEST_COMMAND: pytest {package}/tests --no-dataset | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: wheels-${{ matrix.os }}-${{ env.CIBW_BUILD_SANITIZED }}-${{ matrix.cibw_archs }} | |
| path: wheelhouse/*.whl | |
| build_wheels_macos_x86_64: | |
| name: '${{ matrix.os }} ${{ matrix.cibw_archs }} ${{ matrix.cibw_build }}' | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [macos-15-intel] | |
| cibw_build: ['cp39-*', 'cp310-*', 'cp311-*', 'cp312-*', 'cp313-*', 'cp314-*'] | |
| cibw_archs: ['x86_64'] | |
| env: | |
| PYTHON: 3.12 | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Sanitize matrix.cibw_build | |
| id: sanitize_build | |
| run: echo "CIBW_BUILD_SANITIZED=$(echo '${{ matrix.cibw_build }}' | sed 's/\*/_/g')" >> $GITHUB_ENV | |
| shell: bash | |
| - name: Set up python ${{ env.PYTHON }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ env.PYTHON }} | |
| - name: Build wheels | |
| uses: pypa/cibuildwheel@v3.2.1 | |
| env: | |
| CIBW_BUILD_FRONTEND: 'pip' | |
| CIBW_ARCHS: ${{ matrix.cibw_archs }} | |
| CIBW_BUILD: ${{ matrix.cibw_build }} | |
| CIBW_TEST_REQUIRES: 'pytest cyclopts packaging' | |
| CIBW_TEST_COMMAND: pytest {package}/tests --no-dataset | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: wheels-${{ matrix.os }}-${{ env.CIBW_BUILD_SANITIZED }}-${{ matrix.cibw_archs }} | |
| path: wheelhouse/*.whl | |
| build_wheels_macos_arm64: | |
| name: '${{ matrix.os }} ${{ matrix.cibw_archs }} ${{ matrix.cibw_build }}' | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [macos-15] # ARM runner | |
| cibw_build: ['cp39-*', 'cp310-*', 'cp311-*', 'cp312-*', 'cp313-*', 'cp314-*'] | |
| cibw_archs: ['arm64'] | |
| env: | |
| PYTHON: 3.12 | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Sanitize matrix.cibw_build | |
| id: sanitize_build | |
| run: echo "CIBW_BUILD_SANITIZED=$(echo '${{ matrix.cibw_build }}' | sed 's/\*/_/g')" >> $GITHUB_ENV | |
| shell: bash | |
| - name: Set up python ${{ env.PYTHON }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ env.PYTHON }} | |
| - name: Build wheels | |
| uses: pypa/cibuildwheel@v3.2.1 | |
| env: | |
| CIBW_BUILD_FRONTEND: 'pip' | |
| CIBW_ARCHS: ${{ matrix.cibw_archs }} | |
| CIBW_BUILD: ${{ matrix.cibw_build }} | |
| CIBW_TEST_REQUIRES: 'pytest cyclopts packaging' | |
| CIBW_TEST_COMMAND: pytest {package}/tests --no-dataset | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: wheels-${{ matrix.os }}-${{ env.CIBW_BUILD_SANITIZED }}-${{ matrix.cibw_archs }} | |
| path: wheelhouse/*.whl | |
| validate_wheels: | |
| name: 'Validate wheels' | |
| if: always() && !cancelled() | |
| needs: | |
| [ | |
| 'build_sdist', | |
| 'build_wheels_windows', | |
| 'build_wheels_windows_arm64', | |
| 'build_wheels_linux', | |
| 'build_wheels_linux_arm64', | |
| 'build_wheels_linux_ppc64le', | |
| 'build_wheels_macos_x86_64', | |
| 'build_wheels_macos_arm64', | |
| ] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check build job results | |
| if: contains(needs.*.result, 'failure') | |
| run: exit 1 | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| path: wheels | |
| pattern: wheels-* | |
| merge-multiple: true | |
| - name: Validate wheels | |
| run: | | |
| python -m pip install check-wheel-contents | |
| check-wheel-contents wheels/*.whl | |
| upload_to_pypi: | |
| if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags/v') | |
| needs: ['validate_wheels'] | |
| runs-on: ubuntu-latest | |
| permissions: | |
| id-token: write | |
| environment: | |
| name: pypi | |
| url: https://pypi.org/p/tamp | |
| steps: | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| path: wheels | |
| pattern: wheels-* | |
| merge-multiple: true | |
| - uses: pypa/gh-action-pypi-publish@release/v1 | |
| with: | |
| packages-dir: wheels/ | |
| skip-existing: true |