Nostalgia
90acfa18e4
refactor(context): centralize request origin access ( #3100 )
2026-09-24 01:57:21 +08:00
Nostalgia
3a31b438a9
refactor(offline): centralize native tool setup ( #3096 )
...
- Keep storage-to-tool identity in the offline tool package.
- Share settings persistence, tool initialization, and storage admission across handlers.
- Preserve endpoint payloads and unsupported-storage diagnostics with focused tests.
Co-authored-by: nostalume <nostalucent@gmail.com >
Co-authored-by: Codex <267193182+codex@users.noreply.github.com >
2026-09-21 16:54:22 +08:00
AmPlace
c06656958c
fix(offline): expose native 115 tools for ED2K downloads ( #2920 )
...
* fix(offline): allow ED2K downloads through 115 tools
- Treat 115 Cloud and 115 Open as ED2K-capable tools.
- Keep automatic fallback limited to Thunder tools.
- Add regression coverage for supported and unsupported tools.
Co-authored-by: Codex <267193182+codex@users.noreply.github.com >
* fix(offline): route ED2K to native 115 tools
- Allow ED2K requests initially using SimpleHttp to enter tool routing.
- Prefer the matching 115 tool for 115 Cloud and 115 Open destinations.
- Add regression coverage for native storage tool selection.
Co-authored-by: Codex <267193182+codex@users.noreply.github.com >
* fix(offline): expose native tools for destination storage
- Include the native destination tool in the path-aware tool list.
- Keep existing ready-tool filtering for external destinations.
- Add coverage for native storage to tool mapping.
Co-authored-by: Codex <267193182+codex@users.noreply.github.com >
---------
Co-authored-by: Codex <267193182+codex@users.noreply.github.com >
Co-authored-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com >
2026-08-29 01:22:29 +08:00
Pikachu Ren
6f80df2827
feat(drivers): add GuangYaPan driver with offline download support ( #2882 )
...
* feat(drivers): add GuangYaPan driver with offline download support
* fix(drivers): GuangYaPan driver multipartUploadToOSS
2026-08-04 11:34:56 +08:00
ShenLin
ace7482bc2
fix(offline-download): block cloud metadata endpoints ( #2487 )
2026-06-18 23:16:16 +08:00
Suyunjing
9cc5dd969b
fix(offline_download): block SimpleHttp temp file path traversal via strict filename sanitization
...
* fix(offline_download): prevent path traversal
* fix(SimpleHttp): improve filename validation
* fix(offline_download): harden SimpleHttp filename and temp path checks
* simplify filename validation
---------
Co-authored-by: ILoveScratch2 <ilovescratch@foxmail.com >
Co-authored-by: j2rong4cn <j2rong@qq.com >
2026-05-27 17:18:31 +08:00
Suyunjing
3b1760e959
fix(offline_download): restore SimpleHttp fallback for http links ( #2516 )
...
- Fixed a regression where SimpleHttp returned the same unsupported scheme error for normal HTTP and HTTPS links.
2026-05-26 13:11:21 +08:00
Pikachu Ren
1d071c0fd8
feat(func): support ed2k & magnet & torrent offline download ( #2452 )
...
Add end-to-end offline download support for torrent files, magnet links, and ed2k links, including torrent parse and generate APIs, CAS-based rapid upload for Cloud189, and protocol-aware tool routing with transfer flow improvements.
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
Co-authored-by: j2rong4cn <j2rong@qq.com >
Co-authored-by: Suyunjing <suyunmeng@oplist.org.cn >
2026-05-25 14:34:21 +08:00
sdvcrx
12c9bdbd56
fix(offline_download): prevent infinite retry on status update failure ( #2294 )
2026-04-03 15:47:40 +08:00
mcxiedidi
642acf8bca
feat(123pan): add offline download ( #1911 )
...
* feat(123网盘): 添加123网盘离线下载功能
- 新增123网盘离线下载实现
- 添加相关API接口和常量配置
- 在路由和工具集中集成123网盘支持
* refactor(offline_download): 重构123网盘离线下载状态处理和类型定义
- 将离线下载相关类型定义从util.go移至types.go
- 更新状态获取api
* 移除了备选方案(/offline_download/task/status)
2026-01-04 23:13:38 +08:00
j2rong4cn
d31e1a333d
feat(model): add object mask support and enhance cache/task handling ( #1743 )
2025-12-11 15:10:42 +08:00
jenfonro
e1bba7072b
fix(task): tasks keep being cancelled ( #1745 )
...
* fix_cancel
* update(go.mod): update tache version
* tache v0.2.2
---------
Co-authored-by: j2rong4cn <j2rong@qq.com >
2025-12-10 19:09:16 +08:00
jenfonro
549e60136b
fix(fs):fix retry task after restart ( #1467 )
...
* fix retry task after restart
* fix: initialize SrcStorage and DstStorage in tasks to prevent nil pointer dereference
* feat: implement storage load signal mechanism for improved synchronization
* fix: update StoragesLoaded logic
* refactor: reorganize storage loading logic and improve synchronization handling
---------
Co-authored-by: j2rong4cn <j2rong@qq.com >
2025-10-18 20:52:02 +08:00
KirCute
2bfbad2874
feat(offline_download): add 123 open ( #1427 )
2025-10-07 01:13:25 +08:00
KirCute
e0414e7110
fix(offline_download/http): attach UA to the request ( #1347 )
...
fix(simple-http): attach UA to the request
2025-09-29 22:13:00 +08:00
花月喵梦
e0b3a611ba
feat(thunderx,pikpak): add offline download support for ThunderX; add ctx to specific PikPak functions ( #879 )
...
* feat(thunderx,pikpak): add offline download support for ThunderX; add ctx to specific PikPak functions
* Update internal/offline_download/tool/download.go
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
Signed-off-by: 花月喵梦 <152958106+nekohy@users.noreply.github.com >
---------
Signed-off-by: 花月喵梦 <152958106+nekohy@users.noreply.github.com >
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
2025-07-29 09:46:28 +08:00
Seven
e93ab76036
feat(task-group): introduce TaskGroupCoordinator for coordinated task execution ( #721 )
...
* feat(task): add task hook,batch task
refactor(move): move use CopyTask
* Update internal/task/batch_task/refresh.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: Seven <53081179+Seven66677731@users.noreply.github.com >
* fix: upload task allFinish judge
* Update internal/task/batch_task/refresh.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: Seven <53081179+Seven66677731@users.noreply.github.com >
* feat: enhance concurrency safety
* 优化代码
* 解压缩
* 修复死锁
* refactor(move): move as task
* 重构,优化
* .
* 优化,修复bug
* .
* 修复bug
* feat: add task retry judge
* 代理Task.SetState函数来判断Task的生命周期
* chore: use OnSucceeded、OnFailed、OnBeforeRetry functions
* 优化
* 优化,去除重复代码
* .
* 优化
* .
* webdav
* Revert "fix(fs):After the file is copied or moved, flush the cache of the directory that was copied or moved to."
This reverts commit 5f03edd683 .
---------
Signed-off-by: Seven <53081179+Seven66677731@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: j2rong4cn <j2rong@qq.com >
2025-07-24 16:15:24 +08:00
j2rong4cn
74d32fd4d7
fix(simplehttp): logic bug when unable to parse file name ( #761 )
2025-07-20 14:13:30 +08:00
pnparadise
86324d2d6b
fix(net): ensure accurate content-length in response ( #749 )
...
* fix(fs): ensure accurate content-length in http2 requests
Chrome browsers were unable to preview thumbnails, reporting an
'ERR_HTTP_2_PROTOCOL_ERROR'. This was caused by an incorrect
content-length header in the server's response for thumbnail images.
This commit corrects the content-length calculation, allowing
Chrome and other compliant clients to render thumbnails correctly.
* fix(net): ensure accurate content-length in response
* 补缺
* .
---------
Co-authored-by: zhiqiang.huang <zhiqiang.tech@gmail.com >
Co-authored-by: j2rong4cn <j2rong@qq.com >
2025-07-19 20:36:27 +08:00
j2rong4cn
0c461991f9
chore: standardize context keys with custom ContextKey type ( #697 )
...
* chore: standardize context keys with custom ContextKey type
* fix bug
* 使用Request.Context
2025-07-14 23:55:17 +08:00
j2rong4cn
cc01b410a4
perf(link): optimize concurrent response ( #641 )
...
* fix(crypt): bug caused by link cache
* perf(crypt,mega,halalcloud,quark,uc): optimize concurrent response link
* chore: 删除无用代码
* ftp
* 修复bug;资源释放
* 添加SyncClosers
* local,sftp,smb
* 重构,优化,增强
* Update internal/stream/util.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
* chore
* chore
* 优化,修复bug
* .
---------
Signed-off-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-12 17:57:54 +08:00
Seven
19c6b6f930
feat(115_open): add offline download ( #683 )
2025-07-11 20:17:54 +08:00
MadDogOwner
7c7cec0993
style(offline_download): add more description in log ( #653 )
...
fix(offline_download): add more description in log
2025-07-09 14:16:05 +08:00
j2rong4cn
e83f8e197a
feat(offline-download): SimpleHttp: download stream direct upload ( #523 )
...
* feat(offline-download): stream download to upload
* 重命名stream_put为upload_download_stream
* chore
2025-07-02 18:47:16 +08:00
MadDogOwner
874dc292ae
fix(gomod): go modules with tagged versions ( #499 )
...
fix: go modules with tagged versions
2025-07-01 09:54:50 +08:00
Suyunjing
52c93f2046
build:Update old dependencies to new hosting ( #495 )
...
* build:Update old dependencies to new hosting
2025-06-30 21:26:42 +08:00
j2rong4cn
103abc942e
refactor: pass api_url through context ( #457 )
...
* refactor: pass `api_url` through context
* 移除 LinkArgs.HttpReq
* pref(alias): 减少不必要下载代理
* 修复bug
* net: 支持1并发 分片下载
2025-06-30 15:48:05 +08:00
Dgs
d695d28e13
feat(thunder&thunder_browser): fix deviceId generation & support offline download and update login interface ( #290 )
...
* fix(thunder): fix deviceID generation
* feat(thunder_browser): support offline download and update login interface
* feat(thunder_browser): add fluent_play method for offline download
2025-06-24 21:54:30 +08:00
Kuingsmile
fdcc2f136e
chore: change module name to OpenListTeam/OpenList ( #2 )
...
* Enable blank issue
* chore(README.md): update docs (temporally)
* Update FUNDING.yml
* chore: purge README.md
* chore: change module name to OpenListTeam/OpenList
* fix: fix link errors
* chore: remove v3 in module name
* fix: resolve some conficts
* fix: resolve conficts
* docs: update with latest file
---------
Co-authored-by: ShenLin <773933146@qq.com >
Co-authored-by: Hantong Chen <cxwdyx620@gmail.com >
Co-authored-by: joshua <i@joshua.su >
Co-authored-by: Hantong Chen <70561268+cxw620@users.noreply.github.com >
2025-06-12 22:02:46 +08:00
KirCute
9a9aee9ac6
feat(alias): support writing to non-ambiguous paths ( #8216 )
...
* feat(alias): support writing to non-ambiguous paths
* feat(alias): support extract concurrency
* fix(alias): extract url no pass query
2025-03-27 23:17:45 +08:00
KirCute_ECT
d5ec998699
feat(task): allow retry canceled ( #7852 )
2025-01-27 20:18:10 +08:00
j2rong4cn
2be0c3d1a0
feat(alias): add DownloadConcurrency and DownloadPartSize option ( #7829 )
...
* fix(net): goroutine logic bug (AlistGo/alist#7215 )
* Fix goroutine logic bug
* Fix bug
---------
Co-authored-by: hpy hs <hshpy.pengyu@gmail.com >
* perf(net): sequential and dynamic concurrency
* fix(net): incorrect error return
* feat(alias): add `DownloadConcurrency` and `DownloadPartSize` option
* feat(net): add `ConcurrencyLimit`
* pref(net): create `chunk` on demand
* refactor
* refactor
* fix(net): `r.Closers.Add` has no effect
* refactor
---------
Co-authored-by: hpy hs <hshpy.pengyu@gmail.com >
2025-01-27 20:08:39 +08:00
Jealous
b60da9732f
feat(offline-download): allow using offline download tools in any storage ( #7716 )
...
* Feat(offline-download): allow using thunder offline download tool in any storage
* Feat(offline-download): allow using 115 offline download tool in any storage
* Feat(offline-download): allow using pikpak offline download tool in any storage
* style(offline-download): unify offline download tool names
* feat(offline-download): show available offline download tools only
* Fix(offline-download): update unmodified tool names.
---------
Co-authored-by: Andy Hsu <i@nn.ci >
2025-01-10 21:24:44 +08:00
KirCute_ECT
51bcf83511
feat(url-tree): support url tree driver writing ( #7779 close #5166 )
...
* feat: support url tree writing
* fix: meta writable
* feat: disable writable via addition
2025-01-10 20:50:56 +08:00
Jealous
42243b1517
feat(thunder): add offline download tool ( #7673 )
...
* feat(thunder): add offline download tool
* fix(thunder): improve error handling and parse file size in status response
---------
Co-authored-by: Andy Hsu <i@nn.ci >
2024-12-25 21:23:58 +08:00
KirCute_ECT
d7aa1608ac
feat(task): add speed monitor ( #7655 )
2024-12-25 21:09:54 +08:00
KirCute_ECT
64ceb5afb6
feat: support general users view and cancel own tasks ( #7416 close #7398 )
...
* feat: support general users view and cancel own tasks
Add a creator attribute to the upload, copy and offline download
tasks, so that a GENERAL task creator can view and cancel them.
BREAKING CHANGE:
1. A new internal package `task` including the struct `TaskWithCreator`
which embeds `tache.Base` is created, and the past dependence on
`tache.Task` will all be transferred to dependence on this package.
2. The API `/admin/task` can now also be accessed via `/task`, and the
old endpoint is retained to ensure compatibility with legacy
automation scripts.
Closes #7398
* fix(deps): update github.com/xhofe/tache to v0.1.3
2024-11-01 23:32:26 +08:00
Shelton Zhu
bdf4b52885
feat(offline_download): add transmission ( close #4102 in #7232 )
2024-09-28 23:15:58 +08:00
Wang Xiaoqing
74887922b4
fix(offline_download): os.create failure while the name of downloaded file is empty ( #7041 )
2024-08-22 00:44:23 +08:00
Shelton Zhu
29165d8e60
feat(115): add offline download tool ( close #6888 in #6954 )
2024-08-10 20:59:07 +08:00
itsHenry
74f8295960
feat: persistant Task ( #6925 close #5313 )
2024-08-07 12:16:21 +08:00
Muione
3a3d0adfa0
feat: add pikpak offline download function ( #6648 )
...
* add pikpak offline download function
* 完善PikPak离线下载功能
* 删除多余的代码
* add task cache to avoid too many requests about API
* 优化Status函数
* 完善所有功能,目前测试无BUG
* 减少缓存时间,优化添加离线任务的参数
2024-07-07 16:50:05 +08:00
Andy Hsu
4f7761fe2c
fix: set progress to 100 when it's NaN ( close #5906 )
2024-01-20 13:06:46 +08:00
Andy Hsu
83c2269330
fix(qbit): seed time doesn't take effect ( close #5663 )
2023-12-11 15:20:29 +08:00
Andy Hsu
026e944cbb
feat: add task info to resp of add task api ( close #5579 )
2023-12-03 14:44:20 +08:00
Andy Hsu
8bdfc7ac8e
fix(offline_download): don't wait for transfer task ( close #5595 )
2023-12-03 14:20:01 +08:00
Andy Hsu
34746e951c
feat(offline_download): add simple http tool ( close #4002 )
2023-11-24 16:26:05 +08:00
Andy Hsu
b6134dc515
feat: allow keep files in offline download ( close #4678 )
2023-11-24 15:02:36 +08:00
Andy Hsu
7583c4d734
feat: customize workers and retry of task ( close #5493 fix #5274 )
2023-11-21 15:51:57 +08:00
Andy Hsu
11a30c5044
feat: refactor task module
2023-11-20 18:01:51 +08:00