name: Build Package permissions: contents: read on: workflow_call: inputs: python-version: required: false type: string default: "3.10" link-check: required: false type: boolean default: true jobs: build: runs-on: ubuntu-latest steps: - name: 📥 Checkout the repository uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: 🐍 Install uv and set Python version ${{ inputs.python-version }} uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57 # v8.0.0 with: python-version: ${{ inputs.python-version }} activate-environment: true - name: 🎨 Augment paths in README run: | python .github/scripts/augment_links.py README.md --branch ${{ github.head_ref || github.ref_name }} cat README.md - name: 🔗 Link Checker if: inputs.link-check uses: lycheeverse/lychee-action@v2 with: lycheeVersion: v0.22.0 args: | --config .github/lychee.toml README.md fail: true - name: 🏗️ Build source and wheel distributions run: | uv sync --frozen --group build uv build twine check --strict dist/* - name: 📤 Upload distribution artifacts uses: actions/upload-artifact@v7 with: name: dist path: dist/