From c618b4efaa75ab2989da48317b32fc6725cb0e81 Mon Sep 17 00:00:00 2001
From: Felix Ableitner <me@nutomic.com>
Date: Fri, 5 Feb 2021 14:43:18 +0100
Subject: [PATCH] Remove federation backward compatibility code (ref #1220)

---
 crates/apub/src/objects/mod.rs  | 48 ++++++++++++++++-----------------
 crates/apub/src/objects/user.rs |  3 ---
 2 files changed, 23 insertions(+), 28 deletions(-)

diff --git a/crates/apub/src/objects/mod.rs b/crates/apub/src/objects/mod.rs
index 79b9ad40..a35ad7d1 100644
--- a/crates/apub/src/objects/mod.rs
+++ b/crates/apub/src/objects/mod.rs
@@ -15,7 +15,12 @@ use diesel::result::Error::NotFound;
 use lemmy_db_queries::{ApubObject, Crud, DbPool};
 use lemmy_db_schema::source::community::Community;
 use lemmy_structs::blocking;
-use lemmy_utils::{location_info, settings::Settings, utils::convert_datetime, LemmyError};
+use lemmy_utils::{
+  location_info,
+  settings::Settings,
+  utils::{convert_datetime, markdown_to_html},
+  LemmyError,
+};
 use lemmy_websocket::LemmyContext;
 use url::Url;
 
@@ -114,11 +119,8 @@ where
     .set_media_type(mime_markdown()?);
   object.set_source(source.into_any_base()?);
 
-  // set `content` to markdown for compatibility with older Lemmy versions
-  // TODO: change this to HTML in a while
-  object.set_content(markdown_text);
-  object.set_media_type(mime_markdown()?);
-  //object.set_content(markdown_to_html(markdown_text));
+  object.set_content(markdown_to_html(markdown_text));
+  object.set_media_type(mime_html()?);
   Ok(())
 }
 
@@ -134,32 +136,28 @@ where
     .flatten()
     .map(|s| s.to_string());
   if content.is_some() {
-    let source = object.source();
-    // updated lemmy version, read markdown from `source.content`
-    if let Some(source) = source {
-      let source = Object::<()>::from_any_base(source.to_owned())?.context(location_info!())?;
-      check_is_markdown(source.media_type())?;
-      let source_content = source
-        .content()
-        .map(|s| s.as_single_xsd_string())
-        .flatten()
-        .context(location_info!())?
-        .to_string();
-      return Ok(Some(source_content));
-    }
-    // older lemmy version, read markdown from `content`
-    // TODO: remove this after a while
-    else {
-      return Ok(content);
-    }
+    let source = object.source().context(location_info!())?;
+    let source = Object::<()>::from_any_base(source.to_owned())?.context(location_info!())?;
+    check_is_markdown(source.media_type())?;
+    let source_content = source
+      .content()
+      .map(|s| s.as_single_xsd_string())
+      .flatten()
+      .context(location_info!())?
+      .to_string();
+    return Ok(Some(source_content));
   }
   Ok(None)
 }
 
-pub(in crate::objects) fn mime_markdown() -> Result<Mime, FromStrError> {
+fn mime_markdown() -> Result<Mime, FromStrError> {
   "text/markdown".parse()
 }
 
+fn mime_html() -> Result<Mime, FromStrError> {
+  "text/html".parse()
+}
+
 pub(in crate::objects) fn check_is_markdown(mime: Option<&Mime>) -> Result<(), LemmyError> {
   let mime = mime.context(location_info!())?;
   if !mime.eq(&mime_markdown()?) {
diff --git a/crates/apub/src/objects/user.rs b/crates/apub/src/objects/user.rs
index 8a911de2..7a85b20a 100644
--- a/crates/apub/src/objects/user.rs
+++ b/crates/apub/src/objects/user.rs
@@ -62,9 +62,6 @@ impl ToApub for User_ {
 
     if let Some(bio) = &self.bio {
       set_content_and_source(&mut person, bio)?;
-      // Also set summary for compatibility with older Lemmy versions.
-      // TODO: remove this after a while.
-      person.set_summary(bio.to_owned());
     }
 
     if let Some(i) = self.preferred_username.to_owned() {
-- 
2.44.1