Commit graph

55 commits

Author SHA1 Message Date
Antonin Lenfant-Kodia
c769bd08f0 feat(usenet): improve NZB status messages and documentation
- Update README.md to include Premiumize as a Usenet provider
- Add documentation for Sonarr/Radarr SABnzbd connection
- Update status messages to use 'NZB' instead of 'Torrent' for Usenet downloads in frontend and backend
2026-05-18 22:37:14 +02:00
omgbeez
5c71ecc211 Mem and CPU perf fixes 2026-04-21 22:19:06 -04:00
Roger Far
66bd4560a8 Run formatters. 2026-03-14 13:41:30 -06:00
Roger Far
095a25f04a
Merge pull request #947 from AlexandreVassard/main
fix(symlink): strip duplicate torrent name from subpath
2026-03-14 13:26:56 -06:00
Alexandre Vassard
6743bd472e fix(symlink): normalize subpath first component before comparing torrent name prefix
The previous fix compared subPath directly against the sanitized torrent
name, which fails when RdName contains characters removed by
RemoveInvalidPathChars (e.g. ':' on Windows). Extract and normalize the
first component of subPath before comparing so both sides go through the
same sanitization. Add tests covering the duplicate-prefix stripping case.
2026-03-08 21:29:33 +01:00
Alexandre Vassard
1dd7ab9c8e fix(symlink): strip duplicate torrent name from subpath
torrent.Files[].Path already includes the torrent name as its first
component (e.g. "Hijack/Saison 1/file.mkv"), but GetDownloadPath was
also initialising torrentPath with torrent.RdName, causing the name
to appear twice (e.g. "Hijack/Hijack/Saison 1"). Strip the torrent
name prefix from subPath before combining so the resolved path matches
the actual rclone mount layout.
2026-03-08 21:15:34 +01:00
omgbeez
67afe189b5 Refactor TorBoxDebridClientTest to include IRateLimitCoordinator and improve test consistency across methods. Updated logging and error handling for rate-limiting scenarios. 2026-03-07 17:57:42 -05:00
Roger Far
41f816ab80 Cleanup. 2026-02-23 20:04:53 -07:00
Roger Far
81dd3dd9f8
Merge pull request #923 from omgbeez/upstream/resilience
Add resilience handler, predictive rate limit handling
2026-02-23 08:36:35 -07:00
omgbeez
6d0cb6ceb5 Minor fixes for Qodo 2026-02-20 10:34:30 -05:00
omgbeez
ed397f8223 Update Logger to use TorrentRunner.GetStats for consistent download statistics 2026-02-20 09:57:57 -05:00
omgbeez
a023d33d90 Add resilience handler, predictive rate limit handling
- Applied to TorBox, can be extended easily to other providers
- Reads response headers commonplace for pre-emptive rate limit throttling and retry-after
- When a rate limit is reached, displays a warning in the UI
- Fix socket leak from direct allocation of HttpClient, replaced with factory which handles pooling and re-use of sockets.

