From 1745b64cebf3599a41599f67d19cea5d53fa3573 Mon Sep 17 00:00:00 2001
From: Dessalines <tyhou13@gmx.com>
Date: Sat, 20 Mar 2021 15:21:51 -0400
Subject: [PATCH] Moving matrix_user_id to person table. #1438

---
 crates/api/src/lib.rs                              |  2 +-
 crates/api/src/local_user.rs                       |  4 ++--
 crates/apub/src/objects/person.rs                  |  1 +
 .../src/aggregates/comment_aggregates.rs           |  2 ++
 .../src/aggregates/community_aggregates.rs         |  2 ++
 .../db_queries/src/aggregates/person_aggregates.rs |  2 ++
 .../db_queries/src/aggregates/post_aggregates.rs   |  2 ++
 .../db_queries/src/aggregates/site_aggregates.rs   |  1 +
 crates/db_queries/src/source/activity.rs           |  1 +
 crates/db_queries/src/source/comment.rs            |  1 +
 crates/db_queries/src/source/community.rs          |  1 +
 crates/db_queries/src/source/local_user.rs         |  2 --
 crates/db_queries/src/source/moderator.rs          |  2 ++
 .../src/source/password_reset_request.rs           |  2 +-
 crates/db_queries/src/source/person.rs             | 14 ++++++++++----
 crates/db_queries/src/source/person_mention.rs     |  2 ++
 crates/db_queries/src/source/post.rs               |  1 +
 crates/db_queries/src/source/private_message.rs    |  2 ++
 crates/db_schema/src/schema.rs                     |  4 +++-
 crates/db_schema/src/source/local_user.rs          |  3 ---
 crates/db_schema/src/source/person.rs              |  7 +++++++
 crates/db_views/src/comment_view.rs                |  2 ++
 crates/db_views/src/post_view.rs                   |  2 ++
 .../down.sql                                       |  8 ++++++++
 .../up.sql                                         |  8 ++++++++
 src/code_migrations.rs                             |  1 +
 26 files changed, 65 insertions(+), 14 deletions(-)
 create mode 100644 migrations/2021-03-20-185321_move_matrix_id_to_person/down.sql
 create mode 100644 migrations/2021-03-20-185321_move_matrix_id_to_person/up.sql

