Optimize GhCrateMeta::find: use FuturesUnordered (#321)

* Optimize `GhCrateMeta::find` using `FuturesUnordered`
* Optimize `MultiFetcher`: Impl `with_capacity` use it in `resolve_inner` to avoid over-reservation
* Enable feature "std" of dep futures-util

Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
This commit is contained in:
Jiahao XU 2022-08-27 19:56:43 +10:00 committed by GitHub
parent 4def4d08fd
commit 16b16c482c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 11 additions and 7 deletions

View file

@ -169,10 +169,10 @@ async fn resolve_inner(
manifest.bin,
);
let mut fetchers = MultiFetcher::default();
let desired_targets = opts.desired_targets.get().await;
let mut fetchers = MultiFetcher::with_capacity(desired_targets.len() * 2);
for target in desired_targets {
debug!("Building metadata for target: {target}");
let mut target_meta = meta.clone_without_overrides();