uv sync --upgrade #138
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: wheel | |
| on: | |
| workflow_dispatch: | |
| push: | |
| paths-ignore: | |
| - "**.md" | |
| - "test/**" | |
| permissions: | |
| contents: write | |
| actions: read | |
| jobs: | |
| build_macos: | |
| strategy: | |
| matrix: | |
| platform: | |
| - name: macos-26_arm64 | |
| runs_on: macos-26 | |
| - name: macos-15_arm64 | |
| runs_on: macos-15 | |
| - name: macos-14_arm64 | |
| runs_on: macos-14 | |
| python_version: | |
| - "3.14" | |
| - "3.14t" | |
| - "3.13" | |
| - "3.12" | |
| runs-on: ${{ matrix.platform.runs_on }} | |
| timeout-minutes: 20 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: astral-sh/setup-uv@v7 | |
| with: | |
| enable-cache: false | |
| python-version: ${{ matrix.python_version }} | |
| - name: Cache _deps | |
| uses: actions/cache@v5 | |
| with: | |
| path: _deps | |
| key: deps-${{ matrix.platform.name }}-${{ hashFiles('CMakeLists.txt', 'deps.json') }} | |
| - run: uv build --wheel --out-dir wheelhouse | |
| - name: Upload Artifact | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: ${{ matrix.platform.name }}_python-${{ matrix.python_version }} | |
| path: wheelhouse/*.whl | |
| build_ubuntu: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| platform: | |
| - name: ubuntu-24.04_x86_64 | |
| runs_on: ubuntu-24.04 | |
| - name: ubuntu-24.04_arm64 | |
| runs_on: ubuntu-24.04-arm | |
| - name: ubuntu-22.04_x86_64 | |
| runs_on: ubuntu-22.04 | |
| - name: ubuntu-22.04_arm64 | |
| runs_on: ubuntu-22.04-arm | |
| python_version: | |
| - "3.14" | |
| - "3.14t" | |
| - "3.13" | |
| - "3.12" | |
| runs-on: ${{ matrix.platform.runs_on }} | |
| timeout-minutes: 15 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: astral-sh/setup-uv@v7 | |
| with: | |
| enable-cache: false | |
| python-version: ${{ matrix.python_version }} | |
| - name: Cache _deps | |
| uses: actions/cache@v5 | |
| with: | |
| path: _deps | |
| key: deps-${{ matrix.platform.name }}-${{ hashFiles('CMakeLists.txt', 'deps.json') }} | |
| - name: Build wheel | |
| run: uv build --wheel | |
| - name: Repair wheel with auditwheel | |
| shell: bash | |
| run: | | |
| uvx auditwheel repair dist/*.whl --strip --only-plat | |
| - name: Upload Repaired Wheels | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: ${{ matrix.platform.name }}_python-${{ matrix.python_version }} | |
| path: wheelhouse/*.whl | |
| build_windows: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| platform: | |
| - name: windows-2025_x86_64 | |
| runs_on: windows-2025 | |
| python_version: | |
| - "3.14" | |
| - "3.14t" | |
| - "3.13" | |
| - "3.12" | |
| runs-on: ${{ matrix.platform.runs_on }} | |
| timeout-minutes: 30 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: astral-sh/setup-uv@v7 | |
| with: | |
| enable-cache: true | |
| python-version: ${{ matrix.python_version }} | |
| - name: Cache _deps | |
| uses: actions/cache@v5 | |
| with: | |
| path: _deps | |
| key: deps-${{ matrix.platform.name }}-${{ hashFiles('CMakeLists.txt', 'deps.json') }} | |
| - name: Build wheel | |
| run: uv build --wheel --out-dir wheelhouse | |
| - name: Upload Wheels | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: ${{ matrix.platform.name }}_python-${{ matrix.python_version }} | |
| path: wheelhouse/*.whl | |
| publish_wheel: | |
| if: contains(github.ref, 'tags/202') | |
| needs: | |
| - build_ubuntu | |
| - build_macos | |
| - build_windows | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| platform: | |
| - name: ubuntu-24.04_x86_64 | |
| - name: ubuntu-24.04_arm64 | |
| - name: ubuntu-22.04_x86_64 | |
| - name: ubuntu-22.04_arm64 | |
| # - name: macos-26_arm64 | |
| - name: macos-15_arm64 | |
| - name: macos-14_arm64 | |
| - name: windows-2025_x86_64 | |
| python_version: | |
| - "3.14" | |
| - "3.14t" | |
| - "3.13" | |
| - "3.12" | |
| runs-on: ubuntu-24.04 | |
| timeout-minutes: 15 | |
| environment: pypi | |
| permissions: | |
| id-token: write | |
| steps: | |
| - uses: actions/download-artifact@v7 | |
| with: | |
| name: ${{ matrix.platform.name }}_python-${{ matrix.python_version }} | |
| path: wheelhouse/ | |
| # テスト用 | |
| # - name: Publish package to TestPyPI | |
| # uses: pypa/gh-action-pypi-publish@release/v1 | |
| # with: | |
| # repository-url: https://test.pypi.org/legacy/ | |
| # packages-dir: wheelhouse | |
| # 本番用 | |
| - name: Publish package to PyPI | |
| uses: pypa/gh-action-pypi-publish@release/v1 | |
| with: | |
| packages-dir: wheelhouse |