diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-07-17 18:07:43 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-07-17 18:07:43 +0900 |
| commit | e44085eb742cb14dff22de054ef19fe725a4e2c2 (patch) | |
| tree | 219dbdee6cbfb70dd4015add8558a02026b86183 /crates/shirabe/src/package/link.rs | |
| parent | c6b10bd024894f857bf35a8f84c5e273be6f860d (diff) | |
| download | php-shirabe-e44085eb742cb14dff22de054ef19fe725a4e2c2.tar.gz php-shirabe-e44085eb742cb14dff22de054ef19fe725a4e2c2.tar.zst php-shirabe-e44085eb742cb14dff22de054ef19fe725a4e2c2.zip | |
refactor(loop): drive wait() promises concurrently via FuturesUnordered
Loop::wait already had the target signature and a TODO(phase-c-promise)
marker noting it drove promises serially; swap the for-loop for
FuturesUnordered so all promises are polled together instead of one at
a time, keeping the "remember only the first error" semantics.
This adds the first real use of the futures dependency (already present
in Cargo.toml/Cargo.lock from earlier prep work, now finally consumed),
so those lockfile/manifest changes land in this commit.
Real overlap still doesn't happen yet: each promise (HttpDownloader::add/
add_copy etc.) resolves through a blocking bridge (curl_runtime()/
sync_executor::block_on) that fully occupies the thread until it
settles, so this is groundwork for once a single top-level Runtime
replaces those bridges. Updated the TODO(phase-c-promise) comment to
reflect that.
Diffstat (limited to 'crates/shirabe/src/package/link.rs')
0 files changed, 0 insertions, 0 deletions
