DevStackBoxGitHub ↗

Release Process

Checklist for shipping DevStackBox releases.

DevStackBox - Release Process

The exact checklist for every release. Follow this every time without shortcuts.


Release Types

TypeWhenExample
PatchBug fix only, no new features0.1.60.1.7
MinorNew working feature added0.1.60.2.0
MajorBreaking changes or large milestone0.x.x1.0.0

Version format: X.Y.Z - always clean semver. No hyphens, no pre-release text. (MSI requirement)


Step 1 - Pre-Release Checks

Before changing any version number, verify:

  • All Phase 1 items in roadmap are complete for this milestone
  • No CRITICAL issues in advanced/troubleshooting are newly introduced
  • cargo build completes with zero errors
  • pnpm tauri build completes with zero errors
  • App starts and services can be started on a clean Windows test machine

Step 2 - Version Bump

Change version in ALL THREE files at the same time:

package.json

{
  "version": "0.1.7"
}

src-tauri/Cargo.toml

[package]
version = "0.1.7"

src-tauri/tauri.conf.json

{
  "version": "0.1.7"
}

Verify they match:

node -e "const p=require('./package.json'); console.log('package.json:', p.version)"
grep "^version" src-tauri/Cargo.toml
grep '"version"' src-tauri/tauri.conf.json

Step 3 - Update CHANGELOG.md

Add an entry at the top:

## v0.1.7 - 2026-MM-DD

### Fixed

- Description of bug fix

### Added

- Description of new feature

### Changed

- Description of change

Keep the format consistent. Do not delete old entries.


Step 4 - Build Release

pnpm tauri build

Expected output files:

  • src-tauri/target/release/bundle/msi/DevStackBox_0.1.7_x64_en-US.msi
  • src-tauri/target/release/bundle/nsis/DevStackBox_0.1.7_x64-setup.exe

If the build fails:

  1. Check src-tauri/target/release/build/ for Rust errors
  2. Check that all three version numbers match exactly
  3. Check that no new emoji were added to .github/workflows/*.yml

Step 5 - Smoke Tests

Run this checklist on the MSI installer (not dev mode) on a clean Windows 11 machine or VM:

Installation:

  • MSI installs without errors
  • App opens from Start Menu
  • App opens without antivirus immediately blocking it

MySQL:

  • MySQL starts successfully
  • phpMyAdmin opens in browser
  • MySQL stops successfully

Apache:

  • Apache starts successfully
  • http://localhost shows the www directory
  • Apache stops successfully

Config:

  • Config editor opens php.ini
  • Config change is saved
  • Config backup is created

General:

  • Dark mode and light mode both work
  • Language switcher works (EN and HI)
  • Sidebar navigation loads all pages without errors

Step 6 - Generate SHA-256 Hashes

Generate hashes for both installers (required for security transparency):

Get-FileHash "src-tauri\target\release\bundle\msi\DevStackBox_0.1.7_x64_en-US.msi" -Algorithm SHA256
Get-FileHash "src-tauri\target\release\bundle\nsis\DevStackBox_0.1.7_x64-setup.exe" -Algorithm SHA256

Include these in the GitHub Release description.


Step 7 - GitHub Release

  1. Create a git tag:

    git tag v0.1.7
    git push origin v0.1.7
  2. Go to GitHub Releases

  3. Fill in:

    • Tag: v0.1.7
    • Title: DevStackBox v0.1.7
    • Description: Copy from CHANGELOG.md + paste SHA-256 hashes
    • Attach files: Both MSI and NSIS installers
  4. Click Publish Release.


Step 8 - Post-Release

  • Verify the download links in the GitHub Release page work
  • Update README.md version badge if necessary
  • Close GitHub Issues that were fixed in this release
  • Update feature-status if feature status changed

Auto-Updater (Phase 4 - Not Yet Active)

When the auto-updater is configured, an additional step will be needed:

  1. Generate latest.json with new version info, download URLs, and signatures
  2. Upload to the updater endpoint URL
  3. Test that an older installation picks up the update

The updater flow is not active yet. See advanced/troubleshooting ISSUE-011.


What Can Go Wrong

ProblemFix
MSI refuses to installVersion has hyphens or letters - use clean semver only
Build fails with "version mismatch"One of the three version files is different
Antivirus blocks installerPublish SHA-256 hash - users can verify and allow
GitHub Actions build failsCheck for emoji in .yml files - see advanced/troubleshooting
MSI is larger than expectedCheck that src-tauri/target/ was not accidentally included
Last updated: July 17, 2026Edit this page