Commit Graph

655 Commits

Author SHA1 Message Date
Jesse Chan
7500a99fad server: prohibit caching of index.html 2021-02-06 21:39:45 +08:00
Jesse Chan
f3e1db0332 server: tests: update URL of test case 2021-02-05 14:24:36 +08:00
Jesse Chan
861f301414 torrentPropertiesUtil: use tldts for getDomainsFromURLs 2021-02-04 17:16:29 +08:00
Jesse Chan
04a8573511 server: replace domain from URL RegEx with plain split, slice and join 2021-02-04 08:33:44 +08:00
Jesse Chan
4d51ce42f2 server: rTorrent: remove [] from IPv6 address 2021-02-02 19:46:45 +08:00
Jesse Chan
5afa79b274 config.cli: migrate to TypeScript 2021-01-30 19:11:28 +08:00
Jesse Chan
6bc71c5e26 server: tests: loose directory equal case to startsWith 2021-01-29 12:05:50 +08:00
Jesse Chan
d345be43c0 Revert "server: qBittorrent: chop the trailing slash off from directory"
This reverts commit dbc0211a99.

Bug: #173
2021-01-28 23:31:02 +08:00
Jesse Chan
7e3c09713c server: skip redirection if request comes from Firefox 2021-01-28 17:17:25 +08:00
Jesse Chan
66fdb8cb50 server: increase rate limit of /data endpoint to 200/5min 2021-01-28 17:17:25 +08:00
Jesse Chan
4f38447459 server: add /token endpoint to get retrieval token of content 2021-01-28 17:17:25 +08:00
Jesse Chan
1d1a478391 server: redirect to a portable link for /data endpoint 2021-01-28 17:17:25 +08:00
Jesse Chan
e3122a683d server: move auth utilities to authUtil 2021-01-28 17:17:25 +08:00
Jesse Chan
c1dd0f0406 server: improve error message of /data endpoint 2021-01-28 17:17:25 +08:00
Jesse Chan
07070dfeb1 server: don't invalidate token on connection settings change 2021-01-27 09:00:51 +08:00
Jesse Chan
402a5b8a69 server: invalidate previous tokens when user changed 2021-01-26 09:06:41 +08:00
Jesse Chan
53c0b3f863 server: strictly validate auth token payload 2021-01-26 08:34:13 +08:00
Jesse Chan
2daa77e883 server: support path aliases in development 2021-01-26 08:34:13 +08:00
Jesse Chan
4dd346d71f server: remove dependency on shell 2021-01-19 21:46:26 +08:00
Jesse Chan
c279760160 server: pack torrent content one by one to avoid OOM 2021-01-15 21:45:39 +08:00
Jesse Chan
05908b14ad server: catch unhandled rejections and exceptions in production 2021-01-15 19:04:26 +08:00
Jesse Chan
1b03d3d180 server: handle case difference in ".torrent" download 2021-01-13 18:55:23 +08:00
Jesse Chan
8226ed751c server: rTorrent: rewrite "removeTorrents" function 2021-01-11 23:40:40 +08:00
Jesse Chan
477d2f5c40 server: torrents: improve error messages of /mediainfo 2021-01-03 18:43:59 +08:00
Jesse Chan
4ac31e967e server: torrents: explicitly pass paths of contents to mediainfo
This change makes sure that only contents of a torrent are
processed by mediainfo.

Bug: #127
2021-01-03 18:30:15 +08:00
Jesse Chan
703978b1f3 server: qBittorrent, Transmission: normalize hash to upper case 2020-12-29 22:08:52 +08:00
Jesse Chan
87e4b54bc9 server: qBittorrent: trim whitespaces after tags string split 2020-12-29 21:43:50 +08:00
Jesse Chan
941c3d72e5 server: rTorrent: properly handle multi tags while adding 2020-12-29 21:42:26 +08:00
Jesse Chan
764b5b59cb server: feedService: migrate from manual Promises to "nedb-promises" 2020-12-28 23:19:52 +08:00
Jesse Chan
4239ecf80e server: notificationService: replace callbacks with promises 2020-12-28 23:19:52 +08:00
Jesse Chan
0953c7508b server: torrents: rate limits /metainfo and /data endpoints 2020-12-28 17:32:18 +08:00
Jesse Chan
1a0f3d0b45 server: allow to download meta-info (.torrent) files
GET /api/torrents/{hash(, hash2, ...)}/metainfo
2020-12-28 17:32:18 +08:00
Jesse Chan
3a2fef83ad server: tests: match EACCES code only 2020-12-27 23:38:16 +08:00
Jesse Chan
9bced5a580 server: don't leak details of internal errors 2020-12-27 23:00:57 +08:00
Jesse Chan
57b9ea49cf server: tests: use "dummy" for multi-file case
move torrent case expects "dummy".
2020-12-27 23:00:57 +08:00
Jesse Chan
01edfec73a server: qBittorrent: use "contentLayout" for isBasePath
Bug: qbittorrent/qBittorrent#13955
2020-12-27 21:50:14 +08:00
Jesse Chan
f43ec41014 server: tests: isolate multi-file case from single-file case 2020-12-27 21:49:24 +08:00
Jesse Chan
262a89e34f server: torrents: replace inappropriate "||" with "??" 2020-12-27 21:01:16 +08:00
Jesse Chan
31828bdfd9 server: qBittorrent: implement "isCompleted" (skip_checking) 2020-12-27 20:23:55 +08:00
Jesse Chan
d765ac68fa server: qBittorrent: switch from manual ?& to to "params" object 2020-12-27 20:21:32 +08:00
Jesse Chan
26c9987355 server: support initial seeding (aka superseeding)
https://www.bittorrent.org/beps/bep_0016.html
2020-12-26 13:49:55 +08:00
Jesse Chan
a6b855f0f0 server: rTorrent: don't mix rTorrent response with API response 2020-12-26 11:07:30 +08:00
Jesse Chan
db075301ae server: rTorrent: use "false=" if a method does not exist 2020-12-26 11:07:30 +08:00
Jesse Chan
db1b53a718 server: rTorrent: implement "isSequential" support
Requires rTorrent to have "d.down.sequential(.set)" commands
2020-12-26 11:07:30 +08:00
Jesse Chan
0c7dad248d server: qBittorrent: implement "isSequential" support 2020-12-26 11:07:30 +08:00
Jesse Chan
61b6b61569 API: torrents: add "isSequential" torrent property 2020-12-26 11:07:30 +08:00
Jesse Chan
038ee3f7f1 server: rTorrent: create destination directory when move torrents 2020-12-26 10:46:24 +08:00
Jesse Chan
20fc3ac6a8 server: torrents: disallow comma in tag 2020-12-15 20:57:36 +08:00
Jesse Chan
cea33d5668 dependencies: bump feedsub to 0.7.6 2020-12-14 01:41:01 +08:00
Jesse Chan
94a77cc1ab server: qBittorrent: avoid accessing undefined cookie object 2020-12-13 21:46:22 +08:00