From 5a490a4397f0c6a36dab1cb631dadc67a849deab Mon Sep 17 00:00:00 2001 From: Charles Hall Date: Thu, 3 Oct 2024 15:28:24 -0700 Subject: [PATCH] fix mod/use order Yes, it does actually bother me, thanks for asking. --- src/database.rs | 9 +++++---- src/database/key_value/rooms.rs | 4 ++-- src/database/key_value/rooms/edus.rs | 4 ++-- src/main.rs | 4 ++-- src/service/account_data.rs | 1 + src/service/appservice.rs | 7 ++++--- src/service/globals.rs | 6 ++++-- src/service/key_backups.rs | 1 + src/service/pusher.rs | 6 ++++-- src/service/rooms/auth_chain.rs | 6 ++++-- src/service/rooms/directory.rs | 1 + src/service/rooms/edus/read_receipt.rs | 1 + src/service/rooms/lazy_loading.rs | 6 ++++-- src/service/rooms/metadata.rs | 1 + src/service/rooms/outlier.rs | 1 + src/service/rooms/pdu_metadata.rs | 6 ++++-- src/service/rooms/search.rs | 1 + src/service/rooms/short.rs | 3 ++- src/service/rooms/state.rs | 6 ++++-- src/service/rooms/state_accessor.rs | 6 ++++-- src/service/rooms/state_cache.rs | 6 ++++-- src/service/rooms/state_compressor.rs | 3 +-- src/service/rooms/threads.rs | 7 ++++--- src/service/rooms/timeline.rs | 7 ++++--- src/service/rooms/user.rs | 1 + src/service/sending.rs | 7 ++++--- src/service/transaction_ids.rs | 1 + src/service/uiaa.rs | 7 ++++--- src/service/users.rs | 6 ++++-- src/utils.rs | 8 ++++---- 30 files changed, 83 insertions(+), 50 deletions(-) diff --git a/src/database.rs b/src/database.rs index abfad85a..641f1f7c 100644 --- a/src/database.rs +++ b/src/database.rs @@ -1,6 +1,3 @@ -pub(crate) mod abstraction; -pub(crate) mod key_value; - use std::{ collections::{BTreeMap, HashMap, HashSet}, fs, @@ -10,7 +7,6 @@ use std::{ sync::{Arc, Mutex, RwLock}, }; -use abstraction::{KeyValueDatabaseEngine, KvTree}; use lru_cache::LruCache; use ruma::{ events::{ @@ -35,6 +31,11 @@ use crate::{ services, utils, Config, Error, PduEvent, Result, }; +pub(crate) mod abstraction; +pub(crate) mod key_value; + +use abstraction::{KeyValueDatabaseEngine, KvTree}; + pub(crate) struct KeyValueDatabase { db: Arc, diff --git a/src/database/key_value/rooms.rs b/src/database/key_value/rooms.rs index e7b53d30..825dd1de 100644 --- a/src/database/key_value/rooms.rs +++ b/src/database/key_value/rooms.rs @@ -1,3 +1,5 @@ +use crate::{database::KeyValueDatabase, service}; + mod alias; mod auth_chain; mod directory; @@ -16,6 +18,4 @@ mod threads; mod timeline; mod user; -use crate::{database::KeyValueDatabase, service}; - impl service::rooms::Data for KeyValueDatabase {} diff --git a/src/database/key_value/rooms/edus.rs b/src/database/key_value/rooms/edus.rs index 90f2b24a..bf25ee37 100644 --- a/src/database/key_value/rooms/edus.rs +++ b/src/database/key_value/rooms/edus.rs @@ -1,5 +1,5 @@ -mod read_receipt; - use crate::{database::KeyValueDatabase, service}; +mod read_receipt; + impl service::rooms::edus::Data for KeyValueDatabase {} diff --git a/src/main.rs b/src/main.rs index dfef8616..2726b4bd 100644 --- a/src/main.rs +++ b/src/main.rs @@ -5,6 +5,8 @@ use std::process::ExitCode; use clap::Parser; +#[cfg(all(not(target_env = "msvc"), feature = "jemalloc"))] +use tikv_jemallocator::Jemalloc; use tracing::{error, info}; mod api; @@ -19,8 +21,6 @@ mod utils; pub(crate) use api::ruma_wrapper::{Ar, Ra}; pub(crate) use config::Config; pub(crate) use service::{pdu::PduEvent, services, Services}; -#[cfg(all(not(target_env = "msvc"), feature = "jemalloc"))] -use tikv_jemallocator::Jemalloc; pub(crate) use utils::error::{Error, Result}; #[cfg(all(not(target_env = "msvc"), feature = "jemalloc"))] diff --git a/src/service/account_data.rs b/src/service/account_data.rs index 411199f4..4f4b4344 100644 --- a/src/service/account_data.rs +++ b/src/service/account_data.rs @@ -1,4 +1,5 @@ mod data; pub(crate) use data::Data; + pub(crate) type Service = &'static dyn Data; diff --git a/src/service/appservice.rs b/src/service/appservice.rs index b4046f1b..d0b1626d 100644 --- a/src/service/appservice.rs +++ b/src/service/appservice.rs @@ -1,8 +1,5 @@ -mod data; - use std::collections::BTreeMap; -pub(crate) use data::Data; use futures_util::Future; use regex::RegexSet; use ruma::{ @@ -13,6 +10,10 @@ use tokio::sync::RwLock; use crate::Result; +mod data; + +pub(crate) use data::Data; + /// Compiled regular expressions for a namespace. #[derive(Clone, Debug)] pub(crate) struct NamespaceRegex { diff --git a/src/service/globals.rs b/src/service/globals.rs index a1662c9e..1026135c 100644 --- a/src/service/globals.rs +++ b/src/service/globals.rs @@ -1,4 +1,3 @@ -mod data; use std::{ collections::{BTreeMap, HashMap}, error::Error as StdError, @@ -15,7 +14,6 @@ use std::{ }; use base64::{engine::general_purpose, Engine as _}; -pub(crate) use data::{Data, SigningKeys}; use futures_util::FutureExt; use hyper::service::Service as _; use hyper_util::{ @@ -48,6 +46,10 @@ use crate::{ Config, Error, Result, }; +mod data; + +pub(crate) use data::{Data, SigningKeys}; + type WellKnownMap = HashMap; type TlsNameMap = HashMap, u16)>; // Time if last failed try, number of failed tries diff --git a/src/service/key_backups.rs b/src/service/key_backups.rs index 411199f4..4f4b4344 100644 --- a/src/service/key_backups.rs +++ b/src/service/key_backups.rs @@ -1,4 +1,5 @@ mod data; pub(crate) use data::Data; + pub(crate) type Service = &'static dyn Data; diff --git a/src/service/pusher.rs b/src/service/pusher.rs index adc56c2f..c2ae7c46 100644 --- a/src/service/pusher.rs +++ b/src/service/pusher.rs @@ -1,8 +1,6 @@ -mod data; use std::{fmt::Debug, mem}; use bytes::BytesMut; -pub(crate) use data::Data; use ruma::{ api::{ client::push::{set_pusher, Pusher, PusherKind}, @@ -29,6 +27,10 @@ use tracing::warn; use crate::{services, utils, Error, PduEvent, Result}; +mod data; + +pub(crate) use data::Data; + pub(crate) struct Service { pub(crate) db: &'static dyn Data, } diff --git a/src/service/rooms/auth_chain.rs b/src/service/rooms/auth_chain.rs index 5dcf9275..c5a62a6d 100644 --- a/src/service/rooms/auth_chain.rs +++ b/src/service/rooms/auth_chain.rs @@ -1,16 +1,18 @@ -mod data; use std::{ collections::{BTreeSet, HashSet}, sync::Arc, }; -pub(crate) use data::Data; use ruma::{api::client::error::ErrorKind, EventId, RoomId}; use tracing::{debug, error, warn}; use super::short::ShortEventId; use crate::{services, utils::debug_slice_truncated, Error, Result}; +mod data; + +pub(crate) use data::Data; + pub(crate) struct Service { pub(crate) db: &'static dyn Data, } diff --git a/src/service/rooms/directory.rs b/src/service/rooms/directory.rs index 411199f4..4f4b4344 100644 --- a/src/service/rooms/directory.rs +++ b/src/service/rooms/directory.rs @@ -1,4 +1,5 @@ mod data; pub(crate) use data::Data; + pub(crate) type Service = &'static dyn Data; diff --git a/src/service/rooms/edus/read_receipt.rs b/src/service/rooms/edus/read_receipt.rs index 411199f4..4f4b4344 100644 --- a/src/service/rooms/edus/read_receipt.rs +++ b/src/service/rooms/edus/read_receipt.rs @@ -1,4 +1,5 @@ mod data; pub(crate) use data::Data; + pub(crate) type Service = &'static dyn Data; diff --git a/src/service/rooms/lazy_loading.rs b/src/service/rooms/lazy_loading.rs index 10e0fff1..f2732790 100644 --- a/src/service/rooms/lazy_loading.rs +++ b/src/service/rooms/lazy_loading.rs @@ -1,13 +1,15 @@ -mod data; use std::collections::{HashMap, HashSet}; -pub(crate) use data::Data; use ruma::{DeviceId, OwnedDeviceId, OwnedRoomId, OwnedUserId, RoomId, UserId}; use tokio::sync::Mutex; use super::timeline::PduCount; use crate::Result; +mod data; + +pub(crate) use data::Data; + pub(crate) struct Service { pub(crate) db: &'static dyn Data, diff --git a/src/service/rooms/metadata.rs b/src/service/rooms/metadata.rs index 411199f4..4f4b4344 100644 --- a/src/service/rooms/metadata.rs +++ b/src/service/rooms/metadata.rs @@ -1,4 +1,5 @@ mod data; pub(crate) use data::Data; + pub(crate) type Service = &'static dyn Data; diff --git a/src/service/rooms/outlier.rs b/src/service/rooms/outlier.rs index 411199f4..4f4b4344 100644 --- a/src/service/rooms/outlier.rs +++ b/src/service/rooms/outlier.rs @@ -1,4 +1,5 @@ mod data; pub(crate) use data::Data; + pub(crate) type Service = &'static dyn Data; diff --git a/src/service/rooms/pdu_metadata.rs b/src/service/rooms/pdu_metadata.rs index 767ada39..d3854523 100644 --- a/src/service/rooms/pdu_metadata.rs +++ b/src/service/rooms/pdu_metadata.rs @@ -1,7 +1,5 @@ -mod data; use std::sync::Arc; -pub(crate) use data::Data; use ruma::{ api::client::relations::get_relating_events, events::{relation::RelationType, TimelineEventType}, @@ -12,6 +10,10 @@ use serde::Deserialize; use super::timeline::PduCount; use crate::{services, PduEvent, Result}; +mod data; + +pub(crate) use data::Data; + pub(crate) struct Service { pub(crate) db: &'static dyn Data, } diff --git a/src/service/rooms/search.rs b/src/service/rooms/search.rs index 411199f4..4f4b4344 100644 --- a/src/service/rooms/search.rs +++ b/src/service/rooms/search.rs @@ -1,4 +1,5 @@ mod data; pub(crate) use data::Data; + pub(crate) type Service = &'static dyn Data; diff --git a/src/service/rooms/short.rs b/src/service/rooms/short.rs index 97a7edc8..790b1d04 100644 --- a/src/service/rooms/short.rs +++ b/src/service/rooms/short.rs @@ -1,5 +1,7 @@ mod data; +pub(crate) use data::Data; + macro_rules! short_id_type { ($name:ident) => { #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] @@ -23,5 +25,4 @@ short_id_type!(ShortEventId); short_id_type!(ShortStateHash); short_id_type!(ShortStateKey); -pub(crate) use data::Data; pub(crate) type Service = &'static dyn Data; diff --git a/src/service/rooms/state.rs b/src/service/rooms/state.rs index f45effd7..f19a9f9a 100644 --- a/src/service/rooms/state.rs +++ b/src/service/rooms/state.rs @@ -1,11 +1,9 @@ -mod data; use std::{ collections::{HashMap, HashSet}, iter, sync::Arc, }; -pub(crate) use data::Data; use ruma::{ api::client::error::ErrorKind, events::{ @@ -29,6 +27,10 @@ use crate::{ Error, PduEvent, Result, }; +mod data; + +pub(crate) use data::Data; + pub(crate) struct Service { pub(crate) db: &'static dyn Data, } diff --git a/src/service/rooms/state_accessor.rs b/src/service/rooms/state_accessor.rs index f27a69ee..c3160d96 100644 --- a/src/service/rooms/state_accessor.rs +++ b/src/service/rooms/state_accessor.rs @@ -1,10 +1,8 @@ -mod data; use std::{ collections::HashMap, sync::{Arc, Mutex}, }; -pub(crate) use data::Data; use lru_cache::LruCache; use ruma::{ events::{ @@ -35,6 +33,10 @@ use crate::{ Error, PduEvent, Result, }; +mod data; + +pub(crate) use data::Data; + pub(crate) struct Service { pub(crate) db: &'static dyn Data, pub(crate) server_visibility_cache: diff --git a/src/service/rooms/state_cache.rs b/src/service/rooms/state_cache.rs index a2b1aab2..980998a7 100644 --- a/src/service/rooms/state_cache.rs +++ b/src/service/rooms/state_cache.rs @@ -1,7 +1,5 @@ -mod data; use std::{collections::HashSet, sync::Arc}; -pub(crate) use data::Data; use ruma::{ events::{ ignored_user_list::IgnoredUserListEvent, @@ -16,6 +14,10 @@ use tracing::warn; use crate::{service::appservice::RegistrationInfo, services, Error, Result}; +mod data; + +pub(crate) use data::Data; + pub(crate) struct Service { pub(crate) db: &'static dyn Data, } diff --git a/src/service/rooms/state_compressor.rs b/src/service/rooms/state_compressor.rs index 42dc8878..4232a325 100644 --- a/src/service/rooms/state_compressor.rs +++ b/src/service/rooms/state_compressor.rs @@ -8,6 +8,7 @@ use std::{ use lru_cache::LruCache; use ruma::{EventId, RoomId}; +use super::short::{ShortEventId, ShortStateHash, ShortStateKey}; use crate::{ observability::{FoundIn, Lookup, METRICS}, services, utils, Result, @@ -18,8 +19,6 @@ pub(crate) mod data; pub(crate) use data::Data; use data::StateDiff; -use super::short::{ShortEventId, ShortStateHash, ShortStateKey}; - #[derive(Clone)] pub(crate) struct CompressedStateLayer { pub(crate) shortstatehash: ShortStateHash, diff --git a/src/service/rooms/threads.rs b/src/service/rooms/threads.rs index c2e9ed11..5acfdec8 100644 --- a/src/service/rooms/threads.rs +++ b/src/service/rooms/threads.rs @@ -1,6 +1,3 @@ -mod data; - -pub(crate) use data::Data; use ruma::{ api::client::{error::ErrorKind, threads::get_threads::v1::IncludeThreads}, events::relation::BundledThread, @@ -10,6 +7,10 @@ use serde_json::json; use crate::{services, Error, PduEvent, Result}; +mod data; + +pub(crate) use data::Data; + pub(crate) struct Service { pub(crate) db: &'static dyn Data, } diff --git a/src/service/rooms/timeline.rs b/src/service/rooms/timeline.rs index c70c7033..933524e2 100644 --- a/src/service/rooms/timeline.rs +++ b/src/service/rooms/timeline.rs @@ -1,12 +1,9 @@ -mod data; - use std::{ cmp::Ordering, collections::{BTreeMap, HashSet}, sync::Arc, }; -pub(crate) use data::Data; use ruma::{ api::{client::error::ErrorKind, federation}, canonical_json::to_canonical_value, @@ -43,6 +40,10 @@ use crate::{ Error, PduEvent, Result, }; +mod data; + +pub(crate) use data::Data; + #[derive(Debug, Clone, PartialEq, Eq, Hash)] pub(crate) struct PduId { inner: Vec, diff --git a/src/service/rooms/user.rs b/src/service/rooms/user.rs index 411199f4..4f4b4344 100644 --- a/src/service/rooms/user.rs +++ b/src/service/rooms/user.rs @@ -1,4 +1,5 @@ mod data; pub(crate) use data::Data; + pub(crate) type Service = &'static dyn Data; diff --git a/src/service/sending.rs b/src/service/sending.rs index 2e3fcc5a..d02918d5 100644 --- a/src/service/sending.rs +++ b/src/service/sending.rs @@ -1,5 +1,3 @@ -mod data; - use std::{ collections::{BTreeMap, HashMap, HashSet}, fmt::Debug, @@ -8,7 +6,6 @@ use std::{ }; use base64::{engine::general_purpose, Engine as _}; -pub(crate) use data::Data; use federation::transactions::send_transaction_message; use futures_util::{stream::FuturesUnordered, StreamExt}; use ruma::{ @@ -50,6 +47,10 @@ use crate::{ Config, Error, PduEvent, Result, }; +mod data; + +pub(crate) use data::Data; + #[derive(Clone, Debug, PartialEq, Eq, Hash)] pub(crate) enum Destination { Appservice(String), diff --git a/src/service/transaction_ids.rs b/src/service/transaction_ids.rs index 411199f4..4f4b4344 100644 --- a/src/service/transaction_ids.rs +++ b/src/service/transaction_ids.rs @@ -1,4 +1,5 @@ mod data; pub(crate) use data::Data; + pub(crate) type Service = &'static dyn Data; diff --git a/src/service/uiaa.rs b/src/service/uiaa.rs index 5ca95ed1..afa04650 100644 --- a/src/service/uiaa.rs +++ b/src/service/uiaa.rs @@ -1,6 +1,3 @@ -mod data; - -pub(crate) use data::Data; use ruma::{ api::client::{ error::ErrorKind, @@ -14,6 +11,10 @@ use crate::{ api::client_server::SESSION_ID_LENGTH, services, utils, Error, Result, }; +mod data; + +pub(crate) use data::Data; + pub(crate) struct Service { pub(crate) db: &'static dyn Data, } diff --git a/src/service/users.rs b/src/service/users.rs index 47277600..3007f176 100644 --- a/src/service/users.rs +++ b/src/service/users.rs @@ -1,11 +1,9 @@ -mod data; use std::{ collections::{BTreeMap, BTreeSet}, mem, sync::{Arc, Mutex}, }; -pub(crate) use data::Data; use ruma::{ api::client::{ device::Device, @@ -24,6 +22,10 @@ use ruma::{ use crate::{services, Error, Result}; +mod data; + +pub(crate) use data::Data; + pub(crate) struct SlidingSyncCache { lists: BTreeMap, subscriptions: BTreeMap, diff --git a/src/utils.rs b/src/utils.rs index c9cafa56..e5d923d5 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -1,7 +1,3 @@ -pub(crate) mod error; -pub(crate) mod on_demand_hashmap; -pub(crate) mod room_version; - use std::{ borrow::Cow, cmp, fmt, @@ -21,6 +17,10 @@ use ruma::{ use crate::{Error, Result}; +pub(crate) mod error; +pub(crate) mod on_demand_hashmap; +pub(crate) mod room_version; + // Hopefully we have a better chat protocol in 530 years #[allow(clippy::as_conversions, clippy::cast_possible_truncation)] pub(crate) fn millis_since_unix_epoch() -> u64 {