j2rong4cn
2edc446ced
feat(stream): support using temporary files as large buffer ( #1399 )
...
feat(stream): refactor StreamSectionReader to support using temporary files as large buffer
2025-10-01 18:43:20 +08:00
j2rong4cn
c3c7983f7b
perf(sync-closers): improve Close method ( #1395 )
...
Signed-off-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-01 18:06:10 +08:00
HG-ha
22deb4df30
fix(lanzou): auto handle acw_sc__v2 and down_ip=1 for all requests, improve secondary validation ( #1394 )
...
* Refactor upload and request handling in util.go
重构请求部分以避免偶现failed link: failed get link:的情况
Signed-off-by: HG-ha <60115106+HG-ha@users.noreply.github.com >
* Format and clean up code in util.go
Signed-off-by: HG-ha <60115106+HG-ha@users.noreply.github.com >
* go fmt util.go
---------
Signed-off-by: HG-ha <60115106+HG-ha@users.noreply.github.com >
2025-10-01 17:38:50 +08:00
j2rong4cn
da0c734aa3
fix(net): unable to pass HttpStatusCode ( #1397 )
2025-10-01 00:16:36 +08:00
ILoveScratch
189cebe4c9
feat(drivers): add MediaFire driver support ( #1322 )
...
* feat(drivers): add MediaFire driver support (#9319 )
- Implement complete MediaFire storage driver
- Add authentication via session_token and cookie
- Support all core operations: List, Get, Link, Put, Copy, Move, Remove, Rename, MakeDir
- Include thumbnail generation for media files
- Handle MediaFire's resumable upload API with multi-unit transfers
- Add proper error handling and progress reporting
Co-authored-by: Da3zKi7 <da3zki7@duck.com >
* fix(mediafire): fix code errors in mediafire
* fix(mediafire): fix code errors in mediafire
* fix(drivers): add session renewal cron for MediaFire driver (#9321 )
- Implement automatic session token renewal every 6-9 minutes
- Add validation for required SessionToken and Cookie fields in Init
- Handle session expiration by calling renewToken on validation failure
- Prevent storage failures due to MediaFire session timeouts
Fixes session closure issues that occur after server restarts or extended periods.
Co-authored-by: Da3zKi7 <da3zki7@duck.com >
* docs: restore README changes
Signed-off-by: ILoveScratch <ilovescratch@foxmail.com >
* fix
* fix
* fix: add stream upload limit
* fix
* fix: clear action token on drop and refactor header setting
* feat(drivers/mediafire): optimize file caching - support direct stream processing
- Remove forced caching to *os.File type
- Support generic model.File interface for better flexibility
- Improve upload efficiency by avoiding unnecessary file conversions
- Fix return type to use model.Object instead of model.ObjThumb
* feat(drivers/mediafire): improve global rate limiting
- Ensure all API methods properly use context for rate limiting
- Fix context parameter usage in getDirectDownloadLink, getActionToken, getFileByHash
- Maintain consistent rate limiting across all MediaFire API calls
* feat(drivers/mediafire): unify return types - remove unnecessary ObjThumb
- Change MakeDir, Rename, Copy methods to return model.Object instead of model.ObjThumb
- Remove empty Thumbnail fields where not meaningful
- Keep ObjThumb only for fileToObj (List operations) which provides actual thumbnail URLs
- Improve code consistency and reduce unnecessary wrapper objects
* refactor(drivers/mediafire): extract common error handling logic
- Add checkAPIResult helper function to reduce code duplication
- Replace repetitive MediaFire API error checks with centralized function
- Maintain specific error messages for unique cases (token, upload, search)
- Improve code maintainability and consistency
* enhance(drivers/mediafire): improve quick upload implementation
- Add null check for existingFile to prevent potential issues
- Improve error handling in quick upload - continue normal upload if search fails
- Add detailed comments explaining quick upload logic
- Optimize getExistingFileInfo with clearer fallback strategy
- Ensure upload reliability even when file search encounters issues
* refactor(drivers/mediafire): optimize request method reusability
- Extract common HTTP request logic into apiRequest method
- Reduce code duplication between getForm and postForm methods
- Maintain backward compatibility with existing method signatures
- Centralize rate limiting and header management
- Support extensible HTTP method handling
* docs(drivers/mediafire): add comprehensive English comments
- Add function-level comments for all major driver methods
- Document Init, List, Link, MakeDir, Move, Rename, Copy, Remove, Put methods
- Add comments for key utility functions including session token management
- Improve code readability and maintainability for community collaboration
- Follow Go documentation conventions with clear, concise descriptions
* perf(mediafire): optimize memory allocation and type assertion performance
- Pre-allocate slice capacity in getFiles and bitmap conversion to reduce reallocations
- Cache file type check in uploadUnits to avoid repeated type assertions
- Add uploadSingleUnitOptimized for os.File to eliminate redundant type checks
- Optimize string to int conversion with proper error handling
- Improve memory efficiency in file upload operations
* fix(mediafire): upload without cache
* feat(mediafire): add rate limiting to all API methods
- Add WaitLimit(ctx) calls to all driver methods: List, Link, MakeDir, Move, Rename, Copy, Remove, Put
- Ensure consistent rate limiting across all MediaFire API interactions
- Follow project standard pattern used by other drivers
* feat(mediafire): improve error handling consistency
- Add context parameter to all HTTP API functions for proper context propagation
- Update getForm, postForm and apiRequest to accept context parameter
- Fix rate limiting to use caller context instead of background context
- Ensure consistent error handling patterns across all API calls
- Improve cancellation and timeout support
* feat(mediafire): refactor resumableUpload to use io.ReadSeeker and improve upload handling
* fix(mediafire): release section reader
* feat: add disk usage
* feat(drivers/mediafire): support concurrent upload (#1387 )
* feat(drivers): add MediaFire driver with concurrent upload support
- Implement complete MediaFire storage driver with session token authentication
- Support all core operations: List, Get, Link, Put, Copy, Move, Remove, Rename, MakeDir
- Include thumbnail generation for media files
- Handle MediaFire's resumable upload with intelligent and multi-unit transfers
- Support concurrent chunk uploads using errgroup.NewOrderedGroupWithContext, using splitted file caching for large files
- Optimize memory usage with adaptive buffer sizing (10MB-100MB (default))
- Include rate limiting and retry logic for API requests
- Add proper error handling and progress reporting
- Handle MediaFire's bitmap-based resumable upload protocol
Closes PR #1322
* feat(stream): add DiscardSection method to StreamSectionReader for skipping data
* feat(mediafire): refactor resumableUpload logic for improved upload handling and error management
* fix(mediafire): stop cron job and clear action token in Drop method
* .
* fix(mediafire): optimize buffer sizing logic in uploadUnits method
* fix(docs): remove duplicate MediaFire
* fix(mediafire): revert 'optimization', large files should not be fully chached.
---------
Signed-off-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
Co-authored-by: Da3zKi7 <da3zki7@duck.com >
Co-authored-by: D@' 3z K!7 <99719341+Da3zKi7@users.noreply.github.com >
Co-authored-by: j2rong4cn <j2rong@qq.com >
Co-authored-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
* fix(mediafire): optimize hash calculation in uploadUnits function
* feat(drivers/mediafire): support concurrent upload (#1366 )
* feat(drivers): add MediaFire driver with concurrent upload support
- Implement complete MediaFire storage driver with session token authentication
- Support all core operations: List, Get, Link, Put, Copy, Move, Remove, Rename, MakeDir
- Include thumbnail generation for media files
- Handle MediaFire's resumable upload with intelligent and multi-unit transfers
- Support concurrent chunk uploads using errgroup.NewOrderedGroupWithContext, using splitted file caching for large files
- Optimize memory usage with adaptive buffer sizing (10MB-100MB (default))
- Include rate limiting and retry logic for API requests
- Add proper error handling and progress reporting
- Handle MediaFire's bitmap-based resumable upload protocol
Closes PR #1322
* feat(stream): add DiscardSection method to StreamSectionReader for skipping data
* feat(mediafire): refactor resumableUpload logic for improved upload handling and error management
* fix(mediafire): stop cron job and clear action token in Drop method
* .
* fix(mediafire): optimize buffer sizing logic in uploadUnits method
* fix(docs): remove duplicate MediaFire
* fix(mediafire): revert 'optimization', large files should not be fully chached.
---------
Signed-off-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
Signed-off-by: D@' 3z K!7 <99719341+Da3zKi7@users.noreply.github.com >
Co-authored-by: j2rong4cn <j2rong@qq.com >
Co-authored-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
---------
Signed-off-by: ILoveScratch <ilovescratch@foxmail.com >
Signed-off-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
Signed-off-by: D@' 3z K!7 <99719341+Da3zKi7@users.noreply.github.com >
Co-authored-by: D@' 3z K!7 <99719341+Da3zKi7@users.noreply.github.com >
Co-authored-by: Da3zKi7 <da3zki7@duck.com >
Co-authored-by: KirCute <951206789@qq.com >
Co-authored-by: Suyunmeng <Susus0175@proton.me >
Co-authored-by: j2rong4cn <j2rong@qq.com >
Co-authored-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
2025-09-30 21:55:41 +08:00
j2rong4cn
9d3da44a99
fix(chunk): ensure NumListWorkers is set during Chunk initialization ( #1396 )
2025-09-30 21:39:19 +08:00
j2rong4cn
8f17d35ed5
feat(chunk): add ChunkPrefix and ChunkLargeFileOnly options ( #1321 )
...
* fix(chunk): move chunk existence check to Link method
* feat(chunk): add chunk prefix configuration
* feat(chunk): add chunk_large_file_only configuration
* feat(chunk): concurrently list chunk folder
* refactor(chunk): remove unnecessary mutex for result handling in List method
---------
Co-authored-by: KirCute <kircute@foxmail.com >
2025-09-30 21:26:06 +08:00
HG-ha
89759b6e3b
fix(lanzou): support acw_sc__v2 and secondary validation for download link ( #1379 )
...
* 重定向链接添加acw_sc__v2验证
在最新的蓝奏云解析中,最后重定向获取真实地址时也需要添加acw_sc__v2信息
Signed-off-by: HG-ha <60115106+HG-ha@users.noreply.github.com >
* 重定向链接添加acw_sc__v2验证
Signed-off-by: HG-ha <60115106+HG-ha@users.noreply.github.com >
* 重定向真实下载链接添加acw_sc__v2验证
Signed-off-by: HG-ha <60115106+HG-ha@users.noreply.github.com >
* fix: CalcAcwScV2
* Add error handling for response body read
Handle error when reading response body.
Signed-off-by: HG-ha <60115106+HG-ha@users.noreply.github.com >
* Improve response handling and validation logic
优化重定向资源管理,添加二次人机验证acw_sc__v2处理
Signed-off-by: HG-ha <60115106+HG-ha@users.noreply.github.com >
---------
Signed-off-by: HG-ha <60115106+HG-ha@users.noreply.github.com >
Co-authored-by: foxxorcat <foxxorcat@foxmail.com >
2025-09-30 17:07:30 +08:00
KirCute
a2fc38be8d
perf(disk-usage): concurrently get details ( #1326 )
2025-09-29 23:26:56 +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
KirCute
b486af0031
feat(sftp-server): support disable password login ( #1357 )
2025-09-29 21:46:55 +08:00
j2rong4cn
ea09ce4b8f
fix(fs): improve error handling in op.Get ( #1323 )
2025-09-29 21:38:34 +08:00
KirCute
d465da43e3
fix(ftp-server): cannot get obj in uploading state inconsistency window ( #1293 )
...
* fix(ftp-server): cannot get obj in uploading state inconsistency window
* fix
* fix: duplicate obj when upload completed but client access does not
* fix
* feat: support stat remove and move
2025-09-23 01:00:18 +08:00
Dgs
84ed487950
feat(quark_uc_tv): add order by and direction options for file listing ( #1325 )
2025-09-21 20:43:32 +08:00
ILoveScratch
3c07144211
chore(announcement): change default announcement text ( #1319 )
...
* chore(announcement): change default announcement text for better clarity
- Improve site announcement style for a more polished look
- Adjust default value to avoid unclear meaning with only repo or single link
2025-09-20 23:06:40 +08:00
KirCute
3936e736e6
feat(drivers): add a driver that divides large files into multiple chunks ( #1153 )
2025-09-19 19:27:35 +08:00
KirCute
68433d4f5b
fix(local): cannot mkdir on specific platforms ( #1304 )
2025-09-19 15:34:58 +08:00
KirCute
cc16cb35bf
feat(style): add driver icons and disk usage ( #1274 )
...
* feat(style): add driver icons and disk usage
* feat(driver): add disk usage for 115_open, 123_open, aliyundrive_open and baidu_netdisk
* feat(driver): add disk usage for crypt, sftp and smb
* chore: clean unused variable
* feat(driver): add disk usage for cloudreve_v4
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* fix(local): disk label check when getting disk usage
* feat(style): return details when accessing the manage page
---------
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
2025-09-19 11:59:11 +08:00
Yinan Qin
d3bc6321f4
chore(build): update Go version to 1.25.0 across workflows and build scripts ( #1290 )
...
build: update Go version to 1.25.0 across workflows and build scripts
fixes #1286
2025-09-16 18:44:29 +08:00
TwoOnefour
cbbb5ad231
fix(stream): http chucked upload issue ( #1152 )
...
* fix(stream): http chucked upload issue
* fix(stream): use MmapThreshold
* fix(stream): improve caching mechanism and handle size=0 case
* fix bug
* fix(buffer): optimize ReadAt method for improved performance
* fix(upload): handle Content-Length and File-Size headers for better size management
* fix(189pc): 移除重复限速
* fix(upload): handle negative file size during streaming uploads
* fix(upload): update header key from File-Size to X-File-Size for size retrieval
---------
Co-authored-by: j2rong4cn <j2rong@qq.com >
2025-09-15 19:36:16 +08:00
hshpy
c1d03c5bcc
fix(security): zip slip ( #1228 )
...
* fix(security): Zip Slip
* chore:remove repeat clean
* fix: archives,iso9660 and rardecode module
---------
Co-authored-by: ILoveScratch <ilovescratch@foxmail.com >
2025-09-15 13:25:21 +08:00
KirCute
61a8ed515f
fix(123): add get and list hash info ( #1278 )
2025-09-14 21:36:54 +08:00
KirCute
bbb7c06504
feat(alias): support pass through provider ( #1269 )
2025-09-14 21:36:38 +08:00
ILoveScratch
8bbdb272d4
docs(readme): extend driver list with newest support ( #1271 )
2025-09-13 20:41:17 +08:00
foxxorcat
c15ae94307
feat(189PC,189TV): add refreshToken and qrcode login ( #1205 )
...
### Key Changes
- **189PC**: Add QR code login and refresh token support
- **189TV**: Add session refresh mechanism and fix TempUuid persistence issue
- **Both**: Implement session keep-alive with cron jobs (5min interval)
### Features
- QR code authentication for 189PC as alternative to password login
- Automatic token refresh to avoid frequent re-authentication
- Session keep-alive to maintain long-term connections
- Retry logic with max attempts to prevent infinite loops
### Fixes
- Fixed 189TV TempUuid causing storage corruption on QR code reload
- Enhanced error handling for token expiration scenarios
2025-09-13 13:59:47 +08:00
MadDogOwner
f1a5048558
feat(drivers): add cnb_releases ( #1033 )
...
* feat(drivers): add cnb_releases
* feat(cnb_release): implement reference
* refactor(cnb_releases): get release info by ID instead of tag name
* feat(cnb_releases): add option to use tag name instead of release name
* fix(cnb_releases): set default root and improve release info retrieval
* feat(cnb_releases): implement Put
* perf(cnb_release): use io.Pipe to stream file upload
* perf(cnb_releases): add context timeout for file upload request
* feat(cnb_releases): implement Remove
* feat(cnb_releases): implement MakeDir
* feat(cnb_releases): implement Rename
* feat(cnb_releases): require repo and token in Addition
* chore(cnb_releases): remove unused code
* Revert 'perf(cnb_release): use io.Pipe to stream file upload'
* perf(cnb_releases): optimize upload with MultiReader
* feat(cnb_releases): add DefaultBranch
---------
Co-authored-by: ILoveScratch <ilovescratch@foxmail.com >
2025-09-11 18:11:32 +08:00
Tursom K. Ulefits
1fe26bff9a
feat(local): auto create recycle dir if not exists ( #1244 )
2025-09-10 20:57:21 +08:00
Suyunjing
433dcd156b
fix(ci): add tag_name to upload assets step ( #1234 )
...
fix(release): add tag_name to upload assets step
2025-09-06 22:51:05 +08:00
MadDogOwner
e97f0a289e
feat(cloudreve_v4): enhance token management ( #1171 )
...
* fix(cloudreve_v4): improve error handling in request method
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* feat(cloudreve_v4): enhance token management with expiration checks and refresh logic
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* feat(cloudreve_v4): add JWT structures for access and refresh tokens; validate access token on initialization
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* fix(cloudreve_v4): improve error messages
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
---------
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
2025-09-04 19:41:41 +08:00
walloo
89f35170b3
fix(fs): clear cache after directory rename to ensure consistency ( #1193 )
...
Clear cache after renaming the directory.
2025-09-01 18:47:54 +08:00
MadDogOwner
8188fb2d7d
fix(123open): get direct link ( #1185 )
...
* fix(123open): correct query parameter name from 'fileId' to 'fileID' in getDirectLink function
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* fix(123open): change SpaceTempExpr type from 'string' to 'int64' in UserInfoResp struct
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* fix(123open): comment out unused fields in UserInfoResp struct
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* fix(123open): add getUID method and cache UID
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
---------
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
2025-08-31 15:47:38 +08:00
MadDogOwner
87cf95f50b
fix(139): refactor part upload logic ( #1184 )
...
* fix(139): refactor part upload logic
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* fix(139): handle upload errors
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* fix(139): sort upload parts by PartNumber before uploading
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* fix(139): improve error handling
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* fix(139): add validation for upload part index to prevent out of bounds errors
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
---------
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
2025-08-31 15:47:12 +08:00
MadDogOwner
8ab26cb823
fix(123open): change DirectLink type from 'boolean' to 'bool' ( #1180 )
...
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
2025-08-29 19:06:37 +08:00
j2rong4cn
5880c8e1af
fix(189tv): use rate-limited upload stream in OldUpload function ( #1176 )
...
* fix(189tv): use rate-limited upload stream in OldUpload function
* fix(189tv): wrap tempFile with io.NopCloser to prevent premature closure in OldUpload function
* .
2025-08-29 16:01:50 +08:00
KirCute
14bf4ecb4c
fix(share): support custom proxy url ( #1130 )
...
* feat(share): support custom proxy url
* fix(share): count access
* fix: maybe a path traversal vulnerability?
2025-08-28 22:11:19 +08:00
hshpy
04a5e58781
fix(server): can't edit .md source files ( #1159 )
...
* fix(server): can't edit .md source files
* chore
* add ignore direct link args
2025-08-28 16:19:57 +08:00
MadDogOwner
bbd4389345
fix(wopan): use fixed timezone for parsing time ( #1170 )
...
fix(wopan): update getTime function to use fixed timezone for parsing
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
2025-08-28 13:02:02 +08:00
MadDogOwner
f350ccdf95
fix(189pc): sliceSize must not be equal to fileSize ( #1169 )
...
* fix(189pc): sliceSize not equal to fileSize
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* Update comment for sliceSize parameter
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
---------
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
2025-08-28 11:32:40 +08:00
Caspian
4f2de9395e
feat(degoo): token improvement ( #1149 )
...
* Update driver.go
Signed-off-by: Caspian <app@caspian.im >
* Update meta.go
Signed-off-by: Caspian <app@caspian.im >
* Update util.go
Signed-off-by: Caspian <app@caspian.im >
* Update util.go
Signed-off-by: Caspian <app@caspian.im >
* Update util.go
Signed-off-by: Caspian <app@caspian.im >
* Update util.go
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* make account optional
* ensure username and password
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
---------
Signed-off-by: Caspian <app@caspian.im >
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
2025-08-26 01:22:59 +08:00
TwoOnefour
b0dbbebfb0
feat(drivers): add Teldrive driver ( #1116 )
...
https://github.com/tgdrive/teldrive
https://teldrive-docs.pages.dev/docs/api
实现:
* copy
* move
* link (302 share and local proxy)
* chunked uploads
* rename
未实现:
- openlist扫码登陆
- refresh token
https://github.com/OpenListTeam/OpenList-Docs/pull/155
* feat(Teldrive): Add driver Teldrive
* fix(teldrive): force webproxy and memory optimized
* chore(teldrive): go fmt
* chore(teldrive): remove TODO
* chore(teldrive): organize code
* feat(teldrive): add UseShareLink option and support 302
* fix(teldrive): standardize API path construction
* fix(teldrive): trim trailing slash from Address in Init method
* chore(teldrive): update help text for UseShareLink field in Addition struct
* fix(teldrive): set 10 MiB as default chunk size
---------
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
Co-authored-by: ILoveScratch <ilovescratch@foxmail.com >
2025-08-25 01:34:08 +08:00
MadDogOwner
0c27b4bd47
docs(contributing): update guidelines ( #983 )
...
[skip ci]
* docs(contributing): update guidelines
* docs(contributing): clarify fork
* docs(contributing): sync translation
Co-authored-by: Yinan Qin <39023210+elysia-best@users.noreply.github.com >
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* docs(contributing): add label and cc reminder
* docs(contributing): remove ensure new branch from checklist
* docs(contributing): replace generic GitHub URLs with user-specific ones
* docs(contributing): make branch deletion after PR merge optional
* docs(contributing): keep --recurse-submodules
---------
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
Co-authored-by: Yinan Qin <39023210+elysia-best@users.noreply.github.com >
2025-08-24 20:13:11 +08:00
power721
736cd9e5f2
fix(quark): fix getTranscodingLink ( #1136 )
...
The first video info may not contain url
* fix(quark): fix getTranscodingLink
* fix(quark_tv): fix getTranscodingLink
2025-08-24 19:55:10 +08:00
power721
c7a603c926
fix(115): fix get 115 app version ( #1137 )
2025-08-24 19:50:21 +08:00
Edward
a28d6d5693
fix(123_open): fix token refresh ( #1121 )
2025-08-23 23:01:41 +08:00
Caspian
e59d2233e2
feat(drivers): add Degoo driver ( #1097 )
...
* Create driver.go
Signed-off-by: CaspianGUAN <app@caspian.im >
* Create util.go
Signed-off-by: CaspianGUAN <app@caspian.im >
* Create types.go
Signed-off-by: CaspianGUAN <app@caspian.im >
* Create meta.go
Signed-off-by: CaspianGUAN <app@caspian.im >
* Update drivers/degoo/driver.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: CaspianGUAN <app@caspian.im >
* Update drivers/degoo/driver.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: CaspianGUAN <app@caspian.im >
* Update driver.go
Signed-off-by: CaspianGUAN <app@caspian.im >
* Update meta.go
Signed-off-by: CaspianGUAN <app@caspian.im >
* Update types.go
Signed-off-by: CaspianGUAN <app@caspian.im >
* Update util.go
Signed-off-by: CaspianGUAN <app@caspian.im >
* Update driver.go
Signed-off-by: CaspianGUAN <app@caspian.im >
* Update util.go
Signed-off-by: CaspianGUAN <app@caspian.im >
* Update drivers/degoo/util.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: CaspianGUAN <app@caspian.im >
* Update util.go
Signed-off-by: CaspianGUAN <app@caspian.im >
* refactor(degoo): add Degoo driver integration and update API handling
* fix(degoo): apply suggestions
---------
Signed-off-by: CaspianGUAN <app@caspian.im >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
2025-08-23 22:47:02 +08:00
我怎么就不是一只猫呢?
01914a06ef
refactor(ci): add permissions check at docker's entrypoint ( #1128 )
...
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
2025-08-22 19:35:48 +08:00
Shelton Zhu
6499374d1c
fix(deps): update 115driver to v1.1.1 (close SheltonZhu/115driver#57) ( #1115 )
2025-08-20 21:33:21 +08:00
MadDogOwner
b054919d5c
feat(ilanzou): add support for rapid upload and fix duplication handling ( #1065 )
...
* feat(ilanzou): add support for rapid upload token handling
* feat(ilanzou): add NoOverwriteUpload option
2025-08-19 19:19:44 +08:00
KirCute
048ee9c2e5
feat(server): adapting #1099 to #991 ( #1102 )
2025-08-19 15:48:59 +08:00
MadDogOwner
23394548ca
feat(123_open): add DirectLink option ( #1045 )
...
* feat(123_open): add `UseDirectLink` option
* feat(123_open): update rate limit rules
* fix(123_open): update api
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* feat(123_open): enhance direct link functionality with private key and expiration
* refactor(123_open): use UUID for random generation
---------
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-08-19 15:23:10 +08:00
MadDogOwner
b04677b806
feat(server): add error page and status code ( #1099 )
2025-08-19 15:18:12 +08:00
KirCute
e4c902dd93
feat(share): support more secure file sharing ( #991 )
...
提供一种类似大多数网盘的文件分享操作,这种分享方式可以通过强制 Web 代理隐藏文件源路径,可以设置分享码、最大访问数和过期时间,并且不需要启用 guest 用户。
在全局设置中可以调整:
- 是否强制 Web 代理
- 是否允许预览
- 是否允许预览压缩文件
- 分享文件后,点击“复制链接”按钮复制的内容
前端部分:OpenListTeam/OpenList-Frontend#156
文档部分:OpenListTeam/OpenList-Docs#130
Close #183
Close #526
Close #860
Close #892
Close #1079
* feat(share): support more secure file sharing
* feat(share): add archive preview
* fix(share): fix some bugs
* feat(openlist_share): add openlist share driver
* fix(share): lack unwrap when get virtual path
* fix: use unwrapPath instead of path for virtual file name comparison
* fix(share): change request method of /api/share/list from GET to Any
* fix(share): path traversal vulnerability in sharing path check
* 修复分享alias驱动的文件 没开代理时无法获取URL
* fix(sharing): update error message for sharing root link extraction
---------
Co-authored-by: Suyunmeng <69945917+Suyunmeng@users.noreply.github.com >
Co-authored-by: j2rong4cn <j2rong@qq.com >
2025-08-19 15:10:02 +08:00
MadDogOwner
5d8bd258c0
refactor(docker): reduce docker image size ( #1091 )
...
* fix(docker): reduce image size
* refactor(docker): update user and group creation
* Update Dockerfile
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
---------
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-08-19 10:27:33 +08:00
huancun _-
08c5283c8c
feat(docker): Update docker-compose configuration ( #1081 )
...
* feat(docker): Update docker-compose configuration
* Update docker-compose.yml
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
Signed-off-by: huancun _- <huancun@hc26.org >
---------
Signed-off-by: huancun _- <huancun@hc26.org >
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
2025-08-18 14:29:59 +08:00
我怎么就不是一只猫呢?
10a14f10cd
fix(docker): improve startup process and SIGTERM handling ( #1089 )
...
* fix(ci): Modify the way of star OpenList.
* fix(ci): start runsvdir
2025-08-18 11:13:05 +08:00
j2rong4cn
f86ebc52a0
refactor(123_open): improve upload ( #1076 )
...
* refactor(123_open): improve upload
* optimize buffer initialization for multipart form
* 每次重试生成新的表单
* .
2025-08-17 14:25:23 +08:00
j2rong4cn
016ed90efa
feat(stream): fast buffer freeing for large cache ( #1053 )
...
Signed-off-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-08-16 17:19:52 +08:00
tuthanika
d76407b201
fix(dropbox): incorrect path error during upload ( #1052 )
...
* Fix incorrect path error during upload on Dropbox
* Add RootNamespaceId to the config for direct modification
* Refactor Dropbox header logic: extract JSON marshaling into helper method
* Fix Dropbox: replace marshalToJSONString with utils.Json.MarshalToString
2025-08-16 14:18:02 +08:00
yuyamionini
5de6b660f2
fix(terabox): user not exists error ( #1056 )
...
* fix user location error when upload file
2025-08-15 21:25:57 +08:00
Suyunjing
71ada3b656
fix(ci-sync): fix workflow for syncing Repository ( #1062 )
2025-08-15 18:48:55 +08:00
Suyunjing
dc42f0e226
[skip ci]fix(ci): update sync workflow ( #1061 )
2025-08-15 18:36:52 +08:00
Suyunjing
74bf9f6467
[skip ci]feat(sync): add workflow to sync GitHub repository ( #1060 )
...
feat(sync): add workflow to sync GitHub repository to Gitee
2025-08-15 18:12:29 +08:00
我怎么就不是一只猫呢?
d0c22a1ecb
feat(ci): add the default user for docker image ( #1036 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-08-12 09:51:40 +08:00
j2rong4cn
57fceabcf4
perf(stream): improve file stream range reading and caching mechanism ( #1001 )
...
* perf(stream): improve file stream range reading and caching mechanism
* 。
* add bytes_test.go
* fix(stream): handle EOF and buffer reading more gracefully
* 注释
* refactor: update CacheFullAndWriter to accept pointer for UpdateProgress
* update tests
* Update drivers/google_drive/util.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
* 更优雅的克隆Link
* 修复stream已缓存但无法重复读取
* 将Bytes类型重命名为Reader
* 修复栈溢出
* update tests
---------
Signed-off-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-08-11 23:41:22 +08:00
MadDogOwner
8c244a984d
refactor(assets): migrate to resource domain ( #975 )
...
* refactor(assets): migrate to resource domain
* feat(bootstrap): add migration value for logo and favicon settings
2025-08-10 09:57:33 +08:00
火星大王
df479ba806
fix(aliyundrive_open): limit rate for every request ( close #724 ) ( #1011 )
...
* fix(aliyundrive_open): limit rate for `Remove` and `MakeDir`; reduce limit for `List` and `Link` (close #724 )
* Update drivers/aliyundrive_open/driver.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: 火星大王 <34576789+huoxingdawang@users.noreply.github.com >
* Update drivers/aliyundrive_open/driver.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: 火星大王 <34576789+huoxingdawang@users.noreply.github.com >
* fix(aliyundrive_open): limit rate for every request
* fix(aliyundrive_open): fix limiter not work on reference driver
* fix(aliyundrive_open): typo
* fix(aliyundrive_open): limiter not set to nil after free
* fix(aliyundrive_share): limit rate for every request
---------
Signed-off-by: 火星大王 <34576789+huoxingdawang@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-08-10 09:55:20 +08:00
MadDogOwner
5ae8e96237
feat(123_open): update Put method to return model.Obj ( #1008 )
...
* feat(123_open): update Put method to return model.Obj
* fix(123_open): declear time zones
* chore(123_open): fix typo
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
* fix(123_open): use fixed timezone
* fix(123_open): implement PutResult interface for Open123 driver
---------
Signed-off-by: MadDogOwner <xiaoran@xrgzs.top >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Suyunmeng <69945917+Suyunmeng@users.noreply.github.com >
2025-08-09 15:09:12 +08:00
Suyunjing
aa0ced47b0
fix(webdav): Handle HEAD requests for directories with appropriate headers ( #1015 )
...
Implement handling of HEAD requests for directories by setting the correct Content-Type and Content-Length headers.
2025-08-09 13:57:09 +08:00
Suyunjing
ab747d9052
feat(config): Add PWA manifest.json endpoint for web app installation ( #990 )
...
* feat(config): Add PWA manifest.json endpoint for web app installation
* fix: Update comment to English in manifest handler
* fix: fix EOL
* fix: Remove unused fmt import from manifest handler
* feat: use site settings for manifest name and icon
* fix(manifest): Move manifest.json route to static handler for proper CDN handling
* feat: move manifest.json handler to static package and improve path handling
* feat: Add custom static file handler to prevent manifest.json conflicts
* fix: Integrate manifest.json handling into static file serving routes
* fix: Simplify PWA manifest scope handling and static file serving
- Remove CDN-specific logic for PWA manifest scope and start_url
- Always use base path for PWA scope regardless of CDN configuration
- Replace manual file serving logic with http.FileServer for static assets
* fix: Ensure consistent base path handling in site configuration and manifest path construction
* fix: Refactor trailing slash handling in site configuration
* feat(static): update manifest path handling and add route for manifest.json
2025-08-08 20:07:51 +08:00
LmanTW
93c06213d4
feat(local): add directory size support ( #624 )
...
* feat(local): add directory size support
* fix(local): fix and improve directory size calculation
* style(local): fix code style
* style(local): fix code style
* style(local): fix code style
* fix(local): refresh directory size when force refresh
Signed-off-by: 我怎么就不是一只猫呢? <26274059+dezhishen@users.noreply.github.com >
* fix:(local): Avoid traversing the parent's parent, which leads to an endless loop
Signed-off-by: 我怎么就不是一只猫呢? <26274059+dezhishen@users.noreply.github.com >
* fix(local:) refresh dir size only enabled
Signed-off-by: 我怎么就不是一只猫呢? <26274059+dezhishen@users.noreply.github.com >
* fix(local): logical error && add RecalculateDirSize && cleaner code for int64
* feat(local): add Benchmark for CalculateDirSize
* refactor(local): 优化移动中对于错误的判断。
---------
Signed-off-by: 我怎么就不是一只猫呢? <26274059+dezhishen@users.noreply.github.com >
Co-authored-by: 我怎么就不是一只猫呢? <26274059+dezhishen@users.noreply.github.com >
2025-08-08 16:59:16 +08:00
Suyunjing
b9b8eed285
[skip ci]feat(ci): add FRONTEND_REPO variable to workflows and build script ( #1006 )
2025-08-08 16:36:22 +08:00
j2rong4cn
317d190b77
fix(ftp): create a new connection for each download ( #989 )
2025-08-06 20:35:01 +08:00
Sakana
52d7d819ad
feat(lenovonas_share): add thumb ( #986 )
2025-08-06 17:34:43 +08:00
RedSTAR.Cheng
0483e0f868
feat(driver_strm): also shown some files with strm ( #969 )
...
* feat(driver_strm): Also shown some files with strm
Allow user set some file types that need to shown with strm, usually subtitles
Most of code was copy and managed from drivers/alias
* 优化
* 优化
* 。
* 添加注释
---------
Co-authored-by: j2rong4cn <j2rong@qq.com >
Co-authored-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
2025-08-06 15:40:48 +08:00
MadDogOwner
08dae4f55f
feat(123_open): update upload api v2 ( #976 )
2025-08-06 15:27:13 +08:00
j2rong4cn
9ac0484bc0
perf(ftp): improve concurrent Link response; fix alias/local driver issues ( #974 )
2025-08-06 13:32:37 +08:00
j2rong4cn
8cf15183a0
perf: optimize upload ( #554 )
...
* pref(115,123): optimize upload
* chore
* aliyun_open, google_drive
* fix bug
* chore
* cloudreve, cloudreve_v4, onedrive, onedrive_app
* chore(conf): add `max_buffer_limit` option
* 123pan multithread upload
* doubao
* google_drive
* chore
* chore
* chore: 计算分片数量的代码
* MaxBufferLimit自动挡
* MaxBufferLimit自动挡
* 189pc
* errorgroup添加Lifecycle
* 查缺补漏
* Conf.MaxBufferLimit单位为MB
* 。
---------
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
2025-08-05 21:42:54 +08:00
MadDogOwner
c8f2aaaa55
feat(cmd): add delete command for storage ( #952 )
2025-08-04 17:30:43 +08:00
j2rong4cn
1208bd0a83
fix(fs): nil interface not equal to nil ( #971 )
...
https://go.dev/doc/faq#nil_error
2025-08-03 23:51:11 +08:00
j2rong4cn
6b096bcad4
fix(fs): deadlock when get link error ( #963 )
2025-08-02 17:49:53 +08:00
Seven
58dbf088f9
fix(fs): forget cache when get link error ( #956 )
2025-08-02 11:03:34 +08:00
Seven
05ff7908f2
fix(strm): encoded path is ineffective ( #951 )
2025-08-02 00:23:18 +08:00
Suyunjing
a703b736c9
feat(offline_download): filter empty URLs in offline download requests ( #948 )
2025-08-01 16:12:21 +08:00
MadDogOwner
e458f2ab53
fix(bootstrap): add newline after initial admin password output ( #943 )
...
fix(bootstrap): add newline after initial admin password output
2025-08-01 13:43:41 +08:00
Rambin
a5a22e7085
fix(local): Treat junction as directory in Windows. ( #809 )
...
Treat junction as directory in Windows.
2025-07-31 13:54:56 +08:00
hshpy
9469c95b14
fix(security): potential XSS vulnerabilities ( #896 )
2025-07-31 12:57:20 +08:00
MadDogOwner
cf912dcf7a
fix(cmd): output to console ( #920 )
...
fix(cmd): output to terminal
2025-07-31 11:44:00 +08:00
MadDogOwner
ccd4af26e5
feat(patch): add migration from Alist V3 driver to OpenList ( #919 )
...
* feat(patch): add migration from Alist V3 driver to OpenList
* chore(patch): improve logging
2025-07-31 11:43:21 +08:00
hcrgm
1682e873d6
feat(search): enhanced meilisearch search experience ( #864 )
...
* feat(search): enhanced `meilisearch` search experience
- upgrade `meilisearch` dependency
- support subdirectory search
- optimize searchDocument fields for subdirectory search
- specify full index uid instead of index prefix
* fix(search): more fixes to `meilisearch`
- make use of context where context was not used
- remove code of waiting task in deletion process, as tasks are queued and will be executed orderly (if tasks were submitted to the queue successfully), which can improve `AutoUpdate` performance
2025-07-31 11:24:22 +08:00
Seven
54ae7e6d9b
feat(115_open): Add GetObjInfo to accelerate getting link ( #888 )
...
* feat(115_open): Add GetObjInfo to accelerate getting link
* feat(fs): use cache directly when cache exist
2025-07-31 11:20:02 +08:00
Seven
991da7d87f
feat(strm): add local mode ( #885 )
...
* feat(strm): add local mode
* Update drivers/strm/meta.go
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
Signed-off-by: Seven <53081179+Seven66677731@users.noreply.github.com >
* feat(strm): local mode add sign
---------
Signed-off-by: Seven <53081179+Seven66677731@users.noreply.github.com >
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
2025-07-31 11:18:59 +08:00
Dgs
a498091aef
fix(123&&123_share): fix link request header referer ( #915 )
2025-07-31 10:10:38 +08:00
MadDogOwner
976c82bb2b
fix(drivers): update time-related fields to int64 ( #913 )
...
- In doubao/types.go:
- Change LastUpdateTime from int to int64
- Change UserCreateTime from int to int64
- In doubao_share/types.go:
- Change CreateTime and UpdateTime from int to int64 in ShareInfo and FilePath
- In quark_uc/types.go:
- Change UpdateTime from int to int64 in TranscodingResp
These changes ensure consistent and accurate representation of timestamp data across the project.
2025-07-31 10:10:32 +08:00
Suyunjing
5b41a3bdff
feat(ci): Add support for LoongArch64 architecture builds ( #907 )
2025-07-31 10:10:19 +08:00
Suyunjing
19d1a3b785
refactor(ci): Refactor Docker build to use base images and dynamic Dockerfile generation ( #904 )
2025-07-30 15:04:29 +08:00
Suyunjing
3c7b0c4999
fix(qb): Configure HTTP client with connection pooling and fix resource leaks in qBittorrent client. ( #898 )
2025-07-29 21:56:36 +08:00
ILoveScratch
d6867b4ab6
fix(user): show admin password on first start ( #883 )
...
* fix: fix admin password not shown in first start
* chore: add time dependence
Co-authored-by: Yinan Qin <39023210+elysia-best@users.noreply.github.com >
Signed-off-by: ILoveScratch <ilovescratch@foxmail.com >
* fix: fix log format
Co-authored-by: Yinan Qin <39023210+elysia-best@users.noreply.github.com >
Signed-off-by: ILoveScratch <ilovescratch@foxmail.com >
---------
Signed-off-by: ILoveScratch <ilovescratch@foxmail.com >
Co-authored-by: Yinan Qin <39023210+elysia-best@users.noreply.github.com >
2025-07-29 21:36:27 +08:00
hshpy
11cf561307
fix(security): potential XSS vulnerabilities ( #880 )
...
* fix(security): potential XSS vulnerabilities
* chore: replace alist identifier to openlist identifier
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
Signed-off-by: ILoveScratch <ilovescratch@foxmail.com >
---------
Signed-off-by: ILoveScratch <ilovescratch@foxmail.com >
Co-authored-by: ILoveScratch <ilovescratch@foxmail.com >
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
2025-07-29 20:17:11 +08:00
Suyunjing
239b58f63e
fix(ci):Disable linux/s390x Docker builds ( #887 )
2025-07-29 16:22:50 +08:00
MadDogOwner
7da06655cb
feat(setting): add site version information ( #859 )
...
* feat(setting): add site version information
* feat(conf): update conf.WebVersion to rolling
* fix(static): update condition to check conf.Version instead of conf.WebVersion
* fix(build.sh): use rolling release for web frontend in dev and beta builds
* chore(build.sh): update GitAuthor to The OpenList Projects Contributors
* fix(static): update condition to check conf.WebVersion
2025-07-29 09:49:33 +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
Suyunjing
be1ad08a83
feat(ci):Add Windows 7 and LoongArch Release build support ( #857 )
...
* feat:Add Windows 7 and LoongArch old world build support (#30 )
* feat:Add Windows 7 and Loongson old world build support
- Add BuildWin7() function with patched Go compiler for Windows 7 compatibility
- Add BuildLoongOldWorld() function for linux-loong64-abi1.0 target
- Create Zig-based wrapper scripts for Windows 7 cross-compilation
- Integrate new build functions into existing release workflows
* fix(win7):Add MinGW-w64 toolchain and improve LoongArch ABI isolation
- Install MinGW-w64 cross-compilation toolchain for Win7 compatibility
- Replace Zig compiler wrappers with MinGW-w64 for Windows 7 builds
- Add Go build cache cleaning to prevent LoongArch ABI1.0/ABI2.0 cross-contamination
- Force clean rebuilds (-a flag) for LoongArch builds to ensure ABI compatibility
* feat: add Windows 7 build support to beta release workflow
* feat: add LoongArch ABI2.0 support alongside existing ABI1.0 build (#31 )
- Add BuildWin7() function with patched Go compiler for Windows 7 compatibility
- Add BuildLoongOldWorld() function for linux-loong64-abi1.0 target
- Create Zig-based wrapper scripts for Windows 7 cross-compilation
- Integrate new build functions into existing release workflows
- Install MinGW-w64 cross-compilation toolchain for Win7 compatibility
- Replace Zig compiler wrappers with MinGW-w64 for Windows 7 builds
- Add Go build cache cleaning to prevent LoongArch ABI1.0/ABI2.0 cross-contamination
- Force clean rebuilds (-a flag) for LoongArch builds to ensure ABI compatibility
* [skip ci]refactor:Refactor LoongArch builds to separate glibc from musl compilation
* fix(go-cache):Improve error handling for Go module cache cleaning in LoongArch builds
* feat(build): Enhance LoongArch build process with improved toolchain setup and cache management
* fix(build): Update Windows 7 target naming in build scripts and workflows
* refactor(build): Replace MinGW-w64 with Zig for Windows 7 toolchain in build scripts
* chore(cgo): remove cgo-actions subproject
2025-07-27 00:27:31 +08:00
j2rong4cn
4e9c30f49d
feat(fs): full support webdav cross-driver copy and move ( #823 )
...
* fix(fs): restore webdav cross-driver copy and move
* fix bug
* webdav支持复制、移动 文件夹
* 优化
* 。
2025-07-26 00:27:46 +08:00
j2rong4cn
0ee31a3f36
fix(crypt): wrong ContentLength
2025-07-25 19:55:22 +08:00
MadDogOwner
23bddf991e
feat(drivers): enable local sorting for cloudreve, ilanzou ( #840 )
...
* feat(cloudreve): enable local sorting
* feat(ilanzou): enable local sorting
2025-07-25 18:01:19 +08:00
MadDogOwner
da8d6607cf
fix(static): support logo replacement ( #834 Close #754 )
2025-07-25 17:12:51 +08:00
hshpy
6134574dac
fix(fs): rename bug ( #832 )
...
* fix(fs): rename bug
* chore
* fix bug
* .
---------
Co-authored-by: j2rong4cn <j2rong@qq.com >
2025-07-25 13:42:39 +08:00
Ljcbaby
b273232f87
refactor(log): redir utils.Log to logrus after init ( #833 )
2025-07-25 13:38:45 +08:00
Ljcbaby
358e4d851e
refactor(log): filter ( #816 )
2025-07-25 11:33:27 +08:00
Suyunmeng
e8a1ed638a
fix(ci):Exclude FreeBSD patch releases from version detection
2025-07-24 22:41:45 +08:00
MadDogOwner
4106e2a996
fix(static): correct CDN fetch condition for index.html ( #814 )
2025-07-24 22:28:58 +08:00
Yinan Qin
c2271df64e
fix(ci): update OpenListTeam/cgo-actions to v1.2.2 to fix loongarch64 build ( #811 )
...
* Update beta_release.yml
* Update build.yml
2025-07-24 22:20:23 +08:00
huancun _-
d4b8570eb8
fix(docker): Fix the runsvdir permission issue caused by su-exec user switching and resolve the RUN_ARIA2 variable compatibility problem. ( #805 )
2025-07-24 17:22:49 +08:00
renovate[bot]
bd297e8ccc
fix(deps): update module golang.org/x/image to v0.29.0 ( #804 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-24 16:22:19 +08:00
renovate[bot]
923d282c8a
fix(deps): update module github.com/sheltonzhu/115driver to v1.1.0 ( #803 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-24 16:21:32 +08:00
renovate[bot]
4d8c4d7089
fix(deps): update module github.com/coreos/go-oidc to v2.3.0+incompatible ( #586 )
...
* fix(deps): update module github.com/coreos/go-oidc to v2.3.0+incompatible
* Update go.mod
Signed-off-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com >
---------
Signed-off-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com >
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com >
2025-07-24 16:21:03 +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
Suyunjing
a9f02ecdac
refactor(log):Refactor log filtering to use centralized configuration and add server-specific filtering ( #798 )
...
* feat(log):Add configurable log filtering middleware for HTTP requests
Implement a comprehensive log filtering system that allows selective suppression of HTTP request logs based on paths, methods, and prefixes. The system includes environment variable configuration support and filters health checks, WebDAV requests, and HEAD requests by default to reduce log noise.
* fix(log):Replace gin.DefaultLogFormatter with custom implementation
* Remove filtered logger test file
* fix(log):Refactor log filtering to use centralized configuration and add server-specific filtering
* fix(log):Add documentation comments for log filtering configuration
2025-07-24 16:10:47 +08:00
renovate[bot]
93849a3b5b
fix(deps): update module github.com/pquerna/otp to v1.5.0 ( #799 )
...
Signed-off-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com >
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com >
2025-07-24 16:07:23 +08:00
renovate[bot]
c2e0d0c9ce
fix(deps): update module github.com/protonmail/go-crypto to v1.3.0 ( #800 )
...
Signed-off-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com >
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com >
2025-07-24 16:06:50 +08:00
renovate[bot]
4a713363ee
fix(deps): update module github.com/azure/azure-sdk-for-go/sdk/storage/azblob to v1.6.2 ( #801 )
...
Signed-off-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com >
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com >
2025-07-24 16:06:10 +08:00
renovate[bot]
3da8ccb7a7
fix(deps): update module github.com/rclone/rclone to v1.70.3 ( #802 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-24 16:05:20 +08:00
renovate[bot]
676b8cff0b
fix(deps): update azure-sdk-for-go monorepo ( #579 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-24 10:27:36 +08:00
renovate[bot]
57cf28fc90
fix(deps): update github.com/fclairamb/ftpserverlib digest to 4a925d7 ( #675 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-24 10:26:39 +08:00
renovate[bot]
8cf90e074d
fix(deps): update module github.com/charmbracelet/bubbletea to v1.3.6 ( #585 )
...
Signed-off-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com >
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com >
2025-07-24 10:26:23 +08:00
renovate[bot]
74c2ed8306
fix(deps): update module github.com/charmbracelet/bubbles to v0.21.0 ( #583 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-24 10:25:09 +08:00
Suyunjing
5f03edd683
fix(fs):After the file is copied or moved, flush the cache of the directory that was copied or moved to. ( #592 )
...
* fix(fs):After the file is copied, the cache of the copied directory is refreshed
* fixed randomstring
* fixed EOL and Sync branch
chore(quark_uc): `webdav_policy` default to native_proxy
* fixed uuid and other bugs
* fixed comments
* fixed EOL
* add move refresh
* fixed builds
* fixed batch
* change betch to task.go
---------
Co-authored-by: Sumengjing <146963948+suyunjing-su@users.noreply.github.com >
2025-07-24 10:24:12 +08:00
hshpy
8b65c918d4
chore(permission): admin enables webdav read-only by default ( #726 )
...
chore: admin enables webdav read-only by default
2025-07-24 10:19:49 +08:00
renovate[bot]
b5f0e3e5ee
fix(deps): update module github.com/go-webauthn/webauthn to v0.13.4 ( #677 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-24 10:05:44 +08:00
renovate[bot]
179894ff37
fix(deps): update module github.com/ipfs/go-cid to v0.5.0 ( #680 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-24 10:05:05 +08:00
renovate[bot]
e2fc89c637
chore(deps): update dependency go to v1.24.5 ( #783 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-24 10:04:20 +08:00
renovate[bot]
cacf67b181
fix(deps): update module github.com/yuin/goldmark to v1.7.13 ( #794 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-24 10:04:00 +08:00
huancun _-
afb043e1d6
feat(docker): Change keep-alive strategy to runit, add aria2 log support ( #791 )
2025-07-24 09:19:33 +08:00
Suyunjing
d9debb81ad
feat(log):Add configurable log filtering middleware for HTTP requests ( #782 )
...
* feat(log):Add configurable log filtering middleware for HTTP requests
Implement a comprehensive log filtering system that allows selective suppression of HTTP request logs based on paths, methods, and prefixes. The system includes environment variable configuration support and filters health checks, WebDAV requests, and HEAD requests by default to reduce log noise.
2025-07-24 00:00:26 +08:00
yuyamionini
4c069fddd6
fix(terabox): file upload error ( #733 )
...
* fix(terabox):fix file upload error failed to create file errno 10
Signed-off-by: yuyamionini <46483865+yuyamionini@users.noreply.github.com >
* fix(terabox):fix file upload error failed to create file errno 10
Signed-off-by: yuyamionini <46483865+yuyamionini@users.noreply.github.com >
* replace the goto statement with the retry-go package
Signed-off-by: yuyamionini <46483865+yuyamionini@users.noreply.github.com >
* Update util.go
Signed-off-by: yuyamionini <46483865+yuyamionini@users.noreply.github.com >
* Update util.go
Signed-off-by: yuyamionini <46483865+yuyamionini@users.noreply.github.com >
* go fmt
---------
Signed-off-by: yuyamionini <46483865+yuyamionini@users.noreply.github.com >
Co-authored-by: MadDogOwner <xiaoran@xrgzs.top >
2025-07-23 23:42:12 +08:00
MadDogOwner
b450a2104d
chore(docs): update domain ( #788 )
...
* chore(docs): update domain
* docs(issue): add guide link for bug reporting
2025-07-23 14:26:21 +08:00
MadDogOwner
7d0de17daf
feat(static): fetch index.html from cdn for beta ( #372 )
...
* refactor(static): simplify folder iteration in Static function
* feat(static): disable local static when `cdn` is set
* feat(static): fetch index.html from cdn for beta
* refactor(static): use RestyClient for better retrying
* fix(static): add Accept header when fetching index.html from CDN
* refactor(static): optimize HTML replacement
* chore(static): add logging to static file system initialization
* feat(static): ensure static file redirected to CDN
2025-07-22 22:14:07 +08:00
hshpy
bba4fb2203
fix(security): directory traversal ( #744 )
...
* fix(security): Directory traversal
* chore: .
* 优化
---------
Co-authored-by: j2rong4cn <j2rong@qq.com >
2025-07-22 14:45:01 +08:00
j2rong4cn
a20c2020f8
fix(cmd): optimize parse of command flag --data ( #777 )
...
* Fix (cmd): optimize parse of command flag `--data`
* DBFile
* 优化
* os.Getwd()
2025-07-22 10:51:28 +08:00
MadDogOwner
a92b5eb929
refactor(cloudreve): use retry-go for net/http uploads ( #773 )
...
* refactor(cloudreve): use retry-go for uploads
* refactor(cloudreve_v4): use retry-go for uploads
* refactor(onedrive): use retry-go for uploads
* refactor(onedrive_app): use retry-go for uploads
* chore(onedrive_app): remove unnecessary error handling for host retrieval
* feat(cloudreve): move read logic inside retry block
* feat(cloudreve_v4): move read logic inside retry block
* feat(onedrive): move read logic inside retry block
* feat(onedrive_app): move read logic inside retry block
2025-07-22 10:25:04 +08:00
Yinan Qin
6817494a41
chore(ci): update cgo-actions to 1.2.1 & add patch version define for go ( #779 )
...
chore(ci): update cgo-actions to 1.2.1 & fix patch version for go
2025-07-22 09:02:07 +08:00
SenkjM
5a0d8ee1b8
feat(proxy): add disable proxy sign ( #764 )
...
* feat(proxy): add disable proxy sign
* Update driver.go
* GenerateDownProxyUrl
* .
* Update internal/op/driver.go
Signed-off-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
* .
---------
Signed-off-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
Co-authored-by: j2rong4cn <j2rong@qq.com >
Co-authored-by: j2rong4cn <36783515+j2rong4cn@users.noreply.github.com >
2025-07-21 17:03:08 +08:00
MadDogOwner
012e51c551
fix(cloudreve_v4): remove deprecated authn check for login ( #767 )
...
* fix(cloudreve_v4): disable authn check for login
* chore(cloudreve_v4): update site login config fields
2025-07-21 15:53:10 +08:00
Sakana
59ec1dbc9b
feat(lenovonas_share): add option to not show root directory ( #772 )
2025-07-21 14:38:10 +08:00
j2rong4cn
6bb28d13f9
fix(quark): set the transcoding link ContentLength to the correct size
2025-07-20 16:40:32 +08:00
Xi Xu
811a862288
feat(archives): add additional accepted archive extensions ( #747 )
2025-07-20 15:32:46 +08:00
j2rong4cn
74d32fd4d7
fix(simplehttp): logic bug when unable to parse file name ( #761 )
2025-07-20 14:13:30 +08:00
j2rong4cn
cedb3d488d
[skip ci] chore(ci): output binary name set to openlist
2025-07-19 23:02:29 +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
Pikachu Ren
648079ae24
remove upx ( #750 )
...
Update build.sh
Signed-off-by: Pikachu Ren <40362270+PIKACHUIM@users.noreply.github.com >
2025-07-18 12:38:17 +08:00
Dgs
e8d45398d6
feat(quark_uc_tv): add streaming link api ( #728 )
2025-07-17 14:24:16 +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
2a4c546a8b
feat: default settings api ( #716 )
...
* feat: default settings api
* fix logic bug
* chore
2025-07-14 23:41:34 +08:00
SenkjM
750d4eb3f6
docs(README): add disclaimer ( #705 )
...
add disclaimer
2025-07-13 15:22:25 +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
itsHenry
e5fbe72581
fix(security): add login count validation for webdav ( #693 )
2025-07-12 17:03:41 +08:00
Suyunmeng
283f3723d1
[skip ci] chore(ci): update openwrt hook
2025-07-12 12:06:36 +08:00
Suyunmeng
ad8c7b37a1
chore(ci):Disable duplicate build process
2025-07-12 11:49:27 +08:00
Suyunjing
a84ffb96e9
chore(ci):Simplify the build process ( #686 )
...
* refactor(ci):Minify build files
2025-07-11 20:30:31 +08:00
Seven
19c6b6f930
feat(115_open): add offline download ( #683 )
2025-07-11 20:17:54 +08:00
renovate[bot]
eed3c0533c
fix(deps): update module github.com/go-resty/resty/v2 to v2.16.5 ( #628 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-11 10:26:44 +08:00
renovate[bot]
c72ba9828a
fix(deps): update module github.com/deckarep/golang-set/v2 to v2.8.0 ( #589 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-11 10:25:08 +08:00
renovate[bot]
4965a1b909
fix(deps): update module github.com/blevesearch/bleve/v2 to v2.5.2 ( #582 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-11 10:24:50 +08:00
renovate[bot]
1bba550469
chore(deps): update dependency go to 1.24 ( #578 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-11 10:24:23 +08:00
renovate[bot]
d678322b18
fix(deps): update module github.com/yuin/goldmark to v1.7.12 ( #575 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-11 10:24:09 +08:00
renovate[bot]
efd8897bdf
fix(deps): update module github.com/pkg/sftp to v1.13.9 ( #574 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-07-11 10:23:52 +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
Seven
3838ef0663
feat(traffic): update progress when caching file ( #646 )
...
* feat(traffic): update progress when caching file
* 调整参数位置和命名
---------
Co-authored-by: j2rong4cn <j2rong@qq.com >
2025-07-08 21:41:45 +08:00
Seven
9e610af114
fix(115_open): upload progress error ( #637 )
2025-07-07 18:39:09 +08:00
j2rong4cn
0177177238
fix(crypt): pass refresh list request ( close #609 )
2025-07-06 13:20:42 +08:00
Suyunjing
a77e515c9b
fix(ocr): repair verification code OCR recognition service ( #602 )
...
* fix(ocr):Repair verification code OCR recognition service
* 修复对 非新用户 无效的问题
* chore: SettingItem.PreDefault重命名为MigrationValue
---------
Co-authored-by: j2rong4cn <j2rong@qq.com >
2025-07-06 13:09:17 +08:00
ILoveScratch
4af16ab009
fix(115open):fix limit_rate save ( #601 )
2025-07-06 12:07:07 +08:00
j2rong4cn
da35423198
[skip ci] chore: go mod tidy
2025-07-06 00:55:23 +08:00
j2rong4cn
9612d61e60
chore(pkg): update singleflight
2025-07-05 13:31:47 +08:00