Version 0.4
Tag:
v0.4.0Published:
2025-11-21T23:08:15ZGitHub: https://github.com/cenodude/CrossWatch/releases/tag/v0.4.0
CrossWatch – v0.4.0
Whoop! Whoop! Another day, another new CrossWatch release – but this time we’re doing a big jump from 0.3.9 → 0.4.0. This is a big update and focuses on seeing what’s going on (Now Playing, clearer logs, visible schedules) and tightening control over what gets synced (server- and pair-level whitelists).
⚠️ IMPORTANT: this release can break existing setups until configs are refreshed.
Because 0.4.0 changes how config is read and how whitelisting works, it’s strongly recommended to refresh and save configs so everything lines up with the new behavior.
Most live testing for 0.4.0 was Plex/Emby/Jellyfin → SIMKL. I can’t realistically test every possible scenario in CrossWatch, so please keep that in mind. The sync progress bar still acts up sometimes; fixing it properly needs bigger changes and is planned for v0.5.0.
✨ Highlights
Now Playing bar
A strip at the bottom shows what you’re currently watching.
Hover to see title, year, episode info, and a live progress bar.
Completely pointless… which is exactly why it exists...why not?
Library whitelisting (server-level & pair-level) - experimental
In provider settings you can define server-level whitelists for Plex / Jellyfin / Emby, limiting which libraries CrossWatch ever touches for history and ratings.
Each sync pair now has its own pair-level whitelist, so one pair can sync only Movies while another focuses on Kids or TV-Shows—all within the allowed server scope.
Updated Analyzer to be pair-level whitelisting aware.
In Settings → Insights, CrossWatch now shows a dedicated Whitelisting section.
IMPORTANT read the WIKI on how it exactly works and their limitations: https://github.com/cenodude/CrossWatch/wiki/Libraries-whitelisting
Improved scheduled syncs
Scheduled syncs now use the same path as the big Synchronize button.
Finished schedules show up in Dashboard → Insights (including Recent syncs), so you can actually see what ran and when.
Improved Plex / Emby Watcher
Watcher now follows your main server settings more strictly. It reads the Authentication Providers settings and cannot be changed in the Watcher anymore.
Detects your Plex / Jellyfin / Emby connection as soon as you open Settings → Scrobbler, so in the best case no full reload is needed. If it doesn't work, do a manual refresh.
When you choose Trakt, SIMKL, or Both as the sink, CrossWatch checks that those accounts are connected and tells you what’s missing (if any).
Watchlist Preview toggle
In Settings → User Interface you can hide or show the Watchlist Preview on the main page. Default is enabled.
Sync modules / adapters
mdblist adapter promoted to version 1.0.0 (stable).
Jellyfin adapter promoted to version 1.0.0 (stable but still can have some new issues) - had some major code changes.
Emby adapter promoted to version 1.0.0 (stable but still can have some new issues) - had some major code changes.
SIMKL adapter promoted to version 2.0.0 (stable and advanced).
Clearer watcher/webhook activity logs by centralized logger
All automatic plays now use one clean, readable log style through the centralized logger.
🔧 Fixes & Changes
Fixed: scheduled syncs running “invisibly” – they now refresh Insights and appear in Recent syncs just like manual runs.
Fixed: Jellyfin and Emby server-level whitelisting. This wasn't correctly implemented as it was using folder ID's and not Library ID's. Fixed now.
Fixed: Emby Watcher no longer disappears when server IDs are wrong.
Fixed: Settings screen no longer cuts off the bottom buttons on smaller windows.
Fixed: “Not connected to Plex” showing even when Plex was already configured in the scrobbler/ watcher section.
Change: better settings hydrating, sometimes /api/config settings were not hydrated and needed UI refresh.
Change: Watcher Start button stays disabled until Plex/Emby and the selected sink (Trakt / SIMKL) are properly connected.
Change: Webhook logs stay visible and consistent when debug logging is on.
Change: Pair library selector now respects server-level whitelists and clearly shows which libraries are selected.
Change: Fallback code removed from Plex module; be sure to configure your Plex settings correctly.
Change: Added two additions to maintenance, reset currently playing and Restart CrossWatch (restart container).
Change: Empty pairs (no features) are now properly skipped in the orchestrator. Also added a warning in the pair-config that no features are enabled.
Change: Added a /scripts/ folder where utility scripts will be stashed, like Emby/Jellyfin cleanup tools.
Change: Added configuration status dots in Authentication Providers (green neon pulse when configured).
From 0.4.x onward the project will phase out much of the “safety” fallback code that used to make CrossWatch less user-proof. That means it’s now extra important to read the WIKI before using CrossWatch, so your setup matches how the app is meant to be used.