[COLOR red][B]Version 1.2.9[/B][/COLOR]
- Fixed scrape progress window staying open after a search returns no results (including unreleased episodes).
- When a source search finds nothing, now shows a Red Light style "No results found" dialog after the scrape progress window closes, with the Kodi dialog as a fallback if the skin window cannot open.

[COLOR red][B]Version 1.2.8[/B][/COLOR]
- Fixed playback progress / Trakt scrobbling (and Simkl, MDbList, etc.) not updating for TorBox and TorBox Cloud sources: v1.2.7 played those links with a bare Kodi player, skipping Red Light’s playback monitor and script.trakt.ids.

[COLOR red][B]Version 1.2.7[/B][/COLOR]
- Service (AM Lite): optional wait for Account Manager Lite Trakt sync only when script.module.acctmgr is installed; runs in the background so startup is not blocked. Fixes “Unknown addon id script.module.acctmgr” log spam and scrape/playback failing to start when AM Lite is not installed (regression from v1.2.6).

[COLOR red][B]Version 1.2.6[/B][/COLOR]
- TorBox Cloud (source search): fixed intermittent empty results — folder list cache call was invalid.
- Premiumize Cloud: faster, more reliable scrape (no early exit before internal_results).
- External: “Check for cached status” is Real Debrid only — All Debrid removed from this check (AD API changes; prior AD cache logic caused worse results). With the setting off, TorBox/Premiumize no longer call checkcached unless “Include uncached TorBox” is on. Torrent host threads get a short grace period after timeout.
- Cancel during playback/resolve returns straight to the sources results list (no empty resolve screen flash from re-entering play); progress dialog closes faster on cancel.
- Premiumize/TorBox cloud: episode files use exact S/E matching end-to-end; title filter no longer uses pack-range episode patterns (fixes episode 1 listing episode 2). Cancel during resolve stops retrying other sources and returns to the sources list instead of the episode browser.
- TorBox cloud scrape: restored v1.2.5 search speed by using cached mylist during source search (live bypass_cache only for Cloud Storage browse). Keeps RD-style title+year folder prefilter and per-folder fetch cap so large libraries do not hang.
- TorBox: Cloud Storage loads all torrent/usenet/webdl lists in parallel (faster, full list on open); only caches a complete fetch for quick Back navigation. Partial API failures are not cached and show a notification.
- TorBox: Fixed Cloud Storage folder browse on Kodi 21 (removed deprecated setInfo; use name/file_id from API). Cloud Storage list loads sequentially in the UI to avoid plugin thread errors; source search still uses parallel mylist fetch.
- Fixed debrid cloud (RD/PM/AD/TB) always appearing at the bottom when Show Results at Top is off: quality limits re-appended all cloud results after non-cloud links; they are now re-sorted into the normal provider/quality order unless Show Results at Top is enabled for that scraper.
- Premiumize Cloud: scrape via folder/list (same as Cloud Storage browser) instead of item/listall only — fixes empty results when files live under folders such as My Files, and is much faster on large mixed libraries. Filter-by-name off applies to title rules only; episodes still match S/E, movies still match year.
- Fixed source search hang when debrid cloud and External scrapers are both enabled.
- Fixed TorBox download saving files as the hashtag, instead of the filename.
- Other small fixes.

[COLOR red][B]Version 1.2.5[/B][/COLOR]
- Fixed Results > Choose Rescrape Actions crashing (KeyError) after Start Full Scrape was added: order labels and the Set Order dialog now support six priority slots (0–5).
- Fixed progress bar stuck on EXTERNAL after debrid/EasyNews scrapers finish: the External scrapers module name was treated as a pending internal provider, so the dialog waited for the full Results Timeout even when no torrent hosts were still running.
- Fixed External scraper phase taking much longer than Red Light v1.1.8: since v1.2.2, Debrid Cloud scrapers blocked the Coco/Magneto/Gears External module until every cloud API call finished (v1.2.4 added up to 25s more). Cloud scrapers still start first when enabled, but External runs in parallel again like v1.1.8.

[COLOR red][B]Version 1.2.4[/B][/COLOR]
- TorBox Cloud: cloud search now respects the Results Timeout budget and skips non-matching folders earlier, so a large TorBox library no longer blocks the entire source search when nothing matches.
- Source search: internal scrapers finish (or time out at 25s) before the external scraper phase starts, so external no longer sits at a red progress bar waiting on slow internal/cloud scrapers.
- Fixed Real Debrid (and other debrid) cloud results ignoring Show Results at Top: quality limits were re-appending all cloud results to the bottom after they had already been sorted to the top.
- Fixed All Debrid external cache check returning inconsistent results: API failures no longer mark every torrent as cached, hash matching is normalized to lowercase, invalid hashes are skipped, and instant/ready/cached flags are parsed more reliably from the magnet/instant API.

