Commit Graph

26 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
maxid
9e6851d055 remove unnecessary logs in the torrents module 2025-12-29 11:43:35 +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
39c88a0519 add retry and delete buttons to torrents table 2025-10-29 14:22:22 +01:00
maxDorninger
26d0ca567f add proper error handling if no usenet/torrent download client is available when getting all torrents 2025-07-16 13:23:26 +02:00
maxDorninger
40fc8d4323 add torrent manager class and update torrent service class 2025-07-10 00:31:09 +02:00
maxDorninger
28349641c0 format files 2025-07-09 23:56:34 +02:00
maxDorninger
5fd563944f extracting qbittorrent logic into separate class 2025-07-09 23:10: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
9360b88842 format code with ruff 2025-06-22 17:41:50 +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
1e79869d1e fix requests not working 2025-06-08 15:56:36 +02:00
maxDorninger
41222b2452 fix season requests not working 2025-06-08 12:08:49 +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
e22c16dc28 formatting files and adding support for jackett 2025-06-01 18:47:18 +02:00
maxDorninger
d21df4068b format code 2025-05-31 18:04:03 +02:00
maxDorninger
c2f707a1c9 fix automatic importing 2025-05-31 17:46:50 +02:00
maxDorninger
40c90d90ed feat: add automatic downloads for approved season requests 2025-05-31 13:45:50 +02:00
maxDorninger
88c72e3303 switch to uv and remove old logo.svg 2025-05-29 22:33:13 +02:00
maxDorninger
206df8b150 refactor: change folder structure 2025-05-29 15:36:35 +02:00