Commit Graph

17 Commits

Author SHA1 Message Date
natarelli22
d8a0ec66c3 Support for handling Single Episode Torrents (#331)
**Description**
As explained on #322, MediaManager currently only matches torrents that
represent full seasons or season packs.
As a result, valid episode-based releases — commonly returned by
indexers such as EZTV — are filtered out during scoring and never
considered for download.

Initial changes to the season parsing logic allow these torrents to be
discovered.
However, additional changes are required beyond season parsing to
properly support single-episode imports.

This PR is intended as a work-in-progress / RFC to discuss the required
changes and align on the correct approach before completing the
implementation.

**Things planned to do**
[X] Update Web UI to better display episode-level details
[ ] Update TV show import logic to handle single episode files, instead
of assuming full season files (to avoid integrity errors when episodes
are missing)
[ ] Create episode file tables to store episode-level data, similar to
season files
[ ] Implement fetching and downloading logic for single-episode torrents

**Notes / current limitations**
At the moment, the database and import logic assume one file per season
per quality, which works for season packs but not for episode-based
releases.

These changes are intentionally not completed yet and are part of the
discussion this PR aims to start.

**Request for feedback**
This represents a significant change in how TV content is handled in
MediaManager.
Before proceeding further, feedback from @maxdorninger on the overall
direction and next steps would be greatly appreciated.

Once aligned, the remaining tasks can be implemented incrementally.

---------

Co-authored-by: Maximilian Dorninger <97409287+maxdorninger@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-22 15:21:19 +01:00
Marcel Hellwig
96b84d45db Adding some more new lints (#393)
Enable `UP` and `TRY` lint
2026-02-01 18:04:15 +01:00
Maximilian Dorninger
a39e0d204a Ruff enable type annotations rule (#362)
This PR enables the ruff rule for return type annotations (ANN), and
adds the ty package for type checking.
2026-01-06 17:07:19 +01:00
Marcel Hellwig
ff013ac76e ruff: enable I lint 2026-01-05 19:30:42 +01:00
Marcel Hellwig
97cb3b5c1e ruff: enable EM lint 2026-01-05 19:30:42 +01:00
maxid
bcd1ccfd21 enhance torrent deletion to remove associated media files if the torrent was not imported 2025-12-19 18:42:38 +01:00
maxDorninger
c251f8d2e4 fix faulty sqlalchemy join 2025-06-30 11:07:53 +02:00
maxDorninger
02807af6e9 format files 2025-06-24 19:32:21 +02:00
maxDorninger
d0c26f3e6e fix code for importing movies 2025-06-24 17:37:58 +02:00
maxDorninger
0e108b6756 add movie module 2025-06-23 20:59:13 +02:00
maxDorninger
302890171f refactor repository module to import NotFoundError from media_manager.exceptions and fix return statement in delete operation 2025-06-08 18:42:02 +02:00
maxDorninger
3d9e9d00d0 add get_torrent_by_id dependency, add 404 error message and make NotFoundException globally available 2025-06-08 18:40:30 +02:00
maxDorninger
d82f9a3d9e add back feature to auto import all torrents 2025-06-08 18:26:56 +02:00
maxDorninger
4c414d13ef refactor indexer module imports and format code 2025-06-08 17:51:47 +02:00
maxDorninger
1fddf876c8 refactor torrent module to use dependency injection and decouple tv and torrent module for better separation of concerns 2025-06-08 11:38:47 +02:00
maxDorninger
231c36efe0 run linter and formatter 2025-06-07 13:29:48 +02:00
maxDorninger
206df8b150 refactor: change folder structure 2025-05-29 15:36:35 +02:00