2.23.0 (2026-02-09)
Features
- add 'language' passthrough stage (b350c83)
- add
daysSinceFirstAiredanddaysSinceLastAired, refactor context constants assigment, cache resolved tvdb ids (1c16a5b) - add
latestSeasonconstant (2c4097f) - add
ongoingSeasonconstant (2314c7b) - Add hasNextEpisode and dasUntilNextEpisode SEL constants (#670) (bbed45d)
- add metadata to formatter. add star, pstar modifiers. add seScore, nSeScore, seMatched, rseMatched, nRegexScore attributes (a16c37f)
- add precache selector to allow customising when precaching happens and what is selected (8f864e9)
- add predefined tamtaro formatter (0207d20)
- add ranked regex filter (fb7880d)
- add ranked stream expressions with scoring sort (f5b5484)
- add sbitrate and update predefined formatters to use it (778a158)
- add sbytes number modifier (d98c377)
- add sort & filter for release groups (#682) (881054f)
- add synced stream expressions (c9b1508)
- Add toggle to show changes on save + confirm and reset changes (#648) (2ef5c4a)
- added EZTV as an builtin addon, uses EZTVs API to fetch torrents (#666) (b6a084d)
- allow toggling ranked stream expressions (b868e8d)
- Allow users to auto sync regex urls (#671) (794cfea)
- builtins/eztv: implement pagination (ee448a8)
- builtins: make use of torrent private flag (#644) (b1dd534)
- core/formatter: Add
slice(start, end),rsort,lsort, and numerical sorting tosort(#493) (65d1576) - core/formatter: explicitly handle arrays with $,^, and ~ modifiers for predictable behaviour and add string array modifier (6937689)
- debrid: implement adding torrent via download URL (#664) (98ba217)
- deprecate always precache with customisable precache SEL condition (11b6e05)
- frontend: add ability to reorder sel, regex, keyword and group addons (#646) (5f4737d)
- frontend: add Checkbox and CheckboxGroup components (4a2b94c)
- Override synced regexes (#689) (c864d9f)
- seadex: replace SeaDexAPI with SeaDexDataset (d7f04e6)
- sel: add
agein days constant for expression filters (b804961) - sel: add
seasonPackfunction (bc25eaf) - sel: add originalLanguage constant to expression filters (7fdd89d)
- sel: add regexScore and streamExpressionScore functions (f66bec5)
- sel: allow
seScoreandregexScorein values function (5834e18) - status: add maxStreamExpressionFilters and maxAddons to limits (c5e1b07)
- support skipping names in expressions starting with # (5c581ef)
- use global stream expression limit with global character limit (de8e052)
- use sbytes in predefined formatters (17fa20c)
Bug Fixes
- actually enable seadex by default (770fc7f)
- add thunder emoji to cached symbols in StreamParser (d0ef44d)
- add TMDB fallback for nextAirDate (#673) (d821bf4)
- allow partial user data in template (91254cb)
- allow streams when digital release is within tolerance window (#658) (9ced8ec)
- anime-database: handle new format (caa6047)
- builtins: fix library detection (6181e9c)
- builtins: only set private flag if torrent was parsed (#675) (ce7721b)
- Change default for BUILTIN_DEBRID_USE_TORRENT_DOWNLOAD_URL to false temporarily (2b38bf4)
- consistent score handling (db7d0d7)
- correctly handle falllback season pack detection (41dbd53)
- debrid: exclude private torrents from auto-removal (#694) (db78c2d)
- debrid: only add torrent via URL if it is not cached already (#696) (17b57b1)
- debrid: only add torrent via URL if it was downloaded before (#678) (df07f45)
- disable dynamic addon fetching during pre-caching (e3de765)
- don't use runtime of 1 min from cinemeta (c4c1a73)
- dont save report (efa488d)
- dont throw error on missing context on meta route (0e517bd)
- dont use volumes as season (69c66e4)
- enforce correct score range limits in ranked expressions (31975fa)
- extract names from expression filters for statistics (bf2f88c)
- fetcher: improve exit condition handling and logging during stream fetching (8f1a934)
- filterer: add truncation for long filter conditions in statistics (068bdb9)
- Fix excludedStreamExpressions for anime series in starter tempalte (d045720)
- fix seasonPack detection (b576804)
- frontend: allow negative inputs in score inputs in formatter preview (58e7cda)
- frontend: correct operator precedence in RPDB input conditional rendering (#683) (94b076c)
- frontend: fix layout inconsistency in ranked stream expression action buttons (1b9d249)
- frontend: show changes for ranked sel + future proofing (#668) (c8add1d)
- frontend: use correct function when loading templates (cad95b7)
- frontend: use correct state for SE matched input (7670302)
- handle enabled flag in RSE and add alerts to expression filter tab (36aa6fe)
- handle errors during syncing appropriately and keep resolved syncs cached for a minimuim of 24 hours (7904cbf)
- handle errors properly in checkNzbs (9599db2)
- handle torbox errors for usenet (03967d6), closes #582
- handle undefined score correctly during n score calculation (53679b0)
- improve file selection (f583201)
- include parsed titles and use seasonYear for selection (3a27125)
- include streams during formatter context creation (93d99f3)
- increase lock timeout for torbox usenet resolve during cache & play (1ce11fd)
- Move when bitrate is calculated (#672) (bddd417)
- pass resolved original language to formatter for uLanguages (91d2c52)
- presets/nekloBt: make api key optional (eb4acff)
- presets/subhero: update url (#667) (f55325c)
- remove accept-encoding header (6fba3da)
- round normalised scores (fda1063)
- seadex/api: lower timeout (9c2fc0d)
- sel: allow passing no release group to
releaseGroupto select any release group (82c5b33) - sel: rename
ageconstant todaysSinceRelease(ad12037) - sel: use -1 as default for daysSinceRelease and absoluteEpisode (b3b22f9)
- stremthru: add torrent filename as display name to magnet (#663) (cb6f3b5)
- update expression name extraction to handle multiple names (191ab56)
- update service data parser emojis (7742eed)
- usenet-stream-base: check webdav contents during checkNzbs (d2a0f31)
- validate ranked regexes (461130f)