Skip to content

chore: 2026.9.2.1 changes #67

chore: 2026.9.2.1 changes

chore: 2026.9.2.1 changes #67

Workflow file for this run

name: Release to PyPI
on:
push:
tags:
- 'v*.*.*' # Semantic version tags (v1.0.0)
- '20[0-9][0-9].*.*' # Date-based tags (2025.47.2)
workflow_dispatch:
jobs:
build-and-publish:
name: Build, test, and publish
runs-on: ubuntu-latest
environment:
name: release
permissions:
id-token: write
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0 # Fetch all history and tags for version detection
- name: Install uv
uses: astral-sh/setup-uv@v7
- name: "Set up Python"
uses: actions/setup-python@v6
with:
python-version: "3.13"
- name: Install the project
run: uv sync --locked --all-extras --dev
- name: Run pre-commit checks
run: uv run pre-commit run --all-files
- name: Run tests with coverage
run: uv run pytest --cov=bindu --cov-report=term-missing --cov-report=xml:coverage.xml --cov-fail-under=64
- name: Upload coverage to Coveralls
uses: coverallsapp/github-action@v2
with:
file: coverage.xml
format: cobertura
- name: Build package
run: uv build
- name: Upload package artifact
uses: actions/upload-artifact@v4
with:
name: bindu-dist
path: dist/
- name: Publish package to PyPI
run: uv publish --token ${{ secrets.PYPI_API_TOKEN }} dist/*