* fix: add secret_str handling in middleware when using encoded_user_data
* fix: fallback only
* fix: get directly
* fix: use request.scope
* fix: await
* style: format
Introduced sorting and ordering functionality for MDBList, allowing users to customize the display order of items. Updated backend, frontend, and database schemas to support these options, including caching, API requests, and user interface enhancements. Adjusted styles and badges for better presentation of sorting information.
Reworked the caching logic to handle a missing cache key for "events" type gracefully. Integrated a new DLHD schedule service for improved event metadata and stream handling, leveraging fuzzy matching and IPTV-org data retrieval for enhanced TV channel mappings. Updated scraper configuration, enhanced genre handling, and added support for dynamic event descriptions.
Store UserData in redis if compress + encryption data length is more than 1000, or else directly setup in the url secret string. Replaces legacy encryption and decryption methods with an optimized `CryptoUtils` class supporting compression, improved encryption, and Redis-based storage.
Introduced mechanisms to handle preconfigured sensitive fields with masking and reset options in the UI. Extended User functionality to reuse existing encrypted configuration for sensitive fields when editing. Improved styling and user experience for managing credentials and secure configurations.
Replaced custom proxy implementation and `curl-cffi` with unified `httpx` and `aiohttp` proxy support using `requests_proxy_url` config from settings. Simplified and standardized HTTP client instantiations across various modules for improved maintainability and consistency.
Enhanced the stream sorting functionality to support sorting direction (ascending or descending) based on user preferences in both the backend and UI. Introduced 'SortingOption' in the schema to capture sorting criteria with direction, and updated the sorting logic to accommodate these changes. Additionally, modified the user interface to include buttons for toggling sort directions, providing a more intuitive sorting experience for users.
Introduce a system for toggling streaming providers, allowing specific providers to be disabled via configuration. Enhance error handling in user data decryption by adding validation checks and returning precise error messages in JSON responses. These changes improve flexibility for administrators and provide better feedback to users.
Moved Redis client setup to a new module `redis_database` and updated all references across the codebase. Also added a new configuration setting for redis_max_connections for better resource management.
Consolidate error handling logic across middleware components to improve maintainability. Adjust the order of middleware addition in the app for improved logging and user data access.
Removed git revision from the version string in the API response. Added a new field for branding description in settings and integrated it in the home template. Introduced VERSION argument and environment variable in the Dockerfile.
* Add configuration mode switch for user customization
Introduce a 'Configuration Mode' switch to toggle between 'Newbie' and 'Pro' modes, allowing users to select between simplified and advanced configurations. Updated CSS and JS to handle the display of specific settings and sections based on the selected mode, enhancing user experience and customization options.
* Update default language filters and sorting priority.
* Refactor stream filtering and catalog configuration.
Removed redundant catalog selection logic and refactored stream filtering to streamline the code. Updated configuration scripts and UI to align with new functionality, leading to cleaner and more maintainable code.
Enhanced the /health endpoint to perform an HTTP HEAD request to Google, returning the status code and response time. This change provides a more accurate health status and logs errors if the check fails.
* cleanup lifespan vars
* Show API process time in logs
* store the cache validation of full URL for live sports event
* Add support for filter only show cached streams
* Update default configs
* properly handle prowlarr exception on MaxProcessLimitReached
* Add redis lock mechanism to prevent concurrent live scrapers from multiple instances of stremio addon installation users
* Add Support for download streams via web browser & support disabling the metadata for imdb title
* Add env config to enable or disable download via browser feature
* Added new MediaFusion configuration setup for Kodi Add-On with QR code & Configure URL setup
* remove test codes & correctly generate qr code with existing secret
* feat: Sort & Filter stream languages, quality based on user preference
* feat: Use field aliases & compress after encrypt user data to reduce the config user data size
* Refactor catalog parsing logic and add CatalogParsePipeline
* Update language handling in stream creation
* update packages
* Update README
* refactor parse torrent streams
* use lru cache for common function
* handle item checking
* address code review
* Update PTT & parse complete language
* cleanup