From e6766e102ea6afcdfef3cb54ec81e8e28c15a2ab Mon Sep 17 00:00:00 2001 From: Marshall Bowers Date: Thu, 15 Feb 2024 17:43:47 -0500 Subject: [PATCH] Return descriptions for extensions (#7869) This PR updates the extensions API to return descriptions for extensions. Release Notes: - N/A --- crates/collab/src/db.rs | 1 + crates/collab/src/db/queries/extensions.rs | 1 + crates/collab/src/db/tests/extension_tests.rs | 8 +++++++- 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/crates/collab/src/db.rs b/crates/collab/src/db.rs index 08e502a42f..7db1faea9f 100644 --- a/crates/collab/src/db.rs +++ b/crates/collab/src/db.rs @@ -733,6 +733,7 @@ pub struct ExtensionMetadata { pub name: String, pub version: String, pub authors: Vec, + pub description: String, pub repository: String, #[serde(serialize_with = "serialize_iso8601")] pub published_at: PrimitiveDateTime, diff --git a/crates/collab/src/db/queries/extensions.rs b/crates/collab/src/db/queries/extensions.rs index ba135a0bd5..6d2ea7fd01 100644 --- a/crates/collab/src/db/queries/extensions.rs +++ b/crates/collab/src/db/queries/extensions.rs @@ -41,6 +41,7 @@ impl Database { .split(',') .map(|author| author.trim().to_string()) .collect::>(), + description: version.description, repository: version.repository, published_at: version.published_at, download_count: extension.total_download_count as u64, diff --git a/crates/collab/src/db/tests/extension_tests.rs b/crates/collab/src/db/tests/extension_tests.rs index 8963ffcbe9..8844a68480 100644 --- a/crates/collab/src/db/tests/extension_tests.rs +++ b/crates/collab/src/db/tests/extension_tests.rs @@ -84,6 +84,7 @@ async fn test_extensions(db: &Arc) { name: "Extension One".into(), version: "0.0.2".into(), authors: vec!["max".into(), "marshall".into()], + description: "a good extension".into(), repository: "ext1/repo".into(), published_at: t0, download_count: 0, @@ -93,6 +94,7 @@ async fn test_extensions(db: &Arc) { name: "Extension Two".into(), version: "0.2.0".into(), authors: vec!["marshall".into()], + description: "a great extension".into(), repository: "ext2/repo".into(), published_at: t0, download_count: 0 @@ -129,6 +131,7 @@ async fn test_extensions(db: &Arc) { name: "Extension Two".into(), version: "0.2.0".into(), authors: vec!["marshall".into()], + description: "a great extension".into(), repository: "ext2/repo".into(), published_at: t0, download_count: 7 @@ -138,6 +141,7 @@ async fn test_extensions(db: &Arc) { name: "Extension One".into(), version: "0.0.2".into(), authors: vec!["max".into(), "marshall".into()], + description: "a good extension".into(), repository: "ext1/repo".into(), published_at: t0, download_count: 5, @@ -165,7 +169,7 @@ async fn test_extensions(db: &Arc) { vec![NewExtensionVersion { name: "Extension Two".into(), version: semver::Version::parse("0.1.0").unwrap(), - description: "an old extension".into(), + description: "an old extension".into(), authors: vec!["marshall".into()], repository: "ext2/repo".into(), published_at: t0, @@ -201,6 +205,7 @@ async fn test_extensions(db: &Arc) { name: "Extension Two".into(), version: "0.2.0".into(), authors: vec!["marshall".into()], + description: "a great extension".into(), repository: "ext2/repo".into(), published_at: t0, download_count: 7 @@ -210,6 +215,7 @@ async fn test_extensions(db: &Arc) { name: "Extension One".into(), version: "0.0.3".into(), authors: vec!["max".into(), "marshall".into()], + description: "a real good extension".into(), repository: "ext1/repo".into(), published_at: t0, download_count: 5,