Skip to content

chore(release): bump version to 0.0.3 #4

chore(release): bump version to 0.0.3

chore(release): bump version to 0.0.3 #4

Workflow file for this run

name: Publish to PyPI
on:
push:
tags:
- "v*"
permissions:
contents: write
id-token: write
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install uv
uses: astral-sh/setup-uv@v3
- name: Build package
run: uv build
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: dist
path: dist/
publish-package:
runs-on: ubuntu-latest
needs: [build]
permissions:
contents: read
id-token: write
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
with:
name: dist
path: dist/
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
packages-dir: dist/
publish-docs:
runs-on: ubuntu-latest
needs: [publish-package]
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install uv
uses: astral-sh/setup-uv@v3
- name: Sync dependencies
run: uv sync --group dev
- name: Deploy to GitHub Pages
run: uv run mkdocs gh-deploy --force
changelog:
runs-on: ubuntu-latest
needs: [publish-package]
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}
- name: Install git-cliff
uses: taiki-e/install-action@git-cliff
- name: Generate full changelog
run: git cliff -o CHANGELOG.md
- name: Generate release notes
run: git cliff --latest --strip header -o RELEASE_NOTES.md
- name: Commit changelog
run: |
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add CHANGELOG.md
git diff --staged --quiet || git commit -m "chore: update changelog for ${{ github.ref_name }}"
git push origin HEAD:main
- name: Upload release notes
uses: actions/upload-artifact@v4
with:
name: release-notes
path: RELEASE_NOTES.md
github-release:
runs-on: ubuntu-latest
needs: [changelog]
permissions:
contents: write
steps:
- name: Download release notes
uses: actions/download-artifact@v4
with:
name: release-notes
- name: Download dist
uses: actions/download-artifact@v4
with:
name: dist
path: dist/
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
body_path: RELEASE_NOTES.md
files: dist/*