update version info

pull/49/head
Broque Thomas 5 months ago
parent 85d7dce943
commit 81a77e8d88

@ -13,7 +13,7 @@ class VersionInfoModal(QDialog):
def __init__(self, parent=None):
super().__init__(parent)
self.setWindowTitle("What's New in SoulSync v0.65")
self.setWindowTitle("What's New in SoulSync v1.0")
self.setModal(True)
self.setFixedSize(600, 500)
self.setup_ui()
@ -68,7 +68,7 @@ class VersionInfoModal(QDialog):
""")
# Version subtitle
version_subtitle = QLabel("Version 0.65 - Tidal Playlist Integration")
version_subtitle = QLabel("Version 1.0 - Complete WebUI Rebuild")
version_subtitle.setFont(QFont("SF Pro Text", 11, QFont.Weight.Medium))
version_subtitle.setStyleSheet("""
color: rgba(255, 255, 255, 0.7);
@ -112,52 +112,70 @@ class VersionInfoModal(QDialog):
content_layout.setContentsMargins(30, 25, 30, 25)
content_layout.setSpacing(25)
# Tidal Integration
tidal_section = self.create_feature_section(
"🎵 Complete Tidal Playlist Integration",
"Full Tidal playlist support with seamless workflow integration matching YouTube/Spotify functionality",
# WebUI Transformation
webui_section = self.create_feature_section(
"🌐 Complete WebUI Transformation",
"SoulSync has been completely rebuilt from the ground up as a modern web application, moving from desktop GUI to web-based interface",
[
"Native Tidal API client with OAuth 2.0 authentication and automatic token management",
"Tidal playlist tab positioned between Spotify and YouTube with identical UI/UX patterns",
"Advanced playlist card system with persistent state tracking across all phases",
"• Complete discovery workflow: discovering → discovered → syncing → downloading phases",
"Intelligent track matching using existing Spotify-based algorithms for compatibility",
"Smart modal routing with proper state persistence (close/cancel behavior)",
"Full refresh functionality with comprehensive worker cleanup and modal management"
"Full transition from PyQt6 desktop application to responsive web interface",
"Modern HTML5, CSS3, and JavaScript implementation with premium glassmorphic design",
"Real-time updates and live status monitoring through WebSocket connections",
"• Cross-platform compatibility - access from any device with a web browser",
"Mobile-responsive design optimized for tablets and smartphones",
"Dark theme with sophisticated visual effects and smooth animations",
"RESTful API architecture enabling future third-party integrations"
],
"Configure Tidal in Settings → Connections, then discover and sync your Tidal playlists just like Spotify!"
"Access SoulSync through your web browser at localhost:8888 - no desktop installation required!"
)
content_layout.addWidget(tidal_section)
# Advanced Features
features_section = self.create_feature_section(
"⚙️ Advanced Workflow Features",
"Sophisticated state management and user experience improvements",
content_layout.addWidget(webui_section)
# Docker Support
docker_section = self.create_feature_section(
"🐳 Docker Container Support",
"Complete containerization with Docker for easy deployment and scalability",
[
"• Identical workflow behavior across all playlist sources (Spotify, YouTube, Tidal)",
"• Smart refresh system that cancels all active operations and preserves playlist names",
"• Phase-aware card clicking: routes to discovery, sync progress, or download modals appropriately",
"• Proper modal state persistence: closing download modals preserves discovery state",
"• Cancel operations reset playlists to fresh state for updated playlist data",
"• Multi-server compatibility: works with both Plex and Jellyfin automatically"
"• Pre-built Docker images available for instant deployment",
"• Multi-architecture support (AMD64, ARM64) for various server platforms",
"• Volume mounting for persistent configuration and downloads",
"• Environment variable configuration for easy customization",
"• Docker Compose templates for simplified multi-container setups",
"• Automatic health checks and restart policies for reliability",
"• Lightweight Alpine Linux base for minimal resource usage"
]
)
content_layout.addWidget(features_section)
# Technical Improvements
technical_section = self.create_feature_section(
"🔧 Technical Implementation Details",
"Robust architecture ensuring reliable playlist management across all sources",
content_layout.addWidget(docker_section)
# Enhanced Music Management
music_section = self.create_feature_section(
"🎵 Enhanced Music Management",
"All beloved features preserved and enhanced with new web-based capabilities",
[
"• Complete Spotify, Tidal, and YouTube Music playlist synchronization",
"• Advanced Soulseek integration with real-time download management",
"• Intelligent music matching engine with improved accuracy",
"• Plex and Jellyfin server integration with automatic library updates",
"• Artist watchlist with automatic new release detection",
"• Comprehensive metadata enhancement with high-quality album artwork",
"• Real-time download progress with detailed logging and status updates"
]
)
content_layout.addWidget(music_section)
# Performance & Reliability
performance_section = self.create_feature_section(
"🚀 Performance & Reliability",
"Significant improvements in speed, stability, and resource efficiency",
[
"• Implemented comprehensive state tracking system with playlist card hub architecture",
"• Added PKCE (Proof Key for Code Exchange) OAuth flow for enhanced Tidal security",
"• Created unified modal system supporting YouTube, Spotify, and Tidal workflows",
"• Enhanced worker cancellation system for proper resource cleanup during operations",
"• JSON:API response parsing for Tidal's complex relationship-based data structure",
"• Future-ready architecture for additional music streaming service integrations"
"• Asynchronous processing for improved responsiveness",
"• Multi-threaded download management with concurrent processing",
"• Optimized database operations with connection pooling",
"• Intelligent caching system for faster API responses",
"• Robust error handling with automatic retry mechanisms",
"• Memory-efficient architecture suitable for long-running deployments",
"• Comprehensive logging system for easy troubleshooting"
]
)
content_layout.addWidget(technical_section)
content_layout.addWidget(performance_section)
scroll_area.setWidget(content_widget)
return scroll_area

@ -1245,7 +1245,7 @@ class ModernSidebar(QWidget):
layout.setSpacing(0)
# Version button (clickable)
self.version_button = QPushButton("v.0.65")
self.version_button = QPushButton("v1.0")
self.version_button.setFont(QFont("SF Pro Text", 10, QFont.Weight.Medium))
self.version_button.setCursor(Qt.CursorShape.PointingHandCursor)
self.version_button.setStyleSheet("""

Loading…
Cancel
Save