[COLOR red][B]Version 1.2.3[/B][/COLOR]
- Fixed skin widgets (e.g. Movies > Trending) staying empty after a settings DB upgrade: widget calls no longer block on settings bootstrap, failed Trakt list fetches are not cached, and widgets are silently reloaded with ReloadSkin only when sync_settings actually migrates or repairs an existing settings.db (not on every boot).
- Fixed slow startup and browsing after the v1.2.2 boot-crash fix: settings reads no longer hit SQLite on every call once properties are loaded, the database is not synced twice on boot, path-existence checks are skipped on the read path, and default-settings metadata is cached in memory.
- Fixed widget and skin list loads hanging ~5 seconds (or failing) after opening Red Light: the font/skin background thread now runs only in the service process, not in the plugin invoker where it blocked every widget exit.
- Fixed widgets staying empty after the above change: widget calls no longer bulk-load settings into window properties (which could fail silently); they read from a warmed in-memory DB cache instead when properties are not yet loaded.

[COLOR red][B]Version 1.2.2[/B][/COLOR]
- Fixed Kodi boot crash after upgrading from older versions when legacy settings.db contained invalid values. On boot the service migrates/sanitizes the database first, then loads settings into window properties after the GUI is up (so widgets and skin labels work). Skin/XML updates still run when Red Light is first opened.

[COLOR red][B]Version 1.2.1[/B][/COLOR]
- Fixed prescrape regression: "Start Full Scrape" no longer appears when only EasyNews or debrid cloud results are shown unless Check Before Full Search is enabled or external scrapers still need to run. Debrid cloud still runs before external scrapers when the provider is enabled.
- TorBox Cloud: episode search only returns files matching the requested season/episode (no longer lists every file in a season pack when the folder title matches).
- Start Full Scrape: clean second-pass scrape — resets state, applies Results limits/filters and external scraper settings. Configurable under Tools > Settings > Rescrape Actions > Start Full Scrape (After Prescrape) (default Prompt).
- Meta Accounts: TMDb Lists read access token is user-configurable (with restore default and test), same pattern as Trakt client credentials and the TMDb API key.
- External scrapers: All Debrid cached-result filter now uses the All Debrid instant API (per hash) instead of MediaFusion only, so "Check for cached status (RD & AD)" returns AD results again when torrents are on your account.
- External scrapers: fixed debrid cache check skipping re-query after a previous "not cached" result and failing to update when cache status changed (first pass empty, auto second pass).
- External scrapers: All Debrid instant check uses GET magnet/instant (documented API), accepts instant/ready flags, and does not mark every torrent uncached when the API call fails.

[COLOR red][B]Version 1.2.0[/B][/COLOR]
- TorBox Cloud: debrid cloud results (TorBox, RD, PM, AD) bypass Results quality/HDR/size filters — your cloud library is always shown.

[COLOR red][B]Version 1.1.9[/B][/COLOR]
- TorBox Cloud: Search Cloud Storage now runs before external scrapers when enabled (no separate Check Before Full Search required).
- TorBox Cloud: improved cloud matching and fresh mylist/file lookup during source search.
- AIOStreams: temporarily disabled in this release (no source searches or settings UI) while integration is fixed.

[COLOR red][B]Version 1.1.9~alpha[/B][/COLOR]
- AIOStreams: optional native source provider (Tools > Settings > Sources Accounts > AIOStreams > Enable). Uses HTTP Basic Auth username and password from your AIOStreams dashboard.
- AIOStreams: instance picker and Active base URL row show each preset with its full domain (Kuu, ElfHosted, Yeb, Midnight, or Custom).
- AIOStreams: Check Before Full Search and Autoplay Result toggles (same pattern as EasyNews and Debrid cloud scrapers).
- AIOStreams runs alongside Debrid, EasyNews, and external scrapers; P2P results are ignored.
- AIOStreams: optional result highlight colour under Tools > Settings > Results (provider highlight mode).
- Results: removed obsolete Easy Debrid and Off Cloud highlight colours.

[COLOR red][B]Version 1.1.8[/B][/COLOR]
- Fix rare scrape-screen lockup caused by thread exhaustion ("can't start new thread") by falling back to serial provider processing when new threads cannot be spawned.
- Sources results window now fails safely if initialisation errors occur, preventing stuck scrape dialogs that required a Kodi restart.
- Tools > Database & Cache Maintenance: added separate "Clear EasyNews Scrape Cache" and "Clear EasyNews Search History" actions.
- "Clear All Cache (Excluding Favorites)" now also clears EasyNews search history.
- Tools > Database & Cache Maintenance: removed obsolete "Clear Easy Debrid Cache" entry from menu and clear-all paths.
- EasyNews: added "Exclude Adult Results" toggle (Safe Search) in settings.
- Settings Manager: slowed help text autoscroll repeat timing to 7 seconds.

[COLOR red][B]Version 1.1.7[/B][/COLOR]
- Subtitles: SubMaker now supports selectable Subtitle Language in Settings (default English).
- Subtitles: Now a separate section in Settings > Playback.

