Improved existing subtitles management by offloading them from episodes/movies database tables to dedicated tables. #3104
+1,086
−463
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This Pull Request refactors the handling of subtitles in the codebase, focusing on enhancing the database representation of subtitles, consolidating subtitle-related logic, and fixing redundancy. It introduces new database tables (
TableEpisodesSubtitlesandTableMoviesSubtitles) to replace embeddedsubtitlesfields, with corresponding migrations and extensive updates to the surrounding logic for indexing, managing, and querying subtitles.Main changes:
TableEpisodesSubtitlesandTableMoviesSubtitlesfor externalized, structured storage of subtitles.subtitlesfields fromTableEpisodesandTableMovies(migrations/versions/0124f9e278fb_.pyhandles data migration).get_subtitlesutility function.subtitlesfields with dedicated relational database operations in multiple modules.store_subtitlesand store_subtitles_movie` functions to use the new table structure.TableEpisodesSubtitlesandTableMoviesSubtitles.This PR streamlines how subtitles are indexed, stored, and fetched, improving maintainability and resolving potential data redundancy issues.