# Changelog All notable changes to Emby Insights are documented in this file. The project follows [Semantic Versioning](https://semver.org/): - **MAJOR** releases contain incompatible changes. - **MINOR** releases add backwards-compatible functionality. - **PATCH** releases contain backwards-compatible fixes. ## [0.17.0] - 2026-08-10 ### Added - Push notifications are now turned on in Verwaltung instead of the `.env` file — no more `VAPID_PUBLIC_KEY`/`VAPID_PRIVATE_KEY`/`VAPID_SUBJECT` variables to generate and paste in. The server creates its own keypair the first time it's enabled and keeps it stable afterwards. Existing installs that already had a VAPID keypair in `.env` keep using that exact keypair automatically, so nobody's browser subscription breaks. This also sidesteps the Unraid Community Applications quirk where the `VAPID_*` template fields never reached an already-installed container (see 0.16.4's README note, now removed — it no longer applies). ## [0.16.6] - 2026-08-10 ### Fixed - The settings save button is no longer sticky, so it can't hover on top of the connection cards while scrolling — it now sits as a plain block at the end of the page. - On the detail screen, the poster's bottom edge now lines up exactly with the bottom of the action buttons, on every title, instead of leaving a gap that depended on guesswork. - On phones, the line spacing between "Emby" and the added-on date is tighter — a leftover flex gap was doubling up with the wrap spacing. ## [0.16.5] - 2026-08-10 ### Fixed - On phones, "added on" now actually wraps onto its own line below "Emby" instead of trailing beside it — the previous fix relied on flex-wrap, which was never turned on. - On the detail screen, the poster reaches further down, closer to level with the action buttons. ## [0.16.4] - 2026-08-10 ### Fixed - On phones, the "added on" date under a title no longer overlaps the ratings line below it. - The admin settings save button no longer floats transparently over the connection cards behind it. - On the detail screen, the poster now reaches down closer to the action buttons, and the whole page sits a bit lower under the close button. - On the profile page (phones), account details no longer drop below the watchlist and ratings rows. ## [0.16.3] - 2026-08-10 ### Changed - "This is on Emby" now always sits in the same spot, just above the ratings, whichever screen you opened the title from. It used to appear down beside the request button on titles found through Discover. - On phones the detail page is tighter, and the buttons moved below the star rating instead of squeezing into the narrow column next to the poster. ## [0.16.2] - 2026-08-10 ### Changed - Titles from your library now carry a quiet source line — a green dot, "Emby", and the date it was added — instead of a bright green "available" badge on every film you had not watched yet. - Buttons are less rounded. ## [0.16.1] - 2026-08-10 ### Fixed - Opening a title from the new most-watched rows showed the request view instead of the library view, so the star rating and the favourite button were missing. Those titles now open your own Emby entry. - The "Full history" button was in English even with German selected. ### Changed - Availability now reads as a small glowing dot with "Available on Emby" instead of a pill that looked like a button but did nothing. - The detail page starts lower on desktop, so the poster no longer touches the top edge. ## [0.16.0] - 2026-08-10 ### Added - Two new rows on Heute: the movies and shows watched most in this household over the last 30 days, numbered by rank, with a tick on the ones you have already seen. They need Tracearr and stay hidden without it. - The media detail page was rebuilt: plot and cast now sit behind a button, so the ratings and the buttons are visible right away. Household plays and viewers moved into two tiles, and the heart is now a labelled button. ### Fixed - The container could exit right after starting when no VAPID keys were set. Push notifications are optional again: without keys the feature simply stays hidden instead of stopping the app. The Unraid template now offers the three keys as optional settings. ## [0.15.5] - 2026-08-09 ### Added - Titles from your own library now show IMDb and Rotten Tomatoes ratings too, not just the ones found through Discover. ### Fixed - When the ratings cannot be fetched, the reason is now written to the container log. They used to disappear without a trace, so an expired OMDb key and a film that simply has no ratings looked identical. ## [0.15.4] - 2026-08-09 ### Changed - Ratings now show the Rotten Tomatoes tomato — fresh or splat, depending on the score — and the IMDb badge, instead of the letters "RT" and "IMDb". - The transcode tile moved down to the charts, where every device fits on screen at once instead of hiding behind a tap. ## [0.15.3] - 2026-08-09 ### Added - The transcode tile on Statistik now opens up to show which devices caused the transcodes, so you can tell which player is making the server work. ### Changed - The German label for that tile now reads "Transcodiert" instead of "Umgewandelt". ## [0.15.2] - 2026-08-09 ### Fixed - When a section like Statistics stays empty, the reason is now written to the container log instead of being discarded. Missing plugin, wrong Emby key and unreachable server used to look identical from the outside. ## [0.15.1] - 2026-08-09 ### Fixed - The app still showed v0.14.2 as its version after updating to v0.15.0. ## [0.15.0] - 2026-08-09 ### Added - Tracearr can now be connected as an optional extra source in Verwaltung. It adds a full genre breakdown instead of just one favourite genre, a list of titles you started but never finished, how much of your playback had to be converted, and who else in the household watched a title. Leave it off and everything stays exactly as before. ## [0.14.2] - 2026-08-08 ### Added - Push notifications for new messages, new episodes, and available requests — no separate app or service required. Turn them on with a simple toggle in your profile; you'll get a confirmation message, or setup help if your browser blocked them. - The series progress list now shows which episode is next, how many are left, and the next air date when known. ### Fixed - Push notifications failed to activate, and weren't arriving on iPhone. - The refresh button no longer jumps back to the home page. - The next episode wasn't showing for some series in the progress list. - The series progress list could crash without Sonarr/Radarr set up. - One user could no longer receive push notifications by unsubscribing someone else's device, and new subscribers could get a burst of catch-up notifications on their first check. ## [0.12.1] - 2026-08-08 ### Fixed - New installations now default to English instead of German (database column default, env seed, backend normalisation, and frontend fallbacks). Existing installs that already have a language stored keep their current setting. ## [0.12.0] - 2026-08-07 ### Added - Englische Übersetzung der Oberfläche, umschaltbar über die Verwaltung (Deutsch/English). Die Sprache gilt global für alle Nutzer und wird in Postgres gespeichert. Inhalte von Demnächst (Radarr/Sonarr/TMDB) bleiben unverändert von der `ComingSoonRegion`-Einstellung abhängig. ## [0.11.8] - 2026-08-07 ### Fixed - Seerr-Suche unter "Anfragen": mehrwortige Suchanfragen (z.B. "Star Wars") lieferten keine Treffer, weil das Leerzeichen als "+" statt "%20" kodiert wurde und Seerr das nicht als Leerzeichen zurückdekodiert hat. ## [0.11.7] - 2026-08-07 ### Fixed - Suchfeld unter "Anfragen" auf Mobilgeräten: Schriftgröße auf 16px erhöht, damit iOS Safari beim Fokussieren nicht mehr hinein- und danach nicht wieder herauszoomt. ## [0.11.6] - 2026-08-03 ### Changed - "Neu für dich" steht auf der Startseite jetzt ganz oben, vor "Was ich gerade schaue". ## [0.11.5] - 2026-08-03 ### Added - "Neu für dich" zeigt jetzt auch neue Folgen bereits bekannter Serien, nicht mehr nur neue Filme und komplett neue Serien. - Der Button im Serien-Detailscreen unter "Noch nicht fertig" heisst jetzt "Als gesehen markieren" statt "Ausblenden" — ein Klick markiert die Serie in Emby als vollstaendig gesehen, statt sie nur aus der Liste zu verstecken. Dadurch zaehlt sie danach auch in der Statistikseite unter den abgeschlossenen Serien. ## [0.11.4] - 2026-08-02 ### Fixed - Ist Seerr eingerichtet, oeffnen die Kacheln aus "Demnaechst" und "Im Kino" wieder dessen Detailscreen. 0.11.0 hat sie bedingungslos auf den neuen Radarr/Sonarr-Screen gelegt — auf einer vollstaendig eingerichteten Instanz gingen damit Besetzung, Crew und Staffelliste verloren. Der Kalender-Screen greift jetzt nur noch, wenn Seerr fehlt oder keine TMDB-Id vorliegt. ## [0.11.3] - 2026-08-02 ### Changed - Das Vorschaubild liegt als WebP statt als PNG vor: 104 statt 1467 KB bei gleicher Aufloesung und ohne sichtbaren Unterschied. Es steht jetzt auch oben in der README. - Das Logo hat keinen undurchsichtigen Hintergrund mehr, SVG und PNG sind transparent. ## [0.11.2] - 2026-08-02 ### Changed - Neues Vorschaubild (`og.png`) fuer Link-Vorschauen. - `icon-192.png` heisst jetzt `emby-insights-logo.png`, passend zum gleichnamigen SVG. Die Apple-Touch-Icon-Referenz zeigt entsprechend nach. ## [0.11.1] - 2026-08-02 ### Fixed - Ein Poster, dessen Bild sich nicht laden laesst, zeigt jetzt wirklich den Platzhalter. 0.10.0 hat serverseitig 502 auf 404 geaendert, das war aber nur die halbe Miete: ein `` mit einer URL, die nicht liefert, zeigt im Browser weiterhin das kaputte Bild-Icon. Der Platzhalter wurde nur gerendert, wenn gar keine URL vorlag — also genau dann nicht, wenn man ihn braucht. Betrifft alle Poster, Staffelbilder und Besetzungsfotos. ## [0.11.0] - 2026-08-02 ### Added - "Demnaechst" und "Im Kino" haben einen eigenen Detailscreen, der ohne Seerr und ohne TMDB auskommt. Radarr und Sonarr liefern in ihrem Kalender bereits die volle Movie- beziehungsweise Series-Resource; davon wurden bisher fuenf Felder dekodiert. Beschreibung, Genres, Laufzeit, Jahr, Altersfreigabe, Bewertung, Studio und Hintergrundbild kommen jetzt mit, ohne einen einzigen zusaetzlichen Aufruf. Neuer Endpunkt `GET /api/media/comingsoon`. - Der Anfrage-Knopf bleibt sichtbar, wenn Seerr nicht eingerichtet ist, und nennt den Grund, statt einfach zu fehlen. ### Fixed - Serien aus dem Sonarr-Kalender hatten ohne TMDB gar keine ID und liessen sich deshalb nicht oeffnen — auch mit eingerichtetem Seerr nicht. Die Uebersetzung der TVDB- in eine TMDB-ID ist selbst ein TMDB-Aufruf; ohne den wurde eine leere ID vergeben und der Eintrag trotzdem angezeigt. Eintraege tragen jetzt die ID des Dienstes, aus dem sie stammen. - Anfragen sind nur moeglich, wenn eine echte TMDB-ID vorliegt. Sonarrs TVDB-ID als TMDB-ID an Seerr zu schicken, haette den falschen Titel angefragt. ## [0.10.0] - 2026-08-02 ### Changed - Poster von den Artwork-CDNs laufen jetzt ueber die eigene Herkunft. Seerr, Radarr und Sonarr liefern absolute URLs auf `image.tmdb.org` beziehungsweise `artworks.thetvdb.com`; die werden auf `/api/artwork` umgeschrieben und dort serverseitig geholt. Damit steht `img-src` wieder auf `'self'`, und die CDNs erfahren nicht mehr, welche Titel ein Nutzer ansieht. Der Proxy prueft den Ziel-Host gegen eine feste Liste, holt ueber den gehaerteten HTTP-Client (nur oeffentliche Adressen, keine Redirects, hartes Timeout) und leitet den Content-Type aus den Bytes ab. ### Fixed - Ein Item, dessen Bild Emby nicht ausliefern kann, zeigt jetzt den Platzhalter statt eines kaputten Bildes. Bisher galt nur ein `404` als "kein Bild"; bei einem `500` — was Emby bei defekter Bilddatei liefert — antwortete die App mit `502`. - Tracking-Eintraege ohne zwischengespeichertes Poster lieferten die beim Bewerten festgehaltene URL aus. Fuer Emby-Eintraege ist das die LAN-Adresse des Servers: ausserhalb des Netzes nicht erreichbar und hinter HTTPS als Mixed Content blockiert. Solche Adressen werden nicht mehr ausgeliefert. ## [0.9.5] - 2026-08-02 ### Fixed - Poster aus Seerr, TMDB, Radarr und Sonarr wurden seit 0.9.0 nicht mehr angezeigt. Die in 0.9.0 eingefuehrte Content-Security-Policy des Dokuments erlaubte mit `img-src 'self' data: blob:` nur Bilder von der eigenen Herkunft — Emby-Poster laufen ueber `/api/images` und waren deshalb weiter sichtbar, alles von den Artwork-CDNs wurde vom Browser verworfen. `img-src` erlaubt jetzt zusaetzlich `image.tmdb.org` und `artworks.thetvdb.com`. - Ein Test prueft die CSP des ausgelieferten Dokuments: erlaubte Bildquellen, Nonce im `script-src`, kein `unsafe-inline`, und dass jedes gerenderte `