Skip to content

Ether 0.2.53

Choose a tag to compare

@github-actions github-actions released this 31 Oct 08:22
· 20 commits to main since this release

This release fixes Plex Media Server watch-history migration for stripped and
stale history entries, fixes CSV import/export round-tripping and CSRF upload
checks in the admin console, and ensures foreground playback retries debrid
candidates that background speculative checks cannot evaluate without adding the
torrent.

Migration and Backups

  • Resolve stripped and stale Plex /status/sessions/history/all rows:
    Plex Media Server omits ratingKey, grandparentRatingKey, year, and
    <Guid> elements on historical play rows once an episode or movie has been
    upgraded, replaced, or removed from the library. Migration previews now index
    library shows and movies by title during the library scan, extract release
    years from originallyAvailableAt (YYYY-MM-DD) when year is omitted, and
    resolve stripped or stale (404) episode and movie history rows via library
    show/movie metadata and catalog search (including country suffixes such as
    (US) / (UK), trailing (YYYY) years, and normalized punctuation) (#152).
  • Prefer tmdb:// GUIDs and type-scoped external ID lookups: migration now
    checks tmdb:// <Guid> tags before imdb:// and tvdb:// tags, supports
    legacy Plex agent episode GUIDs (com.plexapp.agents.thetvdb://... and
    com.plexapp.agents.themoviedb://...), and scopes external ID lookups and
    migration searches by media type so GateMoviesByHomeRelease, library
    exclusions, or overlapping TVDB movie/show IDs never hide watched titles
    (#152).
  • Allow text/csv uploads on /api/adoption/migration/csv/preview: the
    admin CSRF gate (csrfOK) now permits same-origin POST uploads with
    Content-Type: text/csv (with X-Ether-Request: 1) on the CSV preview
    endpoint instead of rejecting browser CSV imports with HTTP 403 (#173).
  • Round-trip episode watch history in Trakt CSV exports and imports: Trakt
    CSV exports now write the series title, premiere year, and show TMDB/IMDb IDs
    alongside season, episode, and episode_title columns for episode entries,
    and PreviewCSV resolves type=episode rows via show TMDB/IMDb/TVDB IDs or
    show title + season/episode numbers (#174).

Debrid and Resolver

  • Foreground retry when a background debrid check cannot decide: when a
    speculative background check on Real-Debrid or TorBox cannot verify an unadded
    torrent without adding it to the account (core.ErrForegroundOnly), foreground
    playback now tries the higher-ranked release instead of skipping it in favor
    of a lower-ranked release already in the account (#175).