Skip to content

Instantly share code, notes, and snippets.

@CarstenG2
Created March 4, 2026 21:24
Show Gist options
  • Select an option

  • Save CarstenG2/fb0a5911871c6908be63eb61161df237 to your computer and use it in GitHub Desktop.

Select an option

Save CarstenG2/fb0a5911871c6908be63eb61161df237 to your computer and use it in GitHub Desktop.
xShip PATCHED changelog (2026-03-04)
xShip PATCHED — Issues #40 through #68
Base: plugin.video.xship v2026.01.18 (michaz1988)
== 2026-03-04 ==
Source search fix: isFolder=True for clean context menu now works
correctly with source list displayed as directory after scan.
FSK age rating: movie listings show FSK rating (0/6/12/16/18)
from TMDB release_dates API. Shown in plot and as overlay.
Context menu cleanup: removed Kodi playback items (Play, Queue etc.)
from movie context menu via isFolder=True.
Source scan progress: fixed zero counts shown before early exit
when enough sources found.
Trailer v7: SmartTube detection fix for API 25 (sh -c wrapper for pm),
YouTube addon loadability check, SmartTube finish_on_ended support,
IMDB direct MP4 fallback without any player needed.
"Filme - Neu" listing: release-type aware, shows theatrical/digital/
physical releases with correct dates per type.
TMDB sort order preserved for all listings (popular, top-rated, etc.).
Genre shown in plot text.
TMDB filter settings: multi-select dialogs for release type, genre,
watch providers. Decade-grouped movie years. Best-rated vote threshold.
#64 — Skip captcha/popup hosters during scan, fallback during play.
Early exit when >= 3 good sources found.
#68 — listings.py ValueError when TMDB returns status_code 34.
FlareSolverr: Cloudflare bypass via external FlareSolverr instance.
Setting in RequestHandler section. Graceful degradation when disabled.
== 2026-03-01 (previous) ==
== Bug fixes ==
#40 — Python 3.12+ escape sequences + critical bugs
~74 regex patterns prefixed with r''. Four crashes fixed: evpKDF bytes
concatenation, log_utils exception, cleantitle.translate(), MutableMapping
import. Zero functional changes.
#41 — super_meta bug breaks actor movie listing
super_meta dict passed correctly to getSources(). Actor credit listings
now work.
#59 — Startup blocks 17s on unreachable SMB download path
Download path check moved to daemon thread with 2s timeout. Shows
"Download-Pfad nicht erreichbar" notification instead of freezing.
#50 — serienstream.to (s.to) xShip source provider
Complete rewrite of serienstream.py from xStream browser plugin to proper
xShip source class. TMDB title matching, s.to login, season/episode
navigation, hoster button parsing (German audio). VOE resolveurl support.
== Features / enhancements ==
#42 — Download manager support (JD1, JD2, MyJD, PyLoad)
Context menu "Download" entry for movies and episodes. Download manager
selected via addon settings. MyJD uses encrypted credential storage.
#48 — Medien-Info: stream resolution, codec, audio language
New context menu entry probes real stream URL. Shows resolution, codec,
FPS, bitrate, audio language. Supports MP4 (box parsing, 64KB fetch),
HLS, DASH. 20-second countdown with cancel support.
Bug fix: control.sleep(250) used seconds not ms — froze UI for 4 min
on slow-resolving providers. Fixed to control.sleep(0.25).
#54 — YouTube API key setup without modifying YouTube addon files
Writes api_keys.json to userdata at startup. Keys survive YouTube addon
updates. Never overwrites existing user-configured keys.
#55 — MyJD: sourceUrl for direct stream URLs
JDownloader receives the direct stream URL alongside the referrer page URL.
#56 — Kinoger: JD download via VOE redirect
VOE redirect URL resolved first and passed as download URL to JD.
#58 — Trailer context menu (TMDB + YouTube waterfall)
"Trailer ansehen" / "Watch Trailer" context menu. 6-step waterfall:
KinoCheck > TMDB-DE > YouTube-DE > Trakt > TMDB-EN > YouTube-EN.
Age-restricted videos pre-filtered. Duration filter 60-360s.
Only shown when YouTube addon is installed with API key.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment