diff --git a/.github/workflows/build-wheels.yml b/.github/workflows/build-wheels.yml index 991ef41..5c15127 100644 --- a/.github/workflows/build-wheels.yml +++ b/.github/workflows/build-wheels.yml @@ -32,37 +32,37 @@ jobs: name: Build source distribution runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - - uses: actions/setup-python@v2 - name: Install Python + - name: Install a specific version of uv + uses: astral-sh/setup-uv@v10.2.0 with: - python-version: "3.12" - - - name: Install dependencies - run: | - python -m pip install numpy Cython build + version: "latest" - name: Build sdist - run: python -m build --sdist + run: uv build --sdist - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@v7 with: name: sdist path: dist/*.tar.gz upload_pypi: + name: Upload release to PyPI needs: [build_wheels, build_sdist] runs-on: ubuntu-latest - if: startsWith(github.ref, 'refs/tags/') + if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') + environment: + # Note: this environment must be configured in the repo settings + name: pypi-release + url: https://pypi.org/p/quantized-mesh-encoder + permissions: + id-token: write # IMPORTANT: this permission is mandatory for trusted publishing steps: - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: path: dist merge-multiple: true - - uses: pypa/gh-action-pypi-publish@master - with: - user: __token__ - password: ${{ secrets.PYPI_PASSWORD }} - # To test: repository_url: https://test.pypi.org/legacy/ + - name: Publish package distributions to PyPI + uses: pypa/gh-action-pypi-publish@release/v1