Skip to content

Commit 0c9eb13

Browse files
committed
fix: get_package_version waterfall
1 parent 1e8a1b0 commit 0c9eb13

File tree

1 file changed

+11
-7
lines changed

1 file changed

+11
-7
lines changed

api/src/api/package.rs

+11-7
Original file line numberDiff line numberDiff line change
@@ -1655,17 +1655,21 @@ pub async fn get_downloads_handler(
16551655
.list_latest_unyanked_versions_for_package(&scope, &package, 5)
16561656
.await?;
16571657

1658-
let versions = futures::stream::iter(recent_versions.into_iter())
1659-
.then(|version| async {
1658+
let mut futures = futures::stream::FuturesUnordered::new();
1659+
for version in recent_versions {
1660+
let scope_clone = scope.clone();
1661+
let package_clone = package.clone();
1662+
let version_clone = version.clone();
1663+
futures.push(async move {
16601664
let res = db
16611665
.get_package_version_downloads_24h(
1662-
&scope, &package, &version, start, current,
1666+
&scope_clone, &package_clone, &version_clone, start, current,
16631667
)
16641668
.await;
1665-
(version, res)
1666-
})
1667-
.collect::<Vec<_>>()
1668-
.await;
1669+
(version_clone, res)
1670+
});
1671+
}
1672+
let versions = futures.collect::<Vec<_>>().await;
16691673

16701674
let mut recent_versions = Vec::with_capacity(versions.len());
16711675
for (version, downloads) in versions {

0 commit comments

Comments
 (0)