From 5e75de3594de0b81eedd7cab8041db5a7b0686ed Mon Sep 17 00:00:00 2001 From: Ginger Date: Mon, 13 Apr 2026 16:32:45 -0400 Subject: [PATCH] refactor: Fix remaining errors in `api/` (and temporarily switch to a fork of ruma) --- Cargo.lock | 22 +++++++++++----------- Cargo.toml | 5 +++-- src/api/server/edutypes.rs | 10 +++++----- src/api/server/make_join.rs | 2 +- 4 files changed, 20 insertions(+), 19 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7cd57d2d4..43b4d0f59 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4633,7 +4633,7 @@ dependencies = [ [[package]] name = "ruma" version = "0.14.1" -source = "git+https://github.com/ruma/ruma.git?rev=ce4708a2727f18d42ba83b1c262142e6ffd0f545#ce4708a2727f18d42ba83b1c262142e6ffd0f545" +source = "git+https://github.com/gingershaped/ruwuma.git?rev=ce7ea072a3d47f1e674bb4badcb2af15b30e4088#ce7ea072a3d47f1e674bb4badcb2af15b30e4088" dependencies = [ "assign", "js_int", @@ -4652,7 +4652,7 @@ dependencies = [ [[package]] name = "ruma-appservice-api" version = "0.14.1" -source = "git+https://github.com/ruma/ruma.git?rev=ce4708a2727f18d42ba83b1c262142e6ffd0f545#ce4708a2727f18d42ba83b1c262142e6ffd0f545" +source = "git+https://github.com/gingershaped/ruwuma.git?rev=ce7ea072a3d47f1e674bb4badcb2af15b30e4088#ce7ea072a3d47f1e674bb4badcb2af15b30e4088" dependencies = [ "js_int", "ruma-common", @@ -4664,7 +4664,7 @@ dependencies = [ [[package]] name = "ruma-client-api" version = "0.22.1" -source = "git+https://github.com/ruma/ruma.git?rev=ce4708a2727f18d42ba83b1c262142e6ffd0f545#ce4708a2727f18d42ba83b1c262142e6ffd0f545" +source = "git+https://github.com/gingershaped/ruwuma.git?rev=ce7ea072a3d47f1e674bb4badcb2af15b30e4088#ce7ea072a3d47f1e674bb4badcb2af15b30e4088" dependencies = [ "as_variant", "assign", @@ -4686,7 +4686,7 @@ dependencies = [ [[package]] name = "ruma-common" version = "0.17.1" -source = "git+https://github.com/ruma/ruma.git?rev=ce4708a2727f18d42ba83b1c262142e6ffd0f545#ce4708a2727f18d42ba83b1c262142e6ffd0f545" +source = "git+https://github.com/gingershaped/ruwuma.git?rev=ce7ea072a3d47f1e674bb4badcb2af15b30e4088#ce7ea072a3d47f1e674bb4badcb2af15b30e4088" dependencies = [ "as_variant", "base64 0.22.1", @@ -4719,7 +4719,7 @@ dependencies = [ [[package]] name = "ruma-events" version = "0.32.1" -source = "git+https://github.com/ruma/ruma.git?rev=ce4708a2727f18d42ba83b1c262142e6ffd0f545#ce4708a2727f18d42ba83b1c262142e6ffd0f545" +source = "git+https://github.com/gingershaped/ruwuma.git?rev=ce7ea072a3d47f1e674bb4badcb2af15b30e4088#ce7ea072a3d47f1e674bb4badcb2af15b30e4088" dependencies = [ "as_variant", "indexmap", @@ -4740,7 +4740,7 @@ dependencies = [ [[package]] name = "ruma-federation-api" version = "0.13.1" -source = "git+https://github.com/ruma/ruma.git?rev=ce4708a2727f18d42ba83b1c262142e6ffd0f545#ce4708a2727f18d42ba83b1c262142e6ffd0f545" +source = "git+https://github.com/gingershaped/ruwuma.git?rev=ce7ea072a3d47f1e674bb4badcb2af15b30e4088#ce7ea072a3d47f1e674bb4badcb2af15b30e4088" dependencies = [ "bytes", "headers", @@ -4763,7 +4763,7 @@ dependencies = [ [[package]] name = "ruma-identifiers-validation" version = "0.12.0" -source = "git+https://github.com/ruma/ruma.git?rev=ce4708a2727f18d42ba83b1c262142e6ffd0f545#ce4708a2727f18d42ba83b1c262142e6ffd0f545" +source = "git+https://github.com/gingershaped/ruwuma.git?rev=ce7ea072a3d47f1e674bb4badcb2af15b30e4088#ce7ea072a3d47f1e674bb4badcb2af15b30e4088" dependencies = [ "js_int", "thiserror 2.0.18", @@ -4772,7 +4772,7 @@ dependencies = [ [[package]] name = "ruma-macros" version = "0.17.1" -source = "git+https://github.com/ruma/ruma.git?rev=ce4708a2727f18d42ba83b1c262142e6ffd0f545#ce4708a2727f18d42ba83b1c262142e6ffd0f545" +source = "git+https://github.com/gingershaped/ruwuma.git?rev=ce7ea072a3d47f1e674bb4badcb2af15b30e4088#ce7ea072a3d47f1e674bb4badcb2af15b30e4088" dependencies = [ "as_variant", "cfg-if", @@ -4788,7 +4788,7 @@ dependencies = [ [[package]] name = "ruma-push-gateway-api" version = "0.13.0" -source = "git+https://github.com/ruma/ruma.git?rev=ce4708a2727f18d42ba83b1c262142e6ffd0f545#ce4708a2727f18d42ba83b1c262142e6ffd0f545" +source = "git+https://github.com/gingershaped/ruwuma.git?rev=ce7ea072a3d47f1e674bb4badcb2af15b30e4088#ce7ea072a3d47f1e674bb4badcb2af15b30e4088" dependencies = [ "js_int", "ruma-common", @@ -4800,7 +4800,7 @@ dependencies = [ [[package]] name = "ruma-signatures" version = "0.19.0" -source = "git+https://github.com/ruma/ruma.git?rev=ce4708a2727f18d42ba83b1c262142e6ffd0f545#ce4708a2727f18d42ba83b1c262142e6ffd0f545" +source = "git+https://github.com/gingershaped/ruwuma.git?rev=ce7ea072a3d47f1e674bb4badcb2af15b30e4088#ce7ea072a3d47f1e674bb4badcb2af15b30e4088" dependencies = [ "base64 0.22.1", "ed25519-dalek", @@ -4816,7 +4816,7 @@ dependencies = [ [[package]] name = "ruma-state-res" version = "0.15.0" -source = "git+https://github.com/ruma/ruma.git?rev=ce4708a2727f18d42ba83b1c262142e6ffd0f545#ce4708a2727f18d42ba83b1c262142e6ffd0f545" +source = "git+https://github.com/gingershaped/ruwuma.git?rev=ce7ea072a3d47f1e674bb4badcb2af15b30e4088#ce7ea072a3d47f1e674bb4badcb2af15b30e4088" dependencies = [ "js_int", "ruma-common", diff --git a/Cargo.toml b/Cargo.toml index 85d476b35..5b9834160 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -348,8 +348,8 @@ version = "1.1.1" # Used for matrix spec type definitions and helpers [workspace.dependencies.ruma] # version = "0.14.1" -git = "https://github.com/ruma/ruma.git" -rev = "ce4708a2727f18d42ba83b1c262142e6ffd0f545" +git = "https://github.com/gingershaped/ruwuma.git" +rev = "ce7ea072a3d47f1e674bb4badcb2af15b30e4088" features = [ "appservice-api-c", "client-api", @@ -378,6 +378,7 @@ features = [ "unstable-msc4195", "unstable-msc4203", "unstable-msc4310", + "unstable-msc4373", "unstable-msc4380", "unstable-msc4143", "unstable-msc4406", diff --git a/src/api/server/edutypes.rs b/src/api/server/edutypes.rs index ee3091a7d..a2ceff582 100644 --- a/src/api/server/edutypes.rs +++ b/src/api/server/edutypes.rs @@ -1,6 +1,6 @@ use axum::extract::State; use conduwuit::Result; -use ruma::api::federation::edutypes::get_edutypes; +use ruma::{api::federation::query::get_edu_types, assign}; use crate::Ruma; @@ -9,11 +9,11 @@ /// Lists EDU types we wish to receive pub(crate) async fn get_edutypes_route( State(services): State, - _body: Ruma, -) -> Result { - Ok(get_edutypes::unstable::Response { + _body: Ruma, +) -> Result { + Ok(assign!(get_edu_types::unstable::Response::new(), { typing: services.config.allow_incoming_typing, presence: services.config.allow_incoming_presence, receipt: services.config.allow_incoming_read_receipts, - }) + })) } diff --git a/src/api/server/make_join.rs b/src/api/server/make_join.rs index 9dea6941a..a7a6e84dc 100644 --- a/src/api/server/make_join.rs +++ b/src/api/server/make_join.rs @@ -252,7 +252,7 @@ pub(crate) async fn user_can_perform_restricted_join( return Ok(true); } }, - | AllowRule::UnstableSpamChecker => + | other if other.as_str() == "fi.mau.spam_checker" => return match services .antispam .meowlnir_accept_make_join(room_id.to_owned(), user_id.to_owned())