v0.2.08
What's changed
Bug fixes
- SiriusXM EPG source never auto-refreshing —
refresh_intervalwas left at 0 (disabled) on creation, so Dispatcharr's Celery Beat task was never enabled. Now set to 24 hours on create, with a one-time backfill for existing installs. - Prefixed channel names failed to re-match on subsequent runs — a channel already renamed to "036 Alt Nation" by a previous Sort no longer matched "Alt Nation" in the SXM dataset, causing it to drift to the unmatched tail every time Sort, Rename Channels, or Assign Logos ran again. Matching now strips any existing prefix first, across every affected action.
- Duplicate station matches silently collided — two channels matching the same real station number used to receive the identical channel number with no warning. Duplicate matches are now detected, the second is placed in the fill pool instead of colliding, and both are named in the result message.
New features
- Force Category (Series Mode) and Synthesize Episode Numbers From Air Date on EPG Transform — writes categories/season/episode into program data so Dispatcharr's own XMLTV output includes
<category>and<episode-num>tags, letting Plex treat same-titled programs as distinct recordable episodes instead of one movie (#17) - Absolute SXM channel numbering on Sort — channel number = Sort Start Number + real SXM station number, preserving lineup gaps instead of packing channels sequentially. Only offsets confirmed API-matched channels — sport-block and name-guessed matches are never treated as real station numbers. Requires an explicit Numbering Block Size (no silent default) — verified against a real 431-channel provider lineup (99.8% of channels ≤ 999)
- Station-number name prefix (zero-padded or plain), applied whenever Sort runs
CI / Infrastructure
- High-confidence SiriusXM lineup renames (same station number, name changed) now auto-write to
channel_aliases.jsoninstead of sitting unactioned in weekly issues - Orphaned logo cleanup is now targeted at exactly the channels a run's diff confirms were removed, never a blanket sweep
- The weekly lineup-change issue now reports real post-cache logo status instead of static boilerplate
Checksums
MD5: 8e91a62d81a8de235457108aee48a224
SHA256: 0f278e13551fdc86ffa2e4b362dbed991bf2830b6de7272933bdad6b80e037ad