diff --git a/crates/api/src/lib.rs b/crates/api/src/lib.rs
index 529a13cf..8c6fe8a5 100644
--- a/crates/api/src/lib.rs
+++ b/crates/api/src/lib.rs
@@ -543,6 +543,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
@@ -550,7 +551,6 @@ mod tests {
     let local_user_form = LocalUserForm {
       person_id: inserted_person.id,
       email: None,
-      matrix_user_id: None,
       password_encrypted: "123456".to_string(),
       admin: None,
       show_nsfw: None,
diff --git a/crates/api/src/local_user.rs b/crates/api/src/local_user.rs
index 266d28ee..c43db39c 100644
--- a/crates/api/src/local_user.rs
+++ b/crates/api/src/local_user.rs
@@ -214,6 +214,7 @@ impl Perform for Register {
       last_refreshed_at: None,
       inbox_url: Some(generate_inbox_url(&actor_id)?),
       shared_inbox_url: Some(Some(generate_shared_inbox_url(&actor_id)?)),
+      matrix_user_id: None,
     };
 
     // insert the person
@@ -232,7 +233,6 @@ impl Perform for Register {
     let local_user_form = LocalUserForm {
       person_id: inserted_person.id,
       email: Some(data.email.to_owned()),
-      matrix_user_id: None,
       password_encrypted: data.password.to_owned(),
       admin: Some(no_admins),
       show_nsfw: Some(data.show_nsfw),
@@ -477,6 +477,7 @@ impl Perform for SaveUserSettings {
       public_key: None,
       last_refreshed_at: None,
       shared_inbox_url: None,
+      matrix_user_id,
     };
 
     let person_res = blocking(context.pool(), move |conn| {
@@ -493,7 +494,6 @@ impl Perform for SaveUserSettings {
     let local_user_form = LocalUserForm {
       person_id,
       email,
-      matrix_user_id,
       password_encrypted,
       admin: None,
       show_nsfw: data.show_nsfw,
diff --git a/crates/apub/src/objects/person.rs b/crates/apub/src/objects/person.rs
index de45aedd..d1eb6707 100644
--- a/crates/apub/src/objects/person.rs
+++ b/crates/apub/src/objects/person.rs
@@ -187,6 +187,7 @@ impl FromApubToForm<PersonExt> for PersonForm {
       last_refreshed_at: Some(naive_now()),
       inbox_url: Some(person.inner.inbox()?.to_owned().into()),
       shared_inbox_url: Some(shared_inbox),
+      matrix_user_id: None, // TODO
     })
   }
 }
diff --git a/crates/db_queries/src/aggregates/comment_aggregates.rs b/crates/db_queries/src/aggregates/comment_aggregates.rs
index c55fef0c..d3e92524 100644
--- a/crates/db_queries/src/aggregates/comment_aggregates.rs
+++ b/crates/db_queries/src/aggregates/comment_aggregates.rs
@@ -59,6 +59,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
@@ -80,6 +81,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let another_inserted_person = Person::create(&conn, &another_person).unwrap();
diff --git a/crates/db_queries/src/aggregates/community_aggregates.rs b/crates/db_queries/src/aggregates/community_aggregates.rs
index bbe751ae..ad90f20f 100644
--- a/crates/db_queries/src/aggregates/community_aggregates.rs
+++ b/crates/db_queries/src/aggregates/community_aggregates.rs
@@ -63,6 +63,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
@@ -84,6 +85,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let another_inserted_person = Person::create(&conn, &another_person).unwrap();
diff --git a/crates/db_queries/src/aggregates/person_aggregates.rs b/crates/db_queries/src/aggregates/person_aggregates.rs
index c1082c4b..f6a6cd1b 100644
--- a/crates/db_queries/src/aggregates/person_aggregates.rs
+++ b/crates/db_queries/src/aggregates/person_aggregates.rs
@@ -59,6 +59,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
@@ -80,6 +81,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let another_inserted_person = Person::create(&conn, &another_person).unwrap();
diff --git a/crates/db_queries/src/aggregates/post_aggregates.rs b/crates/db_queries/src/aggregates/post_aggregates.rs
index aa5e774e..a32b9da6 100644
--- a/crates/db_queries/src/aggregates/post_aggregates.rs
+++ b/crates/db_queries/src/aggregates/post_aggregates.rs
@@ -63,6 +63,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
@@ -84,6 +85,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let another_inserted_person = Person::create(&conn, &another_person).unwrap();
diff --git a/crates/db_queries/src/aggregates/site_aggregates.rs b/crates/db_queries/src/aggregates/site_aggregates.rs
index a685ad0d..67cb04a7 100644
--- a/crates/db_queries/src/aggregates/site_aggregates.rs
+++ b/crates/db_queries/src/aggregates/site_aggregates.rs
@@ -57,6 +57,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
diff --git a/crates/db_queries/src/source/activity.rs b/crates/db_queries/src/source/activity.rs
index 1ec9b8d1..5d345db6 100644
--- a/crates/db_queries/src/source/activity.rs
+++ b/crates/db_queries/src/source/activity.rs
@@ -153,6 +153,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_creator = Person::create(&conn, &creator_form).unwrap();
diff --git a/crates/db_queries/src/source/comment.rs b/crates/db_queries/src/source/comment.rs
index 69ac4c08..47965d3b 100644
--- a/crates/db_queries/src/source/comment.rs
+++ b/crates/db_queries/src/source/comment.rs
@@ -261,6 +261,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
diff --git a/crates/db_queries/src/source/community.rs b/crates/db_queries/src/source/community.rs
index 5b7fc92c..a0038c9d 100644
--- a/crates/db_queries/src/source/community.rs
+++ b/crates/db_queries/src/source/community.rs
@@ -371,6 +371,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
diff --git a/crates/db_queries/src/source/local_user.rs b/crates/db_queries/src/source/local_user.rs
index eabd067d..7e84011b 100644
--- a/crates/db_queries/src/source/local_user.rs
+++ b/crates/db_queries/src/source/local_user.rs
@@ -25,7 +25,6 @@ mod safe_settings_type {
     lang,
     show_avatars,
     send_notifications_to_email,
-    matrix_user_id,
     validator_time,
   );
 
@@ -46,7 +45,6 @@ mod safe_settings_type {
         lang,
         show_avatars,
         send_notifications_to_email,
-        matrix_user_id,
         validator_time,
       )
     }
diff --git a/crates/db_queries/src/source/moderator.rs b/crates/db_queries/src/source/moderator.rs
index 526fc2bd..3b6d2544 100644
--- a/crates/db_queries/src/source/moderator.rs
+++ b/crates/db_queries/src/source/moderator.rs
@@ -224,6 +224,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_mod = Person::create(&conn, &new_mod).unwrap();
@@ -245,6 +246,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
diff --git a/crates/db_queries/src/source/password_reset_request.rs b/crates/db_queries/src/source/password_reset_request.rs
index 89c37505..654dabf6 100644
--- a/crates/db_queries/src/source/password_reset_request.rs
+++ b/crates/db_queries/src/source/password_reset_request.rs
@@ -110,6 +110,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
@@ -118,7 +119,6 @@ mod tests {
       person_id: inserted_person.id,
       password_encrypted: "pass".to_string(),
       email: None,
-      matrix_user_id: None,
       admin: None,
       show_nsfw: None,
       theme: None,
diff --git a/crates/db_queries/src/source/person.rs b/crates/db_queries/src/source/person.rs
index f9979c97..40adab3d 100644
--- a/crates/db_queries/src/source/person.rs
+++ b/crates/db_queries/src/source/person.rs
@@ -27,6 +27,7 @@ mod safe_type {
     deleted,
     inbox_url,
     shared_inbox_url,
+    matrix_user_id,
   );
 
   impl ToSafe for Person {
@@ -47,6 +48,7 @@ mod safe_type {
         deleted,
         inbox_url,
         shared_inbox_url,
+        matrix_user_id,
       )
     }
   }
@@ -71,6 +73,7 @@ mod safe_type_alias_1 {
     deleted,
     inbox_url,
     shared_inbox_url,
+    matrix_user_id,
   );
 
   impl ToSafe for PersonAlias1 {
@@ -91,6 +94,7 @@ mod safe_type_alias_1 {
         deleted,
         inbox_url,
         shared_inbox_url,
+        matrix_user_id,
       )
     }
   }
@@ -115,6 +119,7 @@ mod safe_type_alias_2 {
     deleted,
     inbox_url,
     shared_inbox_url,
+    matrix_user_id,
   );
 
   impl ToSafe for PersonAlias2 {
@@ -135,6 +140,7 @@ mod safe_type_alias_2 {
         deleted,
         inbox_url,
         shared_inbox_url,
+        matrix_user_id,
       )
     }
   }
@@ -212,16 +218,14 @@ impl Person_ for Person {
 
     // Set the local user info to none
     diesel::update(local_user::table.filter(local_user::person_id.eq(person_id)))
-      .set((
-        local_user::email.eq::<Option<String>>(None),
-        local_user::matrix_user_id.eq::<Option<String>>(None),
-      ))
+      .set((local_user::email.eq::<Option<String>>(None),))
       .execute(conn)?;
 
     diesel::update(person.find(person_id))
       .set((
         preferred_username.eq::<Option<String>>(None),
         bio.eq::<Option<String>>(None),
+        matrix_user_id.eq::<Option<String>>(None),
         deleted.eq(true),
         updated.eq(naive_now()),
       ))
@@ -254,6 +258,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
@@ -276,6 +281,7 @@ mod tests {
       last_refreshed_at: inserted_person.published,
       inbox_url: inserted_person.inbox_url.to_owned(),
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let read_person = Person::read(&conn, inserted_person.id).unwrap();
diff --git a/crates/db_queries/src/source/person_mention.rs b/crates/db_queries/src/source/person_mention.rs
index dfd626cb..a6a86e78 100644
--- a/crates/db_queries/src/source/person_mention.rs
+++ b/crates/db_queries/src/source/person_mention.rs
@@ -105,6 +105,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
@@ -126,6 +127,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_recipient = Person::create(&conn, &recipient_form).unwrap();
diff --git a/crates/db_queries/src/source/post.rs b/crates/db_queries/src/source/post.rs
index d6492e13..b1f6b7c2 100644
--- a/crates/db_queries/src/source/post.rs
+++ b/crates/db_queries/src/source/post.rs
@@ -288,6 +288,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
diff --git a/crates/db_queries/src/source/private_message.rs b/crates/db_queries/src/source/private_message.rs
index fe245689..cd663093 100644
--- a/crates/db_queries/src/source/private_message.rs
+++ b/crates/db_queries/src/source/private_message.rs
@@ -165,6 +165,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_creator = Person::create(&conn, &creator_form).unwrap();
@@ -186,6 +187,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_recipient = Person::create(&conn, &recipient_form).unwrap();
diff --git a/crates/db_schema/src/schema.rs b/crates/db_schema/src/schema.rs
index 9bb3fe2d..4c990ec0 100644
--- a/crates/db_schema/src/schema.rs
+++ b/crates/db_schema/src/schema.rs
@@ -154,7 +154,6 @@ table! {
         lang -> Varchar,
         show_avatars -> Bool,
         send_notifications_to_email -> Bool,
-        matrix_user_id -> Nullable<Text>,
         validator_time -> Timestamp,
     }
 }
@@ -287,6 +286,7 @@ table! {
         deleted -> Bool,
         inbox_url -> Varchar,
         shared_inbox_url -> Nullable<Varchar>,
+        matrix_user_id -> Nullable<Text>,
     }
 }
 
@@ -485,6 +485,7 @@ table! {
         deleted -> Bool,
         inbox_url -> Varchar,
         shared_inbox_url -> Nullable<Varchar>,
+        matrix_user_id -> Nullable<Text>,
     }
 }
 
@@ -507,6 +508,7 @@ table! {
         deleted -> Bool,
         inbox_url -> Varchar,
         shared_inbox_url -> Nullable<Varchar>,
+        matrix_user_id -> Nullable<Text>,
     }
 }
 