[COLOR red][B]Version 1.1.6[/B][/COLOR]
- Subtitles: SubMaker added to Subtitles. Auto Enable Subtitles (default Off - as before). Local Subtitles or SubMaker (default Local). [B]To use SubMaker you need to enter your own SubMaker Manifest URL (https://submaker.elfhosted.com).[/B] Default language English. When SubMaker is selected, optional prefer Local Subs If Available (default On).

[COLOR red][B]Version 1.1.5[/B][/COLOR]
- Real Debrid: Limit parallel magnet resolves to 3 (semaphore) to reduce rate limiting when multiple sources resolve at once.
- Real Debrid: Optional "Free active download slot" setting (default Off). When enabled, removes one active torrent before adding a new one if RD already has 5 active downloads.
- Fix Autoplay Next Episode failing when the next episode scrape finishes after the current episode has ended.
- Expand EasyNews settings help text for Refresh Credentials, Fallback Search, Search Width, and Check Before Full Search.
- Settings Manager: pin INFO help panel below the settings list (matches list slide) and top-align description text for consistent placement.
- Settings Manager: fix INFO text autoscroll (fixed textbox height; faster scroll timing).

[COLOR red][B]Version 1.1.4[/B][/COLOR]
- TorBox: "Include Uncached Results (TorBox)" added under External Scrapers (default Off). When enabled, Uncached TorBox sort with the same provider priority as Cached TorBox (grey highlight).
- TorBox: "Notify when added torrents are ready in Cloud" added in Sources Accounts (default On).
- TorBox: Added History under My Services.
- TorBox: Fixed Download Pack not saving files locally.
- All Debrid, Premiumize, Real Debrid and Torbox History menus now fetch fresh data each time they are opened.
- All Debrid: My Services refresh on open. Cloud browse shows video files only.
- All Debrid: Fixed Cloud Storage crash.
- Premiumize: Fixed blank History or "No transfers" when transfers exist. Show In-Progress Transfers and clearer notifications when the list is empty or fails.

[COLOR red][B]Version 1.1.3[/B][/COLOR]
- TorBox: Fixed Download Pack picker failing with "No URL found for Download" due to a provider name mismatch in the pack file picker.

[COLOR red][B]Version 1.1.2[/B][/COLOR]
- Trakt: Collection, Watchlist, Personal/Liked lists, List items, Favorites, Watched History, and related calls now paginate (250 items per request) so lists above the old 1,000 cap will load in full. Ready for Trakt's lower per-page API limits.
- After updating from a previous version, run [B]Tools > Database & Cache Maintenance > Clear Trakt Cache[/B]. Otherwise cached lists may still show the old 1,000 item limit until the cache expires.

[COLOR red][B]Version 1.1.1[/B][/COLOR]
- EasyNews: Search Width (Focused / Balanced / Broad) to run wider Solr queries; optional refresh credentials, include unknown-language results when filtering, and fallback alias/season searches when the primary query returns nothing.
- EasyNews: clarified Filter Results by Name help text in Settings Manager.
- Trakt, Personal and TMDb Lists: Removing an item that is not in the list dialog standardised and now shows "Item not in list", not Failed or Error Removing from List.
- FenLightAM TMDb Lists bugs fixed.

[COLOR red][B]Version 1.1.0[/B][/COLOR]
- A small fix.

[COLOR red][B]Version 1.0.9[/B][/COLOR]
- Fixed online icons not loading on update. Please restart Kodi, python keeps old code in memory on a simple update.

[COLOR red][B]Version 1.0.8[/B][/COLOR]
- Menu and UI icons (flags, posters, etc.) load from GitHub (slimmer plugin). Addon icon and fanart remain bundled in the addon.
- Backing out of Trakt or TMDb authorisations no longer show a failure message (same as Debrid services). Real errors still notify.

[COLOR red][B]Version 1.0.7[/B][/COLOR]
- Torbox authorisation now a QR code or auto copy/paste into browser (on same device), instead of an API.
- Fixed Real Debrid copy/paste into browser, this was broken in FenLightAM. Clipboard copy now uses stdin instead of shell echo.
- Now using unique QR image filenames to avoid stale/cached QR codes.
- TinyURL now uses HTTPS and validates response.
- Backing out of Debrid authorisations no longer show a failure message. Real errors still notify.
- Wording in the Debrid authorisation dialogs rewritten and consistent, tailored to what each service supports.

[COLOR red][B]Version 1.0.6[/B][/COLOR]
- Fixed Torbox Cloud Storage files not playing. This was broken in FenLightAM.
- Added "Send URL to WebDL" to My Services > Torbox.
- Default Red Light fanart changed from local to special path.

[COLOR red][B]Version 1.0.5[/B][/COLOR]
- A few small fixes.

[COLOR red][B]Version 1.0.4[/B][/COLOR]
- Fixed Open External Scraper Settings.

[COLOR red][B]Version 1.0.3[/B][/COLOR]
- Fixed Torbox Cloud Storage (manually added web-links).
- Fixed database error on first run.

[COLOR red][B]Version 1.0.2[/B][/COLOR]
- Fixed external playback error. Apologies, an oversight.

[COLOR red][B]Version 1.0.1[/B][/COLOR]
- Fixed Trakt list contents not appearing from Trakt list search. Clear Trakt cache if you experienced this issue.

[COLOR red][B]Version 1.0.0[/B][/COLOR]
- Redundant options removed from Tools and Settings menus.
- Code cleaned up.

[COLOR red][B]Version 0.0.1[/B][/COLOR]
- Initial release.