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
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
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
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
Ricky
2523282a89
feat(http): add option to skip SSL certificate verification ( #801 )
2024-11-12 10:30:21 +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
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
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
62c22bc6b4
feat: support use server time for file creation ( #359 )
2024-01-30 09:08:01 +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
Levi
6bb32372ab
feat: support more configurations ( #281 )
2023-11-29 12:52:51 +08:00
Levi
7d6428c967
fix: task can not completed ( #280 )
2023-11-28 18:27:36 +08:00
Levi
11befc09bd
refractor: downloader task action dispatch ( #249 )
2023-10-24 16:02:39 +08:00
Levi
39202b44a1
fix: http retry strategy ( #240 )
2023-10-20 12:15:21 +08:00
Levi
c073fc0a67
feat: extension support ( #78 )
2023-10-16 09:47:31 +08:00
Tracey Lesley
d28fcef0a7
feat: default http User-Agent header ( #26 )
2023-09-13 10:03:26 +08:00
Levi
b6d60f6bdf
fix: http download timeout ( #188 )
2023-08-25 18:42:10 +08:00
Li Wei
34fc886662
fix: http filename resolve ( #124 )
2023-06-28 10:22:45 +08:00
Li Wei
dd46e7a3eb
fix: crash caused by non-resumable http download resources ( #97 )
2023-03-06 21:09:31 +08:00
liwei
a875a9258e
refactor: change repo url
2023-02-11 21:37:05 +08:00
Li Wei
0515ce6081
feat: auto rename on duplicate ( #76 )
2023-02-10 15:18:31 +08:00
Li Wei
1a3c8c026b
feat: reuse fetcher ( #71 )
2023-02-06 20:58:13 +08:00