Repository navigation
Show catalogs from any addon type and fix addon-based collections (TV + web) - #799
Conversation
…don sources
Addon catalogs were dropped unless their type was movie/series/tv/show, which
hid AIOMetadata anime/"all"/custom display types, podcasts and debrid libraries.
Any type is now kept, with the addon's own spelling, on TV and web.
- Catalogs: tolerate a bare-string `genres` (one item no longer fails the whole
catalog); only fall back to alias types the addon declares for that catalog.
- Collections: match the addon by its manifest id, ask the named addon for
catalogs its manifest doesn't list, send the manifest's type spelling,
percent-encode spaces, and keep addon-defined types in both folder tabs.
- Native items: keep the addon's own type for /meta and /stream; a live channel
("tv") opens and plays directly and is kept out of Continue Watching; items a
metadata addon re-lists belong to the installed addon that serves their meta.
- Requests: no /meta calls an addon's manifest can't answer, back off on 429,
and read installed addons once per catalog page (per-item reads caused an ANR).
- Home: show addon rows named after streaming services like any other row.
- Web: same catalog/collection/native-item changes; audio-only sources are not
failed by the video-frame watchdog.
|
Thanks for this contribution! Supporting more add-on catalogs and collections on TV and web is a useful improvement, especially the work to avoid repeated manifest parsing on large catalogs. I found three Android gaps to fix before merging:
The 111 focused web tests and 19 existing targeted Android tests passed; the additional fresh-device regression test failed as described above. Please add coverage for that restore case and strict |
Review follow-up: - Pass a native item's own add-on type (e.g. "tv", "Podcasts") through stream selection and /stream URL construction, so add-ons that declare only that type are not filtered out and live channels request /stream/tv/ instead of /movie/. - Keep the type in portable watch history (addonNativeType) and use it on restore; entries saved without it resolve the type from the owning add-on's manifest and remember it. - Encode catalog, meta and stream path segments with one helper (%20 for spaces). - Tests: fresh-device restore with an empty registry (with and without a stored type), strict tv/custom-type stream lookup, and meta URL encoding.
|
Thanks for the thorough review — all three points were valid. Fixed in 9b7cfad:
Coverage added: fresh-device restore with an empty registry (with and without a stored type), strict |
Why
Users reported that ARVIO hides catalogs that other Stremio clients show (AIOMetadata personal/anime/"all" lists, custom display types, debrid libraries). Catalogs were dropped unless their type was movie/series/tv/show, and Nuvio-style collections built on such addons loaded empty.
What changed (TV + web)
%20encoding, addon-defined types load in both tabs./metaand/stream; live channels (tv) play directly and stay out of Continue Watching; items a metadata addon re-lists are served by the installed addon that owns their ids.genresvalue no longer fails a whole catalog; no/metacalls an addon can't answer; back-off on 429; installed addons read once per page (fixes an ANR on large catalogs).Testing