mirror of
https://github.com/bahdotsh/wrkflw.git
synced 2025-12-28 16:06:34 +01:00
1.7 KiB
1.7 KiB
Release Process
This document outlines the steps for creating a new release of wrkflw.
Automatic Release Process
The project uses a GitHub Actions workflow to automate the release process. Here's how it works:
-
Tag a new version with Git:
git tag -a v0.x.y -m "Release v0.x.y" -
Push the tag to GitHub:
git push origin v0.x.y -
The GitHub Actions workflow will automatically:
- Build release binaries for multiple platforms (Linux, macOS, Windows)
- Generate a changelog using git-cliff
- Create a GitHub release with the changelog and binaries
- Upload the release artifacts
Commit Message Format
To ensure proper changelog generation, please follow the conventional commit format for your commit messages:
feat: add new feature- for new featuresfix: resolve issue- for bug fixesdocs: update documentation- for documentation updatesstyle: format code- for code style changes (no functional changes)refactor: improve code structure- for code refactoringperf: improve performance- for performance improvementstest: add or update tests- for test updateschore: update dependencies- for maintenance tasks
The changelog will be organized based on these commit types.
Manual Release Steps (if needed)
If you need to create a release manually:
-
Build the release binaries:
cargo build --release -
Generate a changelog:
git cliff --latest > CHANGELOG.md -
Create a new release on GitHub manually and upload the binaries.
Configuration
cliff.toml- Configuration for git-cliff to generate changelogs.github/workflows/release.yml- GitHub Actions workflow for releases