Skip to content

Align future-release detection and fix gap hydration for movies - #57

Merged
primetime43 merged 3 commits into
mainfrom
develop
Jul 7, 2026
Merged

Align future-release detection and fix gap hydration for movies#57
primetime43 merged 3 commits into
mainfrom
develop

Conversation

@primetime43

Copy link
Copy Markdown
Owner

This pull request updates the application to version 2.9.1 and makes several improvements to the handling of "future release" logic for missing media titles. The changes ensure consistent behavior between the backend and frontend when determining if a movie or TV show is unreleased, and improve the way missing movie data is hydrated from the cache.

Version bump:

  • Updated the application version to 2.9.1 in about.py and both environment files for frontend and backend. [1] [2] [3]

Future release logic consistency:

  • Refactored the _is_future_release function in scan_history.py to treat missing release dates the same for movies and TV shows, falling back to the year for both, and updated its usage accordingly. This matches the frontend logic and prevents movies with missing dates from always being considered unreleased. [1] [2]
  • Updated the frontend's RecommendedComponent to match the backend logic for future release detection, using the year as a fallback for both movies and TV, and treating unparseable years as released.

Cache hydration improvements:

  • Replaced the _cached_movie_part method with a new _cached_parts_by_id method in tmdb_service.py to more efficiently index cached collection parts by movie ID, ensuring missing movies can be hydrated with display data if available in any cached collection.

Make movie and TV future-release detection consistent across frontend and backend by removing the movie-only "no date means future" rule. When releaseDate is missing, both now fall back to year (and treat unparseable years as released), so reopened scan-history movie gaps from stripped/cold cache data are no longer hidden by default.
Hydration now builds a movie-id index from cached collection `parts` instead of relying on `_movie_collection_cache`. Missing gaps are not owned-library members, so they were never present in the old map and could not be rehydrated with poster/rating/genre/release data. This restores correct cache-based rehydration for saved gap entries.
Bump version to 2.9.1
@primetime43
primetime43 merged commit 73dcda5 into main Jul 7, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant