Fixes game versions v2 display (#827)

* fixes game versions display

* reverses from version route
This commit is contained in:
Wyatt Verchere
2024-01-06 22:04:13 -08:00
committed by GitHub
parent 541022cdc3
commit 59c269c8d0
3 changed files with 10 additions and 11 deletions

View File

@@ -765,9 +765,6 @@ impl Project {
}
).try_collect().await?;
// TODO: Possible improvements to look into:
// - use multiple queries instead of CTES (for cleanliness?)
// - repeated joins to mods in separate CTEs- perhaps 1 CTE for mods and use later (in mods_gallery_json, mods_donations_json, etc.)
let db_projects: Vec<QueryProject> = sqlx::query!(
"
SELECT m.id id, m.name name, m.summary summary, m.downloads downloads, m.follows follows,

View File

@@ -104,15 +104,16 @@ impl LegacyProject {
let mut loaders = data.loaders;
if let Some(versions_item) = versions_item {
game_versions = versions_item
.version_fields
.iter()
.find(|f| f.field_name == "game_versions")
.and_then(|f| MinecraftGameVersion::try_from_version_field(f).ok())
.map(|v| v.into_iter().map(|v| v.version).collect())
.unwrap_or(Vec::new());
game_versions = data
.fields
.get("game_versions")
.unwrap_or(&Vec::new())
.iter()
.filter_map(|v| v.as_str())
.map(|v| v.to_string())
.collect();
if let Some(versions_item) = versions_item {
// Extract side types from remaining fields (singleplayer, client_only, etc)
let fields = versions_item
.version_fields

View File

@@ -824,6 +824,7 @@ pub async fn version_list(
}
response.sort();
response.reverse();
response.dedup_by(|a, b| a.inner.id == b.inner.id);
let response = filter_visible_versions(response, &user_option, &pool, &redis).await?;