copilot-swe-agent[bot] and monkeyWie
2daa9c45df
Fix non-range download bug: downloaded bytes exceeding total file size
...
When HTTP server doesn't return Content-Length or doesn't support Range
requests, the download can accumulate extra bytes on pause/resume because:
1. Each retry/resume re-downloads from the beginning but writes at the
accumulated offset
2. No size limit enforcement for non-range downloads
3. onDownloadComplete incorrectly uses chunk.remain() for non-range
downloads, which gives negative values for chunk(0,0)
Fixes:
- Reset chunk state in downloadChunkOnce and runConnectionFallback for
non-range downloads since server will send from beginning
- Add size limit checks in download loops when Size is known
- Fix onDownloadComplete to use conn.Completed for non-range downloads
instead of unreliable chunk.remain()
- Add test cases for non-range download, pause/resume, and size limit
Co-authored-by: monkeyWie <[email protected] >
2026-03-11 02:50:48 +00:00
Levi
3eb6df55df
feat: implement task patching functionality ( #1267 )
2026-02-06 23:42:57 +08:00
Levi
93088b22f1
fix: improve retry handling for expired HTTP redirect url ( #1263 )
2026-01-29 22:13:42 +08:00
Levi
c9626cb389
perf: slow down DHT announcing on errors ( #1186 )
2026-01-14 20:04:21 +08:00
Levi
a9eee26be7
refactor: fethcer interface & download flow ( #1229 )
2026-01-08 21:50:47 +08:00
Copilot
abd16d5326
fix: filename truncation for HTML-encoded ampersands in Content-Disposition ( #1215 )
2026-01-05 22:56:04 +08:00
Copilot
6756d82ffa
fix: use PathUnescape for filename URL decoding ( #1214 )
2026-01-05 21:46:50 +08:00
Matteo Pietro Dazzi
b0e133b554
feat: show extraction progress ( #1217 )
2025-12-31 09:25:21 +08:00
Copilot
2f5fbfb17c
fix: HTTP filename parsing for mixed encodings and GBK-encoded ( #1189 )
2025-11-29 11:34:50 +08:00
Levi
75a8a3a9ac
ci: downgrade to Ubuntu 22.04 ( #1128 )
2025-10-09 21:01:06 +08:00
Levi
20a70d7f91
fix: certain special single-file torrent downloads ( #1136 )
2025-09-29 22:52:06 +08:00
Levi
46c379d556
fix: resolve incorrect download path for single file torrent ( #1111 )
2025-09-10 07:59:10 +08:00
Krau
cfdcb586ee
fix: decode URL-encoded filename from contentDisposition header ( #1099 )
2025-09-04 18:22:30 +08:00
Levi
3451f577ab
fix: remove invalid characters in HTTP headers ( #1053 )
2025-07-15 22:34:10 +08:00
Charles Huang
3262e5a11b
fix: do not add external tracker to a private torrent ( #1011 )
2025-04-23 22:53:15 +08:00
Charles Huang
ff43a373cd
fix: json syntax error in bt config ( #1014 )
2025-04-23 13:48:46 +08:00
Levi
b0ef2c2a87
fix: bt seed cause crash ( #985 )
2025-04-08 18:38:17 +08:00
Levi
cd5fd45667
fix: resolve http non encode attachment filename ( #975 )
2025-04-05 22:37:19 +08:00
Levi
50bc9ab129
feat: improve http download strategy to prevent speed drops near completion ( #969 )
2025-04-05 22:20:35 +08:00
Levi
f4b839fd11
fix: http download size exceeds file size ( #959 )
2025-03-14 20:07:34 +08:00
Levi
03e26dbea8
feat: improve http download retry strategy ( #951 )
2025-03-07 12:01:52 +08:00
Levi
9c5aebaf36
fix: path url encode filename parse ( #939 )
2025-02-18 19:37:38 +08:00
Levi
fba990a056
fix: http MIME encoded word filename parse ( #931 )
2025-02-13 21:54:13 +08:00
Levi
0919936050
feat: support custom http request headers ( #868 )
2025-01-16 00:19:50 +08:00
Levi
acc7ed8f6b
feat: torrent scheme deep link and file associations ( #866 )
2025-01-16 00:02:00 +08:00
Levi
3ce95f21fd
fix: some torrents can not resovle ( #857 )
2024-12-27 19:06:17 +08:00
Levi
c970378fd7
fix: http download retries too many times ( #849 )
2024-12-24 20:28:04 +08:00
Levi
f4876c8a0e
fix: HTTP fetch crash when modified request extra via extension ( #832 )
2024-12-08 12:07:08 +08:00
Levi
366244fa5d
fix: android build on go 1.23 ( #813 )
2024-11-15 11:43:55 +08:00
Ricky
2523282a89
feat(http): add option to skip SSL certificate verification ( #801 )
2024-11-12 10:30:21 +08:00
Levi
d3750464aa
fix: torrent stats panic ( #737 )
2024-09-20 12:28:24 +08:00
Levi
a1981328aa
fix: avoid HTTP zero connections ( #729 )
2024-09-07 13:49:32 +08:00
Levi
0c17093b1a
feat: task separate proxy ( #727 )
2024-09-06 18:35:23 +08:00
Levi
ece5b91dc2
fix: torrent redundant directory ( #649 )
2024-08-14 21:54:59 +08:00
Levi
1f791c66e6
perf: excessive torrent tracker dns resolve ( #634 )
2024-08-08 18:55:52 +08:00
foxxorcat
d119de7b98
feat: enhanced extension engine ( #629 )
2024-08-05 10:44:17 +08:00
Levi
4fbe13a1f0
fix: clear UPNP port mapping when exist app ( #624 )
2024-07-30 18:43:54 +08:00
Levi
3b50465708
feat: torrent seed config ( #599 )
2024-07-30 12:50:06 +08:00
Levi
473c58796c
fix: handle empty string params ( #620 )
2024-07-24 11:51:31 +08:00
Levi
42a0b89d95
fix: bt request extra type convert ( #535 )
2024-05-16 13:02:40 +08:00
Levi
cea454b015
feat: support system proxy ( #515 )
2024-05-01 18:53:12 +08:00
Levi
070db64ca9
fix: http request cookie incremented indefinitely on retries ( #514 )
2024-05-01 17:45:59 +08:00
Levi
56ef25065e
fix: task lock by unreachable torrent ( #431 )
2024-03-29 22:11:21 +08:00
Levi
62c22bc6b4
feat: support use server time for file creation ( #359 )
2024-01-30 09:08:01 +08:00
Levi
ef5ee99f04
feat: custom torrent client version ( #341 )
2024-01-23 17:44:44 +08:00
Tracey Lesley
6d136604db
feat: downloader task stats ( #339 )
2024-01-22 11:43:12 +08:00
Tracey Lesley
99f4e8c895
feat: add download stats info ( #323 )
2024-01-17 21:59:01 +08:00
Tracey Lesley
3a542054fc
fix: compatible with not follow the http range response standard
2024-01-14 09:58:14 +08:00
Levi
65fd6fb489
fix: http pause handle ( #303 )
2023-12-15 19:15:38 +08:00
Levi
16b7a3d5b3
feat: support proxy ( #284 )
2023-12-02 18:36:52 +08:00