From 67e4e83d1cbf984f4a801e7245a2aeec66efe522 Mon Sep 17 00:00:00 2001 From: Vika Date: Wed, 28 Aug 2024 14:17:24 +0300 Subject: Make Micropub update logic self-contained This allows for a separation of concerns between database backends and Micropub, unless such backend have special requirements, like the file backend storing children of a feed in an array. --- src/database/file/mod.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/database/file/mod.rs') diff --git a/src/database/file/mod.rs b/src/database/file/mod.rs index 10d6079..cf7380f 100644 --- a/src/database/file/mod.rs +++ b/src/database/file/mod.rs @@ -466,7 +466,9 @@ impl Storage for FileStorage { file.read_to_string(&mut content).await?; let json: serde_json::Value = serde_json::from_str(&content)?; drop(file); - // Apply the editing algorithms + // Apply the editing algorithms. We can't use the stock + // `update.apply` function due to special requirements of + // the file backend, so we're implementing our own. let new_json = modify_post(&json, update)?; temp.write_all(new_json.to_string().as_bytes()).await?; -- cgit 1.4.1