Commit Graph

410 Commits

Author SHA1 Message Date
Gaius b7dc472df9
refactor(quic): integrate QUIC and downloader (#1378)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-25 19:57:04 +08:00
LXDgit2018 74a6f04b8c
feat: Add QUIC Client and Server Implementation for Piece Download in dragonfly-client-storage (#1376)
Signed-off-by: LXDgit2018 <1289504283@qq.com>
2025-09-25 11:31:20 +08:00
Gaius 7cf2e3d800
feat(export): add overwrite option for output files (#1374)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-24 21:33:42 +08:00
Gaius b9817dc279
fix(dfget): get wrong entries and add tests for entry retrieval functions (#1373)
* feat(grpc): add new DfdaemonDownloadClient creation method

Signed-off-by: Gaius <gaius.qi@gmail.com>

* test(dfget): add tests for entry retrieval functions

Signed-off-by: Gaius <gaius.qi@gmail.com>

---------

Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-24 12:05:38 +08:00
Gaius 02eddfbd10
refactor(dragonfly-client-util): request and pool logic (#1370)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-23 18:18:16 +08:00
Chlins Zhang 826aeabf08
feat: add the request sdk in dragonfly-client-util (#1333)
Signed-off-by: chlins <chlins.zhang@gmail.com>
2025-09-23 10:58:41 +08:00
Gaius 6a93a2d8d7
fix(grpc): correct download server IP retrieval (#1369)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-22 14:06:03 +00:00
Gaius c4fb049aac
feat(metric): add dragonfly-client-metric module (#1362)
* feat(metric): add dragonfly-client-metric module

Signed-off-by: Gaius <gaius.qi@gmail.com>

* chore(deps): update dragonfly-client versions to 1.0.22

Signed-off-by: Gaius <gaius.qi@gmail.com>

---------

Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-22 10:23:09 +00:00
Gaius 160f51396f
refactor: tcp storage server and client (#1361)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-22 17:44:20 +08:00
Fan Tianlan 9ec926f824
feat: Add TCP Client and Server Implementation for Piece Download in dragonfly-client-storage (#1359)
Signed-off-by: ftljk <2510317228@qq.com>
2025-09-18 15:18:03 +08:00
Gaius a2659dbc69
feat: remove loging to file in dfget dfcache and dfinit (#1355)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-16 18:26:17 +08:00
Gaius aaa1018aa5
feat(download): add concurrent piece count configuration (#1345)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-11 18:36:00 +08:00
Chlins Zhang 8ff694f431
refactor: move the shutdown crate to the util package (#1344)
Signed-off-by: chlins <chlins.zhang@gmail.com>
2025-09-11 14:15:42 +08:00
Gaius 33375f0f5a
refactor(dfget): simplify argument parsing logic (#1342)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-09 12:50:49 +00:00
Gaius 79fa36ca97
refactor(downloader): streamline download concurrency handling (#1341)
* style(error): update error message formatting

Signed-off-by: Gaius <gaius.qi@gmail.com>

* refactor(downloader): streamline download concurrency handling

Signed-off-by: Gaius <gaius.qi@gmail.com>

---------

Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-09 15:57:00 +08:00
Gaius c79cef20e8
feat: support include files for dfget (#1331)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-04 20:17:17 +08:00
Gaius 2738d590d5
chore(dependencies): update project dependencies and version (#1332)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-04 09:02:42 +00:00
Gaius 2070c8156e
chore(dependencies): update dependencies and remove unused metakeys (#1322)
* chore(dependencies): update dependencies and remove unused metakeys

Signed-off-by: Gaius <gaius.qi@gmail.com>

* build(deps): update dependencies and remove unused features

Signed-off-by: Gaius <gaius.qi@gmail.com>

---------

Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-09-02 10:27:20 +08:00
Gaius 31bb98fdef
refactor(downloader): rename client method and increase timeout (#1311)
* refactor(downloader): rename client method and increase timeout

Signed-off-by: Gaius <gaius.qi@gmail.com>

* chore(deps): update dependencies to version 1.0.14

Signed-off-by: Gaius <gaius.qi@gmail.com>

---------

Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-08-26 10:05:18 +00:00
Chlins Zhang 190dead698
feat: add the X-Dragonfly-Proxy-Status header to the response (#1299)
Signed-off-by: chlins <chlins.zhang@gmail.com>
2025-08-22 18:03:51 +08:00
Chlins Zhang a756f50daa
fix: replace inspect with inspect_err for error logging (#1298)
Signed-off-by: chlins <chlins.zhang@gmail.com>
2025-08-21 18:38:06 +08:00
Gaius 578fc8d147
feat: add conditional piece content reading based on need_piece_content flag (#1296)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-08-21 11:49:19 +08:00
Gaius bb94a4f346
feat: add X-Dragonfly-Server-IP for response proxy ip (#1295)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-08-20 04:20:16 +00:00
Gaius 90eeaebe7c
feat: replace glibc DNS resolver with hickory-dns in reqwest (#1293)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-08-19 23:18:00 +08:00
Chlins Zhang 6b5eab5739
feat: add proxy port to host when announce (#1292)
Signed-off-by: chlins <chlins.zhang@gmail.com>
2025-08-18 20:52:45 +08:00
Cyrus 205e0e9017
add --recursive argrument to download directory files (#1290)
* add --recursive args

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* add convert_args function

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* add convert_args test case

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* move convert_args test case to vec

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* fix var name

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* update version to 1.0.11

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* update api version to 2.1.57

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

---------

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>
2025-08-18 14:59:18 +08:00
dependabot[bot] 8116538556
chore(deps): Bump glob from 0.3.2 to 0.3.3 (#1285)
Bumps [glob](https://github.com/rust-lang/glob) from 0.3.2 to 0.3.3.
- [Release notes](https://github.com/rust-lang/glob/releases)
- [Changelog](https://github.com/rust-lang/glob/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/glob/compare/v0.3.2...v0.3.3)

---
updated-dependencies:
- dependency-name: glob
  dependency-version: 0.3.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-13 11:39:00 +08:00
Gaius e05270e598
feat: get network speed for scheduler (#1279)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-08-11 22:24:16 +08:00
Chlins Zhang 2cca5c7b9b
refactor: remove the seed peer announcement to manager (#1261)
Signed-off-by: chlins <chlins.zhang@gmail.com>
2025-08-08 12:25:08 +08:00
Gaius e1ae65a48d
chore(ci/Dockerfile): add grpcurl for dfdaemon container (#1276)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-08-06 08:26:15 +00:00
Gaius e415df936d
feat: enable console subscriber layer for tracing spawn tasks on `127.0.0.1:6669` when log level is TRACE (#1275)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-08-06 06:58:47 +00:00
this is my name 848737e327
feat:removes the load_to_cache field (#1264)
This pull request removes the load_to_cache field and adds trait method definitions to dfdaemon_download.rs and dfdaemon_upload.rs.

- Removed cache-related processing from Task handling.
- Added trait method definitions such as download_cache_task to dfdaemon_download.rs and dfdaemon_upload.rs to comply with the API format of version 2.1.55.

- Aim to allow Task to focus on disk interactions while delegating memory cache operations to CacheTask.

Signed-off-by: fu220 <2863318196@qq.com>
2025-08-06 14:40:39 +08:00
Gaius 7796ee7342
chore(deps): remove unused dependencies (#1274)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-08-06 11:11:15 +08:00
Gaius cd6ca368d5
feat: rename tracing field from `uri` to `url` in proxy handler functions (#1260)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-30 16:55:56 +08:00
Cyrus 1aefde8ed4
refactor: improve filter_entries test function (#1259)
* refactor filter_entries test

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* fix a variable name

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* merge all filter_entries test

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* add a assert

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

---------

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>
2025-07-29 11:18:49 +08:00
Gaius b30993eef0
refactor(dfget): Improve logic and error handling in `filter_entries` (#1258)
- Updated function signature to use references (`&Url`, `&[String]`) for efficiency.
- Improved error handling with detailed `ValidationError` messages instead of generic `UnexpectedResponse`.
- Renamed `rel_path_to_entry` to `entries_by_relative_path` for better clarity.
- Replaced `Vec` with `HashSet` for filtered entries to avoid duplicates.
- Simplified parent directory path construction using `join("")`.
- Enhanced doc comments to clearly describe functionality and behavior.
- Streamlined pattern compilation and iteration using `iter()`.

Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-25 14:09:34 +00:00
Cyrus cca88b3eea
feat: add include-files argrument in the downloaded directory (#1247)
* add include-files arg

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* fix regular expression matching

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* fix lint

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

---------

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>
2025-07-25 17:13:57 +08:00
Gaius bf6f49e0e9
feat: add task ID response header in Dragonfly client proxy (#1256)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-24 18:16:34 +08:00
Gaius 45f86226cf
feat: use piece_timeout for list task entries (#1254)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-24 07:47:25 +00:00
Gaius 5c87849f67
feat: update gRPC server to use non-cloned reflection service and fix task piece filtering logic (#1252)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-24 03:29:11 +00:00
Gaius 74ab386d87
feat: Enhance stat_task error handling in dfdaemon_download and dfdaemon_upload (#1251)
feat: Bump dragonfly-api to 2.1.49 and add local_only support for task stat

Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-23 10:06:11 +00:00
Gaius 10c73119cb
feat: Bump dragonfly-api to 2.1.49 and add local_only support for task stat (#1250)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-23 09:43:21 +00:00
Gaius 7190529693
feat(dragonfly-client): change permissions of download grpc uds (#1249)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-23 02:58:01 +00:00
Gaius e249089ec8
feat: support remote-ip for tracing (#1248)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-22 08:55:49 +00:00
Gaius a926e627d3
feat(dragonfly-client): change interface optional in DfdaemonUploadServerHandler (#1246)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-22 12:18:19 +08:00
Chlins Zhang e53ed3411c
feat: support specify the schedulerClusterID in host config and carry… (#1240)
feat: support specify the schedulerClusterID in host config and carry it when listing schedulers

Signed-off-by: chlins <chlins.zhang@gmail.com>
2025-07-21 13:31:49 +08:00
Gaius 0bf6f5d1a4
refactor: list_task_entries in DfdaemonDownloadServerHandler (#1235)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-17 12:32:00 +08:00
Cyrus 7c9d691a04
feat: modify the execution logic of dfget to list directories (#1225)
* add list_task_entries grpc function

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* change version

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* fix code format

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* fix clippy error

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* move list_task_entries to grpc server

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* fix code format

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

* merge list_task_entries function

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>

---------

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>
2025-07-17 11:31:55 +08:00
Gaius 18a15df503
feat: add panic log for tracing (#1233)
Signed-off-by: Gaius <gaius.qi@gmail.com>
2025-07-16 17:17:09 +08:00
Cyrus 9c3c0930af
feat: Create a blacklist of backends that do not support directory downloads (#1224)
Create a blacklist of backends that do not support path downloads

Signed-off-by: LunaWhispers <yangmuyucs@gmail.com>
2025-07-08 15:09:20 +08:00