Commit Graph

25 Commits

Author SHA1 Message Date
Jesse Chan
1a878d5423 flood: rearrange, remove misc files and reformat 2020-11-15 23:03:47 +08:00
Jesse Chan
ac11f3190b server: rTorrent: ensure the temporary file is world-readable
This allows rTorrent to read the file when the Flood and rTorrent
are running in different users and when the system has a restrictive
default umask.

Bug: #86
2020-11-14 01:33:07 +08:00
Jesse Chan
80ffb24d8d API: torrents: schema validate add-urls and add-files endpoints
Those endpoints use extensive amount of user-provided properties
and will be frequently used by third party developers. With Node
15, unhandled promise rejections directly crash the server, as
such, it is safer to schema validate the request before processing
it.

This change also prepares the code paths for later change that adds
destination fallbacks.
2020-11-13 13:27:31 +08:00
Jesse Chan
8efad15d5b API: client: "throttle" means "Max"
There is no need for both. So use "Speed" for better clarity.

Also switch to B/s as that's more native for everything.
2020-11-08 23:45:51 +08:00
Jesse Chan
d592152967 API: client: remove [down/up]Throttle, clarify throttleGlobal[Down/Up]Max unit 2020-11-08 01:57:50 +08:00
Jesse Chan
8261d71eb5 API: torrents: remove unused props in TorrentPeer, TorrentTracker 2020-11-05 21:54:01 +08:00
Jesse Chan
448075a7d6 API: torrents: remove confusing baseDirectory, baseFilename and basePath props 2020-11-03 20:41:56 +08:00
Jesse Chan
4c24f56260 API: client: remove connection test with new settings
This simply won't work as we now support multiple clients. Each
client needs its own clientGatewayService which can only be
created by the user config.

Thus, let the form update user config directly.
2020-11-03 00:39:45 +08:00
Jesse Chan
600e22a6d6 server: services: refrain from using unnecessary throws 2020-11-03 00:38:49 +08:00
Jesse Chan
dc1b939c26 server: qBittorrent, rTorrent: properly hook functions to error handlers 2020-11-03 00:38:46 +08:00
Jesse Chan
08a95253bc API: torrents: remove dhtStats, throttleMaxDownloadsDiv and throttleMaxUploadsDiv
No one knows what throttleMaxDownloadsDiv and throttleMaxUploadsDiv do. dhtStats
is not used. Let's remove them first to see how things go.
2020-11-01 22:55:32 +08:00
Jesse Chan
7e56cd99ac server: clientGatewayService: remove unused PROCESS_TRANSFER_RATE_START event 2020-10-29 12:14:00 +08:00
Jesse Chan
a317696751 server: sanitize and check paths at API endpoints 2020-10-25 08:27:52 -05:00
Jesse Chan
3f8172d43c feature: allow to add completed torrent without checking
Bug: Flood-UI/flood#252
2020-10-21 04:32:12 -05:00
Jesse Chan
dcfa590f9f feature: allow to attach cookies to fetch requests 2020-10-20 22:05:55 +08:00
Jesse Chan
b0add0db99 server: fetch torrents from http/https URLs directly from Flood
This allows more control over the fetching process.

Specifically, it allows us to add a feature to attach
Cookies to requests in a later commit.
2020-10-20 21:31:59 +08:00
Jesse Chan
9cefa85f71 server: rTorrent: round addtime to integer 2020-10-19 21:52:51 +08:00
Jesse Chan
96c754ddeb server: rTorrent: save torrents and then add them with paths
Bug: #164, #741, #773
2020-10-19 21:52:51 +08:00
Jesse Chan
63860705ef server: fileUtil: properly use async createDirectory 2020-10-19 21:42:34 +08:00
Jesse Chan
dcfcce3456 api: torrents: simplify contents API by returning an Array of TorrentContent 2020-10-17 13:44:06 +08:00
Jesse Chan
1f76f320c5 server: clientGatewayService: define interface 2020-10-17 13:44:06 +08:00
Jesse Chan
c0ddc55810 server: migrate setSpeedLimits and setTracker to clientGatewayService 2020-10-17 13:44:06 +08:00
Jesse Chan
8f5fd27b88 client: SettingsModal: migrate to TypeScript 2020-10-17 13:44:06 +08:00
Jesse Chan
b2f6fdad21 server: migrate client [get/set]Settings to clientGatewayService 2020-10-17 13:44:06 +08:00
Jesse Chan
a75498b110 server: isolate rTorrent specific functions 2020-10-17 13:24:14 +08:00