githubEdit

Release Process

This document describes how to create releases for spuff.

Versioning

We follow Semantic Versioningarrow-up-right:

  • MAJOR (x.0.0): Breaking changes

  • MINOR (0.x.0): New features, backwards compatible

  • PATCH (0.0.x): Bug fixes, backwards compatible

During alpha (0.x.x), minor versions may include breaking changes.

Release Checklist

1. Prepare Release

# Ensure you're on main
git checkout main
git pull origin main

# Create release branch
git checkout -b release/v0.2.0

2. Update Version

Edit Cargo.toml:

3. Update Documentation

4. Run Tests

5. Create PR

Create PR: "Release v0.2.0"

6. Merge and Tag

After PR approval and merge:

7. Create GitHub Release

  1. Click "Draft a new release"

  2. Select tag: v0.2.0

  3. Title: v0.2.0

  4. Generate release notes or write manually

  5. Publish release

Release Notes Template

Automated Releases (Future)

GitHub Actions

Binary Distribution

Current (Alpha)

Build from source:

Future Plans

Homebrew Formula (Draft)

Version Bumping Script

Hotfix Process

For urgent fixes:

Post-Release

After release:

  1. Announce on social media/Discord

  2. Update documentation if needed

  3. Monitor for issues

  4. Bump to next dev version if desired

Last updated

Was this helpful?