diff --git a/crates/db_schema/src/source/local_user.rs b/crates/db_schema/src/source/local_user.rs
index 11dac6c9..d902e6b4 100644
--- a/crates/db_schema/src/source/local_user.rs
+++ b/crates/db_schema/src/source/local_user.rs
@@ -16,7 +16,6 @@ pub struct LocalUser {
   pub lang: String,
   pub show_avatars: bool,
   pub send_notifications_to_email: bool,
-  pub matrix_user_id: Option<String>,
   pub validator_time: chrono::NaiveDateTime,
 }
 
@@ -35,7 +34,6 @@ pub struct LocalUserForm {
   pub lang: Option<String>,
   pub show_avatars: Option<bool>,
   pub send_notifications_to_email: Option<bool>,
-  pub matrix_user_id: Option<Option<String>>,
 }
 
 /// A local user view that removes password encrypted
@@ -53,6 +51,5 @@ pub struct LocalUserSettings {
   pub lang: String,
   pub show_avatars: bool,
   pub send_notifications_to_email: bool,
-  pub matrix_user_id: Option<String>,
   pub validator_time: chrono::NaiveDateTime,
 }
diff --git a/crates/db_schema/src/source/person.rs b/crates/db_schema/src/source/person.rs
index f669f0c5..8c66b1a8 100644
--- a/crates/db_schema/src/source/person.rs
+++ b/crates/db_schema/src/source/person.rs
@@ -25,6 +25,7 @@ pub struct Person {
   pub deleted: bool,
   pub inbox_url: DbUrl,
   pub shared_inbox_url: Option<DbUrl>,
+  pub matrix_user_id: Option<String>,
 }
 
 /// A safe representation of person, without the sensitive info
