Releases: snowballons/streamwatch-cli
StreamWatch-0.4.3
StreamWatch CLI v0.4.3
New Features
Recording & Saving System
- Background Recording: Record live streams to file while continuing to browse or watch other streams
- Recording Controls Menu: New
Vkey opens dedicated recording management interface - Persistent Recording: Streams continue recording even when switching between different content
- Automatic File Management: Smart file naming and organization for recorded content
Enhanced Playback Experience
- Improved Stream Reconnection: More reliable automatic reconnection when streams drop
- Better Quality Switching: Seamless quality changes during playback with
Ckey - Enhanced Navigation: Smoother transitions between streams with
N(next) andP(previous) - Optimized Performance: Reduced latency and improved responsiveness during playback
Architecture Improvements
Resilience & Reliability
-
Circuit Breaker Pattern: Prevents cascading failures by temporarily disabling problematic streams
-
Intelligent Caching: Stream status caching with TTL reduces API calls and improves response times
-
Exponential Backoff: Smart retry mechanisms for handling temporary network failures
-
Rate Limiting: Token bucket algorithm respects platform limits and prevents abuse
-
Enhanced Input Validation: Comprehensive URL and user input sanitization
-
XSS Protection: Safe rendering of user content and stream metadata
-
Security Scanning: Integrated Bandit vulnerability scanning in CI/CD pipeline
-
Type Safety: Full type hints with MyPy static analysis
Performance & User Experience
- Modular Architecture: Clean separation of concerns with improved maintainability
- Enhanced Error Handling: More informative error messages and graceful failure recovery
- Better Pagination: Optimized handling of large stream lists with efficient navigation
- Comprehensive Logging: Detailed logging system for easier troubleshooting
Technical Enhancements
- Dependency Injection: Improved modularity and testability
- Command Pattern: Structured command system for better code organization
- Pydantic Models: Enhanced data validation and type safety
- Pre-commit Hooks: Automated code quality checks with Black, isort, Flake8, and MyPy
-Comprehensive Test Suite: High coverage requirements with unit and integration tests
Installation
pip install streamwatch==0.4.3Upgrade from Previous Versions
pip install --upgrade streamwatchWhat's Changed
- Added background recording functionality
- Enhanced playback controls and reliability
- Implemented circuit breaker pattern for better error handling
- Added intelligent caching system for improved performance
- Enhanced security with comprehensive input validation
- Improved modular architecture with better separation of concerns
- Added comprehensive logging and error reporting
- Enhanced UI responsiveness and navigation
Bug Fixes
- Fixed stream reconnection issues during network interruptions
- Resolved memory leaks in long-running sessions
- Improved error handling for malformed stream URLs
- Fixed pagination issues with large stream lists
--
Full Changelog: v0.4.0...v0.4.3
StreamWatch-v0.4.0
What's Changed
- Features are improved, app is now 10x faster
- Replay a stream has replaced stop stream
- Data management changed forJSON to SQLite, faster and more secure
- Error handling enhanced
- Architecture improvement for better maintenance and scalability
StreamWatch v0.3.5
🚀 StreamWatch v0.3.5
A major upgrade for your terminal streaming experience!
🌟 What's New
- Instant Search: Filter streams by username, platform, or category as you type.
- Favorites & Recents: Mark favorite streamers and access recent streams from dedicated menus.
- Customizable Hotkeys: Remap playback and menu shortcuts in
config.ini. - Themes: Choose or create interface color themes.
- Plugin System (Beta): Add custom stream sources or actions with Python plugins.
- Clipboard Integration: Copy stream URLs/metadata directly from the terminal.
- Expanded Platform Support: Now includes even more streaming services.
- Adaptive Quality: Remembers your preferred quality per platform.
- Enhanced Logging: Log rotation and adjustable verbosity.
- Faster Startup & Lower Memory Use
- Bug Fixes: Improved Unicode, stability, and cross-platform support.
✨ Upgrade Highlights
- Favorites & recents menus
- Customizable hotkeys and themes
- Plugin support
- More platforms and better stream handling
💾 Upgrade
pip install --upgrade streamwatchStreamwatch v0.3.1 - The Enhanced CLI Experience! ✨
🚀 StreamWatch v0.3.1 is here, packed with major enhancements for a smoother, more informative, and user-friendly command-line streaming experience!
This release marks a significant evolution of the tool, including a new name, a more powerful interface, and many under-the-hood improvements.
🌟 What's New & Improved
Major User Experience Upgrades
- rebranding of the entire tool.
- Enhanced Stream Display: Live streams are now shown with Username, Platform, and Category/Game, providing much richer information at a glance.
- Arrow Key Navigation: Select live streams or options in dialogs using your ↑↓ arrow keys for a more intuitive experience. Direct number input is also supported.
- Interactive In-Playback Controls: While a stream is playing, control it directly from your terminal!
[S]top Stream[N]ext /[P]revious Live Stream[C]hange Quality (fetches available qualities and relaunches)[M]ain Menu (stops current stream and returns to the main menu)[D]onate to Developer (opens support link)[Q]uit StreamWatch
- First-Time User Experience: A welcoming message and guidance for new users on their first launch.
- "Play Last" Quick Access: New
[P]option in the main menu to quickly replay the last successfully watched stream.
Configuration & Robustness
- User Configuration File (
config.ini):- Customize
stream_quality,max_workersfor checks,streamlink_timeouts, and thedonation_linkdirectly in a user-specificconfig.inifile. - StreamWatch creates this file with defaults on first run. (See README for location)
- Customize
- Persistent Logging: Detailed logs are now saved to
streamwatch.login your user config directory, making troubleshooting much easier. (See README for location) - Stream Reconnection Attempts: If a playing stream temporarily drops, StreamWatch will now attempt to reconnect for approximately 30 seconds before returning to the menu.
Platform Support & Display
- Expanded Platform Parsing: Significantly improved parsing and metadata extraction for ~20 top streaming platforms (including YouTube, Twitch, Kick, TikTok, BiliBili, various European broadcasters, and more) for more accurate username and category display.
- Refined YouTube Handling: Better distinction between channel URLs and video URLs, with improved channel name and live video title extraction.
General
- Colorful Interface: Enhanced visual appeal and readability using the
richlibrary. - Various bug fixes and performance tweaks.
✨ Key Changes Summary
- New Name: Project rebranded to StreamWatch. (Package on PyPI:
streamwatch) - Interactive Stream Selection: Use arrow keys!
- In-Terminal Playback Controls: Manage your stream without leaving the terminal.
- User
config.ini: Customize your experience. - Better Metadata Display: Know more about what's live.
💾 Installation / Upgrade
To install or upgrade to StreamWatch v0.3.1:
pip install --upgrade streamwatch