Major improvements:
- Add common.sh library for consistent error handling and logging
- Fix hardcoded values in scripts (signing identity, volume names, GitHub repo)
- Add comprehensive release documentation with lessons learned
- Create Sparkle key management guide
- Add clean.sh script for managing build artifacts
- Improve error handling and validation across all scripts
- Update lint.sh with proper documentation and better error handling
- Make generate-appcast.sh fail fast if private key is missing
Script improvements:
- release.sh: Add GitHub CLI auth check, remote tag validation
- notarize-app.sh: Auto-detect signing identity from keychain
- create-dmg.sh: Make volume name configurable
- generate-appcast.sh: Extract GitHub info from git remote
- All scripts: Add proper documentation headers
This ensures more reliable and maintainable release process.
- Add --timestamp flag to all code signing operations
- Fix Sparkle XPC services signing to match VibeMeter approach
- Add comprehensive Sparkle component verification after signing
- Add post-DMG creation verification to ensure app is properly notarized
- Increment build number to 105 for clean beta 2 release
- Created notarize-dmg.sh script to handle DMG notarization
- Updated release.sh to notarize DMG after creation
- Fixed step numbering in release process
- Updated release.sh to detect if version already contains suffix
- Added critical pre-release checklist to RELEASE.md
- Fixed version back to 1.0.0-beta.2 (removed double suffix)
- Improved documentation about version handling in release process
- Match WelcomeView behavior by checking if vt file physically exists
- Show green checkmark and 'CLI tool is installed' message when installed
- Display installation path when tool is already installed
- Add progress indicator during installation
- Check installation status on view appear
Also updated release scripts to set version before building to prevent version mismatches in About window
- Bump version to build 102
- Add automatic cleanup of development files from app bundle
- Enhance release script with comprehensive build cleaning
- Update CHANGELOG with beta.2 fixes
- Remove app-config.plist, Local.xcconfig, and test files from bundle
- Integrate tty-fwd universal binary build into build.sh
- Automatically build and copy tty-fwd-universal to Resources folder
- Ensure binary is executable and included in app bundle
- Update release process to build universal binary for Intel and Apple Silicon