@@ -45,6 +46,7 @@ pub struct PersonSafe {
   pub deleted: bool,
   pub inbox_url: DbUrl,
   pub shared_inbox_url: Option<DbUrl>,
+  pub matrix_user_id: Option<String>,
 }
 
 #[derive(Clone, Queryable, Identifiable, PartialEq, Debug, Serialize)]
@@ -67,6 +69,7 @@ pub struct PersonAlias1 {
   pub deleted: bool,
   pub inbox_url: DbUrl,
   pub shared_inbox_url: Option<DbUrl>,
+  pub matrix_user_id: Option<String>,
 }
 
 #[derive(Clone, Queryable, Identifiable, PartialEq, Debug, Serialize)]
@@ -86,6 +89,7 @@ pub struct PersonSafeAlias1 {
   pub deleted: bool,
   pub inbox_url: DbUrl,
   pub shared_inbox_url: Option<DbUrl>,
+  pub matrix_user_id: Option<String>,
 }
 
 #[derive(Clone, Queryable, Identifiable, PartialEq, Debug, Serialize)]
@@ -108,6 +112,7 @@ pub struct PersonAlias2 {
   pub deleted: bool,
   pub inbox_url: DbUrl,
   pub shared_inbox_url: Option<DbUrl>,
+  pub matrix_user_id: Option<String>,
 }
 
 #[derive(Clone, Queryable, Identifiable, PartialEq, Debug, Serialize)]
