AgentSkillsCN

release

发布SuperSayer的新版本。当创建发布、提升版本、推送到GitHub标签、更新AUR软件包或发布新版本时使用。

SKILL.md
--- frontmatter
name: release
description: Release a new version of SuperSayer. Use when creating releases, bumping versions, pushing tags to GitHub, updating AUR packages, or publishing new versions.

Release Skill

Push a new release of SuperSayer.

Version Locations

Increment the version in these files:

  1. pyproject.toml - Line 3: version = "X.Y.Z" (main repo)
  2. dist/archlinux/supersayer/PKGBUILD - Line 3: pkgver=X.Y.Z (separate AUR repo)
    • Also reset pkgrel=1 if it was incremented

Release Process

1. Increment Version in Main Repo

Update version in pyproject.toml.

2. Run Quality Checks

bash
just audit
just test

3. Dev Testing from Source

Test directly from source before building a package:

bash
just run        # Test normal Ctrl+V paste
just run -m     # Test middle-click paste

This prevents having to increment pkgrel for every fix found during testing.

4. Package Testing - Build and Install Locally

Once source testing passes, build and install the Arch package:

bash
just install

Builds and installs the Arch package locally for final testing before release.

Note: just install automatically increments pkgrel each time to avoid conflicts with the Arch repo database during repeated testing.

5. Commit and Push Main Repo

bash
git add pyproject.toml
git commit -m "Bump version to X.Y.Z"
git push origin main

6. Create GitHub Release

Create annotated tag with changelog:

bash
git tag -a vX.Y.Z

Tag message format:

code
vX.Y.Z

Changes since vPREVIOUS:

- Feature or fix description
  - Additional details if needed
  - More nested details

- Another change

Push tag:

bash
git push origin vX.Y.Z

Then on GitHub:

  1. Go to https://github.com/demizer/supersayer/releases/new
  2. Select tag vX.Y.Z
  3. Title: vX.Y.Z
  4. Generate release notes or copy from tag message
  5. Publish release

7. Update AUR Package

Update dist/archlinux/supersayer/PKGBUILD:

  • Set pkgver=X.Y.Z
  • Reset pkgrel=1 (pkgrel is incremented during local testing but should be 1 for new version releases)

Update the sha256sum (requires GitHub release to be published first):

bash
cd dist/archlinux/supersayer && updpkgsums

8. Push to AUR

bash
just aur-upload

Generates .SRCINFO, commits, and pushes to AUR.

Use just lg-supersayer to open lazygit for the AUR repo if manual review is needed.

9. Verify AUR Install

Test that the release works when installed from AUR:

bash
just install-reset-aur

This uninstalls the current package, clears the cache, and reinstalls from AUR.

Then verify functionality:

  • Run your keybindings like normal to test transcription
  • Run supersayer show-config to verify config loading works