Release Workflow Overview
The release process is defined in.github/workflows/release.yml and follows this flow:
Push a Version Tag
Create and push a git tag following semantic versioning:This automatically triggers the release workflow.
Build Matrix Execution
GitHub Actions runs parallel builds for:
- macOS Apple Silicon (
aarch64-apple-darwin) - macOS Intel (
x86_64-apple-darwin) - Windows (
x86_64-pc-windows-msvc)
- Checks out the repository
- Sets up Node.js 20
- Installs Rust toolchain with target architecture
- Caches Rust dependencies
- Installs npm dependencies
- Runs
npm run tauri build
Version Bumping
Update Version Numbers
Before creating a release tag, update the version in three files:
package.json:src-tauri/Cargo.toml:src-tauri/tauri.conf.json:GitHub Actions Configuration
The release workflow is defined in.github/workflows/release.yml:
Build Steps
For each platform in the matrix:Manual Release Trigger
You can also trigger the release workflow manually from the GitHub Actions UI:- Go to Actions tab in your repository
- Select Release Desktop App workflow
- Click Run workflow
- Choose the branch and click Run workflow
Manual triggers still require version tags to be present in the repository. They’re useful for re-running failed builds.
Release Assets
After a successful build, the following files are uploaded to the GitHub Release:macOS
Asta_1.4.2_aarch64.dmg- Apple Silicon installerAsta_1.4.2_x86_64.dmg- Intel installerAsta_1.4.2_aarch64.dmg.tar.gz- Compressed Apple Silicon bundleAsta_1.4.2_x86_64.dmg.tar.gz- Compressed Intel bundle
Windows
Asta_1.4.2_x64_en-US.msi- MSI installerAsta_1.4.2_x64_en-US.msi.zip- Compressed MSI
Finding Releases
Releases are published on the GitHub Releases page:UpdateToast component displays a notification with a download link.
Versioning Strategy
Asta follows Semantic Versioning:- Major (
2.0.0) - Breaking changes, incompatible API changes - Minor (
1.5.0) - New features, backward-compatible - Patch (
1.4.3) - Bug fixes, backward-compatible
Current Version
The current stable version is 1.4.2 (as of March 2026).Code Signing
macOS Code Signing
To sign macOS builds, add these secrets to your GitHub repository:APPLE_CERTIFICATE- Base64-encoded .p12 certificateAPPLE_CERTIFICATE_PASSWORD- Certificate passwordAPPLE_ID- Apple ID emailAPPLE_TEAM_ID- Developer Team ID
Windows Code Signing
For Windows, add:WINDOWS_CERTIFICATE- Base64-encoded PFX certificateWINDOWS_CERTIFICATE_PASSWORD- Certificate password
Troubleshooting
Build fails: 'Version mismatch'
Build fails: 'Version mismatch'
Ensure all three version files are in sync:All three should show the same version number.
Release not created
Release not created
Check that:
- The tag starts with
v(e.g.,v1.4.2, not1.4.2) - The workflow has
contents: writepermission - GitHub Actions is enabled in repository settings
macOS build fails
macOS build fails
Common issues:
- Xcode license not accepted - GitHub runners should have this pre-configured
- Target not found - Ensure
rust_targetis correct in the matrix - Disk space - macOS runners have limited space; clean cache if needed
Windows build fails
Windows build fails
Common issues:
- Missing WebView2 - Should be pre-installed on
windows-latestrunners - Path issues - Use
MACWinApp/asta-appwith forward slashes - Antivirus - Windows Defender may block some build steps
Release Checklist
Before creating a release:- Update version in
package.json,Cargo.toml, andtauri.conf.json - Update
CHANGELOG.mdwith release notes - Test build locally on target platforms
- Commit version changes to main branch
- Create and push git tag
- Monitor GitHub Actions workflow
- Verify release assets are uploaded
- Test installers on clean systems
- Update documentation if API changed
Next Steps
Desktop App Overview
Learn about the app’s architecture and features
Building from Source
Build the desktop app locally for development