While HttpClient is Disposable, it doesn't gaurantee (and does not) directly release underlying sockets for queries at the time the client is disposed. These sockets will go into a TCP WAIT state often for a very long time. The expected pattern in C# is to always use the HttClientFactory which will correctly handle re-use of the OS sockets in suqsequent queries reducing resource and memory leaks.
2026-02-20 09:47:13 -05:00
Roger Far
d6020594ef Cleanup. 2026-02-18 21:34:51 -07:00
omgbeez
e93e4f6f22 Usenet support 2026-02-13 13:15:57 -05:00
Roger Far
a9648248f4 Global formatting. 2026-02-11 19:44:49 -07:00
destrodxbad
27398ba993 Add automatic disk space monitoring for Bezzad downloader 2025-11-09 03:05:56 +01:00
Cucumberrbob
2bbbf0fd10
Use ISynologyClient (mockable) and inject IDelayProvider so SynologyTorrentClient is testable 2025-02-17 22:00:19 +00:00
Cucumberrbob
daf8a9c6da
DownloadHelper: use IFileSystem for testable filesystem access 2025-02-17 21:57:02 +00:00
Roger Far
ef8142453f
Merge branch 'master' into fix/bad-download-path 2025-01-29 18:59:31 -07:00
Cucumberrbob
82f0bb8bbe
Use static GetSymlinkPath on AllDebridTorrentClient to get the symlink (since the behaviour is unique to the debrid service) 2025-01-29 12:11:25 +00:00
Cucumberrbob
beb0299a0b
revert changes to DownloadHelper.cs 2025-01-29 11:07:20 +00:00
YvesPa
eeef6fb7fe Merge remote-tracking branch 'rogerfar/master'
# Conflicts:
#	server/RdtClient.Service/RdtClient.Service.csproj
#	server/RdtClient.Service/Services/DownloadClient.cs
2025-01-22 19:11:23 +01:00
YvesPa
7d2d7fa35f Merge remote-tracking branch 'rogerfar/master' 2025-01-10 16:27:04 +01:00
Sculas
ee9e80f7d2
fix: Only apply AllDebrid-specific path fixes to AllDebrid 2025-01-06 12:41:41 +01:00
Roger Far
d5ee5d209c Changed how files are saved. 2025-01-05 20:56:37 -07:00
Sculas
268bb6826c
fix: Fix invalid download path with single-file torrents 2025-01-05 22:17:22 +01:00
Sam Heinz
9d03c20aaa [TB] Change DownloadHelper to use download.FileName
Also adds the UpdateFileName function to DownloadHelper & DownloadData to push FileName to DB
2024-12-10 23:47:55 +10:00
Sam Heinz
dffce96a45 [TB] Add default for fileName in DownloadHelper 2024-12-10 15:25:30 +10:00
Sam Heinz
c34c62f879 [TB] Move handling filenames from DownloadHelper to TorrentClients 2024-12-10 15:10:55 +10:00
Roger Versluis
ee5b5f8dc3 Upgrade to .NET 9, code cleanup. 2024-11-18 03:39:12 -07:00
YvesPa
d15b1a2c01 some changes for tests 2024-10-15 18:27:11 +02:00
YvesPa
c6beedf675 Correct RealDebrid renaming sometimes 2024-09-25 18:07:34 +02:00
Sam Heinz
446b1c0180 Fix error from merge from upstream, fix error on processing 2024-09-12 19:52:03 +10:00
Sam Heinz
0987b1f18c Merge remote-tracking branch 'upstream/master' 2024-09-08 23:57:33 +10:00
Roger Far
35f959ee26 Fixed the DownloadHelper creating ghost folders. Also don't delete the file when starting a symlink download.
Some checks failed
Docker Image CI / build (push) Has been cancelled
2024-09-03 19:59:21 -06:00
Roger Far
b66b864cae Revert "Prevent creation of download folders when using the symlink downloader."
This reverts commit 078bbe4bfb.
2024-09-03 19:14:36 -06:00
Roger Far
078bbe4bfb Prevent creation of download folders when using the symlink downloader. 2024-09-02 21:08:00 -06:00
Sam Heinz
c34f91fc27 Add UI elements for TorBox, fix downloads. 2024-08-28 17:05:56 +10:00
Roger Far
8dd0eec654 Add retry handler with polly to intercept 429 rate limit errors with Real-Debrid. 2024-07-13 19:54:36 -06:00
Roger Far
05dd562be1 Add logging for the symlink downloader.
Some checks failed
Docker Image CI / build (push) Has been cancelled
2024-04-10 17:56:11 -06:00
Roger Far
4fb0a8d726 Fixed issue where a lot of downloads could be tried in 1 go, causing a bit of a DOS to real-debrid, fixed the status of the torrent as error incorrectly when some downloads are errored out.
Some checks failed
Docker Image CI / build (push) Has been cancelled
2024-02-17 15:34:49 -07:00
Roger Far
a78ff95643 Try using the file/folder structure when downloading. 2024-01-21 22:35:28 -07:00
Roger Far
c83982a4d4 Add setting for aria2 to accomodate a download path that is different in aria2 than in rdt-client. 2024-01-05 14:30:49 -07:00
Roger Far
6ad51b036e Store the torrent name instead of the hash to the blackhole directory. 2024-01-05 10:37:07 -07:00
Roger Versluis
ee88fb50f5 Remove illegal characters from the download path. 2023-09-02 16:05:29 -06:00
Roger Versluis
a1e9b00d2d Remove illegal characters from the download path. 2023-09-02 16:04:51 -06:00
Roger Far
acfe320b8b Add more logging.
Some checks failed
Docker Image CI / build (push) Has been cancelled
2023-06-11 13:51:38 -06:00
Roger Far
7732649b4b Add request logging and include complete % in the logs. 2023-06-11 13:42:14 -06:00
Roger Far
ee9ce2840b Add support for multiple layers of compression in the unpack client. 2022-11-28 20:29:03 -07:00
Roger Far
e3b38d2834 Add nullable to the projects. 2022-05-13 18:51:04 -06:00