- Add 'master' branch to trigger (was only 'main')
- Fix get-version job condition to run on push events
- Ensure workflow triggers properly on git push
Now unified-release.yml should trigger on push to master branch!
- Remove conflicting unified-build.yml workflow
- Disable desktop-ci.yml and component-tests.yml
- Keep only unified-release.yml active for all builds
- Test trigger commit to verify workflow execution
Now only unified-release.yml will run on push to main:
✅ Semantic versioning
✅ Cross-platform builds (Linux, Windows, macOS, Android, Backend)
✅ Unified GitHub release
✅ No workflow conflicts
This commit will test the new unified release system:
✅ Semantic versioning calculation
✅ Cross-platform builds (Linux, Windows, macOS, Android, Backend)
✅ Unified GitHub release creation
✅ All platforms on appropriate runners
Expected version: v1.0.0 (first release with features)
- Disable old unified-build.yml workflow (was causing conflicts)
- Create new unified-release.yml with proper platform separation
- macOS builds now run on macOS runners (fixes cross-compilation)
- Linux and Windows builds use Ubuntu with cross-compilation
- Separate build jobs for each platform to prevent cancellation
- Rename workflow to indicate cross-platform support
Platform matrix:
✅ Linux x64: Ubuntu runner (native)
✅ Windows x64: Ubuntu runner (cross-compile)
✅ macOS x64/ARM64: macOS runners (native)
✅ Android: Ubuntu runner (native)
✅ Backend: Ubuntu runner (native)
Fixes macOS build failures and prevents other builds from being canceled!
- Create unified release workflow for entire mono repo
- Analyze commits across all submodules for semantic versioning
- Build and release desktop (4 platforms), android, and backend together
- Single version number for all components based on combined changes
- Comprehensive release notes from all component changes
- Support for selective component releases
- Professional installation instructions for all platforms
Components included:
✅ Desktop: Linux x64, Windows x64, macOS x64/ARM64
✅ Android: APK release builds
✅ Backend: Python wheel and source packages
Now every push to main creates a unified release with proper semantic versioning!
- Update .gitmodules to explicitly track master branch for all submodules
- Ensures submodules always point to latest master commits
- Removes specific commit hashes in favor of branch tracking
- Keep main swingmusic backend code (src/, pyproject.toml, etc.)
- Add swingmusic-android as submodule
- Add swingmusic-desktop as submodule
- Add swingmusic-webclient as submodule
- Update README to reflect main backend + client apps structure
- Repository now contains complete Swing Music ecosystem in one place
- Updated with comprehensive feature descriptions
- Added modern installation and setup instructions
- Included detailed project structure and architecture
- Added troubleshooting and development guidelines
- Standardized format across all repositories
- Removed unnecessary content and outdated information
- Complete Spotify integration with downloader and settings
- Advanced UX features and audio quality management
- Enhanced search capabilities and mobile offline support
- Music catalog browser and recap features
- Universal downloader and upload functionality
- Update tracking system with database models and migrations
- Comprehensive service layer architecture
- Enhanced lyrics API and streaming capabilities
- Extended application builder and startup configuration
- New logging infrastructure and services directory
+ add fallback release version data to version.txt
+ move classproperty class to utils
+ update Dockerfile to install from source using pip install
+ move version info to Metadata class in settings.py