Commit graph

341 commits

Author SHA1 Message Date
Cucumberrbob
75f115fd42
[TB] Make zipped downloads optional 2025-04-13 14:47:12 +01:00
Roger Far
2eddeaecb7
Merge pull request #747 from Cucumberrbob/feat/ignore-updates
feat: Allow ignoring update notifications (but notify anyway if GHSA found)
2025-03-21 15:04:37 -06:00
Roger Far
2be825e248
Merge pull request #741 from Cucumberrbob/feat/ad-rd-exclude-all-fail-torrent
feat: [AD] [RD] don't download anything when all files excluded
2025-03-21 14:14:18 -06:00
Roger Far
0b7749376a
Merge pull request #735 from Cucumberrbob/fix/tb-include-version-in-user-agent
include version when setting torbox api client useragent
2025-03-21 14:12:30 -06:00
Cucumberrbob
93fac23128
run dotnet format 2025-03-16 15:34:25 +00:00
Sam Heinz
afc7d1a964 [TB] fix: replace Contains with EndsWith 2025-03-17 00:50:51 +10:00
Sam Heinz
7a822bef5c [TB] fix: extract folder move logic 2025-03-17 00:28:19 +10:00
Sam Heinz
7d1aeed85c
[TB] fix: getting provider in UnpackClient
Co-authored-by: Cucumberrbob <128094686+Cucumberrbob@users.noreply.github.com>
2025-03-16 23:33:17 +10:00
Sam Heinz
bd96795f34 [TB] fix: moving hash dir files too far up 2025-03-16 20:45:34 +10:00
Sam Heinz
9d57466472 [TB] fix: download urls still not returning filename via HEAD. 2025-03-16 20:45:34 +10:00
Sam Heinz
fd7bc529c8 [TB] fix: move MoveHashDirectoryUpTB to TorBoxTorrentClient 2025-03-16 20:45:34 +10:00
Sam Heinz
bf023b333b [TB] fix: run MoveHashDirectoryUpTB only once
Signed-off-by: Sam Heinz <54530346+asylumexp@users.noreply.github.com>
2025-03-16 20:45:30 +10:00
Sam Heinz
7019c79814
[TB] fix: CLR type names in UnpackClient
Co-authored-by: Cucumberrbob <128094686+Cucumberrbob@users.noreply.github.com>
2025-03-15 22:20:50 +10:00
Sam Heinz
6b211c6e7c [TB] fix: getting provider in UnpackClient
Co-Authored-By: Cucumberrbob <128094686+Cucumberrbob@users.noreply.github.com>
2025-03-15 22:19:58 +10:00
Sam Heinz
9525498671 [TB] fix: get files from torrent name folder in TB zip 2025-03-13 00:35:42 +10:00
Sam Heinz
edf443adfc [TB] fix: move files from hash folder in TB zips to root download dir 2025-03-13 00:24:43 +10:00
Sam Heinz
10176357e4 [TB] fix: unpacking zip downloads
may have unintended consequences by fixing this as it may now unpack zips in individual file downloads that aren't intended to be unpacked?
2025-03-12 23:05:19 +10:00
Sam Heinz
ea9c90552b [TB] fix: timeout to use settings timeout val 2025-03-12 22:50:18 +10:00
Sam Heinz
087653e5b6 [TB] fix: calling fileFilter twice in getdllinks 2025-03-12 22:27:48 +10:00
Sam Heinz
85a0e7b04f [TB] fix nit about bool -> var 2025-03-12 22:18:15 +10:00
Sam Heinz
dc9c7ff050 [TB] Add downloading via zip functionality 2025-03-12 18:19:24 +10:00
Cucumberrbob
f68911e9c2
Add UpdateChecker.IsInsecure to check if running version is insecure
Uses a hard-coded list of GHSA ids of known fixed vulnerabilities
2025-03-11 20:38:02 +00:00
Cucumberrbob
b333c738be
Add DisableUpdateNotifications setting
Lets the user turn notifications off completely
2025-03-11 20:34:52 +00:00
Cucumberrbob
2ae3b85dac
[RD] mark torrent failed when all files excluded by filters 2025-03-08 13:46:07 +00:00
Cucumberrbob
097ea93410
[AD] mark torrent failed when all files excluded by filters 2025-03-08 13:46:02 +00:00
Cucumberrbob
f8587d1bc8
fixup! include version when setting torbox api client useragent 2025-03-07 22:40:02 +00:00
Cucumberrbob
818d9f06b2
include version when setting torbox api client useragent 2025-03-07 22:26:18 +00:00
Roger Far
5c987a9057
Merge pull request #732 from Cucumberrbob/feat/reduce-torbox-api-load
feat:  [TB] Set user-agent
2025-03-07 12:22:06 -07:00
Cucumberrbob
1034f342ed
Update torrent state to error when all files excluded by filters.
Only affects PM, TB and DL
2025-03-06 19:57:10 +00:00
Cucumberrbob
0fd3f2a467
Set user agent for TB 2025-03-06 13:20:59 +00:00
Cucumberrbob
706be01a40
rename private methods of DownloadableFileFilter 2025-03-03 12:44:15 +00:00
Cucumberrbob
d40e686845
Remove logic in DLTorrentClient erroneously copied from RDTorrentClient
This code handled the RD-specific behaviour of choosing which files to download, and only getting those links from the API, rather than what DL does: downloading all files and having the api consumer pick which links they want to download.
2025-03-03 12:22:02 +00:00
Cucumberrbob
765a5b0543
Use DownloadableFileFilter in RealDebridTorrentClient to filter files 2025-03-03 12:04:34 +00:00
Cucumberrbob
2b6e51b5cf
Use DownloadableFileFilter in PremiumizeTorrentClient to filter files 2025-03-03 12:03:00 +00:00
Cucumberrbob
537845ea80
Use DownloadableFileFilter in DebridLinkTorrentClient to filter files.
Uses `TorrentClientTorrent.Files` instead of `.Links` to get download links. Also adds `DownloadLink` to `Files` when `Map`ping to `TorrentClientTorrent`
2025-03-03 12:00:33 +00:00
Cucumberrbob
2944101657
Use DownloadableFileFilter in AllDebridTorrentClient to filter files
Also updates unit tests to not test if filter works. Test filter is used appropriately instead.
2025-03-03 11:57:43 +00:00
Cucumberrbob
816c72f418
Use DownloadableFileFilter in TorBoxTorrentClient to filter files 2025-03-03 11:55:26 +00:00
Cucumberrbob
b95dbcc824
Add DownloadableFileFilter + unit tests
`DownloadableFileFilter` is an abstraction of the filtering we do in most of the `TorrentClient`s.
It operates on a single file at a time, not the entire torrent.
2025-03-03 11:52:19 +00:00
Roger Far
7436e2d036
Merge pull request #715 from Cucumberrbob/fix/use-getsymlinkpath-method
Actually use `GetSymlinkPath` logic
2025-02-23 11:24:23 -07:00
Roger Far
a4b95923b2
Merge pull request #708 from Cucumberrbob/fix/pm-nested-files
[PM] fix: search subdirectories using `item.Id` not `item.FolderId`
2025-02-23 11:23:38 -07:00
Cucumberrbob
d292fbaee8
remove superfluous newline 2025-02-20 14:59:09 +00:00
Cucumberrbob
8e1f61472a
remove commented out line 2025-02-20 14:58:37 +00:00
Cucumberrbob
439b266946
Actually use GetSymlinkPath 2025-02-20 14:57:44 +00:00
Cucumberrbob
5a78125053
[PM] fix: search subdirectories using item.Id as folderId when getting downloaod links 2025-02-18 11:51:30 +00:00
Cucumberrbob
29914138aa
cleanup 2025-02-17 23:31:13 +00:00
Cucumberrbob
2bbbf0fd10
Use ISynologyClient (mockable) and inject IDelayProvider so SynologyTorrentClient is testable 2025-02-17 22:00:19 +00:00
Cucumberrbob
c546bd0173
Use IProcessFactory, IFileSystem in Service.Torrents#RunTorrentComplete
Also adds dependency injection to `Torrents#RunTorrentComplete` for `DbSettings` (`Settings.Get`)
2025-02-17 21:59:56 +00:00
Cucumberrbob
fd073b4762
Add interfaces for TorrentData, Downloads, Process, ProcessFactory
Making them interfaces lets us dependency inject them, allowing a given class to be tested.
2025-02-17 21:57:29 +00:00
Cucumberrbob
95307f2933
Use AllDebridNetClientFactory so AD client can be dependency-injected 2025-02-17 21:56:32 +00:00
Roger Far
7c3c1fb24c
Merge pull request #692 from Cucumberrbob/fix/include-exclude-pm-tb
[PM] [TB] Fix: Implement `IncludeRegex`, `ExcludeRegex`, and `DownloadMinSize`
2025-02-16 09:30:19 -07:00