name: Publish to PyPI on: push: tags: - "v*" jobs: build-and-publish: name: Build and publish to PyPI runs-on: ubuntu-latest environment: release permissions: id-token: write steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: python-version: "3.13" - run: pip install build - run: python -m build - uses: pypa/gh-action-pypi-publish@release/v1 with: # 启用 PyPI 签名认证(sigstore provenance),让用户可验证产物来源。 # id-token: write 已在上方 permissions 配置,OIDC trusted publishing 直连。 attestations: true