@@ -127,6 +132,7 @@ pub struct PersonSafeAlias2 {
   pub deleted: bool,
   pub inbox_url: DbUrl,
   pub shared_inbox_url: Option<DbUrl>,
+  pub matrix_user_id: Option<String>,
 }
 
 #[derive(Insertable, AsChangeset, Clone)]
@@ -148,4 +154,5 @@ pub struct PersonForm {
   pub deleted: Option<bool>,
   pub inbox_url: Option<DbUrl>,
   pub shared_inbox_url: Option<Option<DbUrl>>,
+  pub matrix_user_id: Option<Option<String>>,
 }
diff --git a/crates/db_views/src/comment_view.rs b/crates/db_views/src/comment_view.rs
index 6c5850ad..478a906f 100644
--- a/crates/db_views/src/comment_view.rs
+++ b/crates/db_views/src/comment_view.rs
@@ -469,6 +469,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
@@ -581,6 +582,7 @@ mod tests {
         updated: None,
         inbox_url: inserted_person.inbox_url.to_owned(),
         shared_inbox_url: None,
+        matrix_user_id: None,
       },
       recipient: None,
       post: Post {
diff --git a/crates/db_views/src/post_view.rs b/crates/db_views/src/post_view.rs
index fe852e37..08d889d1 100644
--- a/crates/db_views/src/post_view.rs
+++ b/crates/db_views/src/post_view.rs
@@ -469,6 +469,7 @@ mod tests {
       last_refreshed_at: None,
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     let inserted_person = Person::create(&conn, &new_person).unwrap();
@@ -596,6 +597,7 @@ mod tests {
         updated: None,
         inbox_url: inserted_person.inbox_url.to_owned(),
         shared_inbox_url: None,
+        matrix_user_id: None,
       },
       creator_banned_from_community: false,
       community: CommunitySafe {
diff --git a/migrations/2021-03-20-185321_move_matrix_id_to_person/down.sql b/migrations/2021-03-20-185321_move_matrix_id_to_person/down.sql
new file mode 100644
index 00000000..ce4eb4ad
--- /dev/null
+++ b/migrations/2021-03-20-185321_move_matrix_id_to_person/down.sql
@@ -0,0 +1,8 @@
+alter table local_user add column matrix_user_id text;
+
+update local_user lu
+set matrix_user_id = p.matrix_user_id 
+from person p
+where p.id = lu.person_id;
+
+alter table person drop column matrix_user_id;
diff --git a/migrations/2021-03-20-185321_move_matrix_id_to_person/up.sql b/migrations/2021-03-20-185321_move_matrix_id_to_person/up.sql
new file mode 100644
index 00000000..f8c577c9
--- /dev/null
+++ b/migrations/2021-03-20-185321_move_matrix_id_to_person/up.sql
@@ -0,0 +1,8 @@
+alter table person add column matrix_user_id text;
+
+update person p
+set matrix_user_id = lu.matrix_user_id 
+from local_user lu
+where p.id = lu.person_id;
+
+alter table local_user drop column matrix_user_id;
diff --git a/src/code_migrations.rs b/src/code_migrations.rs
index bd67fe69..e9b43356 100644
--- a/src/code_migrations.rs
+++ b/src/code_migrations.rs
@@ -70,6 +70,7 @@ fn user_updates_2020_04_02(conn: &PgConnection) -> Result<(), LemmyError> {
       last_refreshed_at: Some(naive_now()),
       inbox_url: None,
       shared_inbox_url: None,
+      matrix_user_id: None,
     };
 
     Person::update(&conn, cperson.id, &form)?;
-- 
2.44.1