3.1.0 (2026-09-24)
Features
- collections: choose which rows of a featured collection to import (26523cf)
- collections: feature Renoria's Starter Kit first (e2b1e68)
- collections: feature the TVGenie collection (f45cc2d)
- collections: feature two more community designs (65090e7)
- jellyfin: list an addon's text-only stream entries after the playable ones (c0d44e8)
- search: offer a self-hosted LumiereDB as a movie and series search provider (77c84cb)
- simkl: add any custom list by its link or id (066fb5b)
- watch-tracking: exchange favourites, drops and pauses through watch_state (086b135)
Bug Fixes
- catalog: serve a hidden catalog asked without a genre from the entry the warmer wrote (7ef886c), closes #739
- catalog: serve the same filtered page to every reader, in any order (0858b6f)
- http: send the addon's calls to itself past the outbound proxy (d7baa46)
- jellyfin: answer Next Up within a deadline (56fc3b7)
- jellyfin: give the server address from the instance's public host (5c3b7bf)
- jellyfin: keep sign-ins in the database and extend them on use (af08b30)
- jellyfin: let the most recent watch or position win between Jellyfin and the tracker (02fa8d4)
- jellyfin: name an episode on the dashboard when its series index is not held (4de2c18)
- jellyfin: page large library requests and carry on where the last page stopped (a70ae01)
- jellyfin: show the Latest rows unless a configuration turns them off (24b4fca)
- jellyfin: treat an unrecorded catalog length as unknown rather than empty (5fdae77)
- managers: refresh the cached configuration when a manager account changes (d681a81)
- publicmetadb: read every page of resume points (b047010)
- recommendations: say why a taste profile could not be built (039e622)
- recommendations: size reply budgets from the share thinking takes (d383922)
- settings: register the recommendation and connection tunables the code reads (0cd254a)
- simkl: build anime catalog metas from MAL's own record, in the list's order (6308c8a)
- simkl: check a V2 connection for changes at the interval its user chose everywhere (7490e6a)
- simkl: search on a V2 app as the connected account (6b9cd26)