sun
4f74101b3a
feat(hls): add native HLS (m3u8) download protocol
...
New hls protocol in internal/protocol/hls (registered ahead of http):
- master playlist variant picking (highest bandwidth), RFC3986 segment
URL resolution, fMP4 init segments, EXT-X-BYTERANGE, EXT-X-GAP skip
- AES-128 decryption with mid-playlist key rotation and sequence-derived
IVs; explicit errors for live streams, SAMPLE-AES and multi-period fMP4
- concurrent segment downloads with retry, journal-based resume across
pause/app restarts, automatic in-order merge into a single .ts/.mp4
- best-effort Content-Length probing for determinate progress
- anti-hotlink Referer/Cookie/UA via task extra headers (Go transport
does not filter them)
Core: fix SchemeFilter extension match for URLs with query strings
(also benefits .torrent links); Flutter: Protocol.hls enum, hls protocol
config model (prevents config round-trip wipe) and HLS settings block
with localized labels in all 22 locales.
Tests: parser/crypto unit tests, httptest e2e (Referer-enforced CDN,
encrypted streams, byterange, pause/resume, store/restore) and an
opt-in live-site acceptance gate (HLS_LIVE_URL).
2026-09-14 09:55:31 +08:00
Levi
e5ac13cfdc
docs: update beta download links
v2.0.0-beta.2
2026-09-11 08:36:01 +08:00
Levi
073e1413ab
release: 2.0.0-beta.2
2026-09-11 08:20:45 +08:00
Wu Shuwen
04b9aa18ec
fix(http): infer extension for opaque URLs ( #1495 )
2026-09-11 08:01:32 +08:00
Levi
08fe4eef4e
fix(ui): refine create task actions and relocate icon sources ( #1500 )
2026-09-11 08:00:03 +08:00
Levi
8f9bac9e6b
fix(ui): reuse shared file path picker for script settings ( #1496 )
2026-09-10 23:51:16 +08:00
Levi
bb17c7d48a
fix(macos): request permission for download notifications ( #1498 )
2026-09-10 23:50:50 +08:00
Levi
75ffe70a4d
fix(windows): use bundled PNG for notification header icon ( #1499 )
2026-09-10 23:50:09 +08:00
Levi
36f9f65384
fix(android): request notification permission on startup ( #1497 )
2026-09-10 23:05:15 +08:00
Levi
5f89ae3516
fix: unify platform window titles as Gopeed ( #1494 )
2026-09-10 23:03:43 +08:00
Levi
0cc2b690f8
fix: create task panel mobile UI ( #1488 )
2026-09-10 23:02:53 +08:00
Levi
b991482617
fix(macos): prevent closed task windows from reopening ( #1492 )
2026-09-10 00:19:49 +08:00
Levi
1f8906f952
fix(android): via browser takeover handling ( #1489 )
2026-09-09 23:28:41 +08:00
Levi
0efc85d3c0
feat: unify native API invocation with async callbacks ( #1476 )
2026-09-08 23:47:38 +08:00
Levi
481675107f
fix(android): refresh download URL when create page is already open ( #1493 )
2026-09-08 22:53:31 +08:00
Jamal Ali
6568498850
feat(i18n): add Azerbaijani (az) locale ( #1490 )
2026-09-07 17:56:30 +08:00
Levi
67814348dc
fix: upgrade to race-safe dart_ipc ( #1479 )
2026-09-07 09:23:26 +08:00
Levi
53d13dfe28
fix(ui): preserve desktop platform listeners ( #1483 )
2026-09-06 20:36:48 +08:00
Levi
d511e66d56
fix(ui): improve cross-platform text input behavior ( #1477 )
2026-09-06 17:18:57 +08:00
Levi
16f2d30476
fix(flutter): keep create task advanced options collapsed ( #1481 )
2026-09-06 16:43:14 +08:00
Levi
aafd039205
fix(flutter): create log directory recursively ( #1478 )
2026-09-06 13:00:06 +08:00
Levi
647e161431
docs: optimize README screenshots
2026-09-05 22:55:33 +08:00
Levi
8f3cf35162
fix(windows): prevent crash when notification service is unavailable ( #1472 )
v2.0.0-beta.1
2026-09-05 20:51:07 +08:00
Levi
f2145de571
feat: add MCP support ( #1471 )
2026-09-05 20:21:39 +08:00
Levi
39cd9034cd
feat: move native communication to FFI ( #1457 )
2026-09-05 20:18:42 +08:00
Levi
177c225f16
feat: new ui ( #1455 )
2026-09-05 19:53:41 +08:00
Levi
3be8db664c
fix(http): resume ranged downloads with unknown size ( #1467 )
2026-09-03 23:16:38 +08:00
Levi
9b704f6f14
fix(http): keep Resolve response until Range takeover succeeds ( #1465 )
2026-09-02 23:49:37 +08:00
ggg
f49e2510f5
fix(http): re-probe range support after sequential retry ( #1464 )
2026-09-02 14:29:48 +08:00
Levi
c5c8bb2bf5
fix(http): reset discarded prefetch progress on resume ( #1462 )
2026-08-31 23:05:01 +08:00
ggg
962ff4dc98
fix(http): fall back when servers ignore range requests ( #1459 )
2026-08-31 22:32:14 +08:00
Levi
59f3aa7028
test: enforce async extension API contract ( #1452 )
2026-08-27 12:51:37 +08:00
Levi
cfdf87c3b8
feat: HTTP add TLS fingerprint fallback ( #1444 )
2026-08-20 20:21:02 +08:00
Afterain
99924296ef
feat: Background download on iOS ( #1442 )
2026-08-18 18:08:53 +08:00
Afterain
9d3221ebbb
feat: open data directory on iOS ( #1440 )
2026-08-17 09:33:36 +08:00
Chen, Ting-An
7b7327ffb3
fix(i18n): complete Traditional Chinese locale ( #1431 )
2026-08-13 19:38:30 +08:00
Levi
fdfc6902a7
feat: enhance extension API ( #1413 )
2026-07-14 20:52:21 +08:00
Levi
9fb3758203
feat: replace gblob with blob http transport ( #1407 )
2026-07-14 20:05:33 +08:00
moduvoice
e2ac8ce64b
i18n: add Korean (ko_KR) translation ( #1408 )
2026-07-13 10:29:05 +08:00
Locon213
c01d11305c
feat: add Android dialog mode for external downloads ( #1362 )
2026-05-07 16:57:50 +08:00
Levi
def54f8998
feat: add WebView support for extension ( #1359 )
2026-04-24 22:16:33 +08:00
Levi
a205c0b8d7
feat: add gblob scheme support for extension ( #1358 )
2026-04-19 19:15:48 +08:00
Copilot
ae70dc240c
fix: persist download directory changes ( #1352 )
2026-04-19 16:56:07 +08:00
ScratchBuild
d7f6c3b206
feat(lang): Update Japanese translation ( #1344 )
2026-04-07 10:07:21 +08:00
Levi
a83e38dac4
feat: update flutter to 3.24.6 ( #1336 )
2026-04-03 14:42:32 +08:00
SBS123
d46c06f08d
feat(lang): Create ar language ( #1332 )
2026-03-30 00:05:14 +08:00
Levi
a61cdbed67
ci: fix windows asset upload ( #1326 )
2026-03-28 21:29:25 +08:00
Jaime Muñoz Martín
daa8c39dad
feat(lang): update Catalan language strings ( #1322 )
2026-03-23 11:01:59 +08:00
Levi
a5cd53f94c
release: v1.9.3
v1.9.3
2026-03-18 20:00:59 +08:00
Levi
847e88881d
fix: non-range HTTP downloaded bytes exceeding total file size ( #1317 )
2026-03-18 18:53:49 +08:00