From 00e55b1874df6bd409497f943780604cf34b1c22 Mon Sep 17 00:00:00 2001 From: Wyatt Verchere Date: Tue, 12 Dec 2023 18:57:51 -0800 Subject: [PATCH] get dependencies fix (#794) --- src/routes/v2/projects.rs | 3 --- src/routes/v3/projects.rs | 4 +++- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/routes/v2/projects.rs b/src/routes/v2/projects.rs index b107bdb26..c6237cb49 100644 --- a/src/routes/v2/projects.rs +++ b/src/routes/v2/projects.rs @@ -200,7 +200,6 @@ pub async fn project_get( // Call V3 project creation let response = v3::projects::project_get(req, info, pool.clone(), redis.clone(), session_queue) .await - .or_else(v2_reroute::flatten_404_error) .or_else(v2_reroute::flatten_404_error)?; // Convert response to V2 format @@ -227,7 +226,6 @@ pub async fn project_get_check( v3::projects::project_get_check(info, pool, redis) .await .or_else(v2_reroute::flatten_404_error) - .or_else(v2_reroute::flatten_404_error) } #[derive(Serialize)] @@ -248,7 +246,6 @@ pub async fn dependency_list( v3::projects::dependency_list(req, info, pool, redis, session_queue) .await .or_else(v2_reroute::flatten_404_error) - .or_else(v2_reroute::flatten_404_error) } #[derive(Serialize, Deserialize, Validate)] diff --git a/src/routes/v3/projects.rs b/src/routes/v3/projects.rs index 6cc8b3192..c647429b0 100644 --- a/src/routes/v3/projects.rs +++ b/src/routes/v3/projects.rs @@ -29,6 +29,7 @@ use crate::util::validate::validation_errors_to_string; use actix_web::{web, HttpRequest, HttpResponse}; use chrono::{DateTime, Utc}; use futures::TryStreamExt; +use itertools::Itertools; use serde::{Deserialize, Serialize}; use serde_json::json; use sqlx::PgPool; @@ -972,7 +973,6 @@ pub async fn dependency_list( let dependencies = database::Project::get_dependencies(project.inner.id, &**pool, &redis).await?; - let project_ids = dependencies .iter() .filter_map(|x| { @@ -986,11 +986,13 @@ pub async fn dependency_list( x.1 } }) + .unique() .collect::>(); let dep_version_ids = dependencies .iter() .filter_map(|x| x.0) + .unique() .collect::>(); let (projects_result, versions_result) = futures::future::try_join( database::Project::get_many_ids(&project_ids, &**pool, &redis),