From b28db015b4c1081ea4287406d0d644e917bc584a Mon Sep 17 00:00:00 2001
From: Tobias Reisinger <tobias@msrg.cc>
Date: Thu, 23 May 2024 20:18:11 +0200
Subject: [PATCH] Format code a bit

---
 Cargo.lock                   | 118 ++++++++++++++++++++++++++++++++---
 src/handlers/mod.rs          |   2 +-
 src/handlers/v1/macros.rs    |  28 +++++----
 src/handlers/v1/schedules.rs |   5 +-
 src/handlers/v1/tags.rs      |   1 +
 src/main.rs                  |   5 +-
 6 files changed, 134 insertions(+), 25 deletions(-)

diff --git a/Cargo.lock b/Cargo.lock
index 9ca1b7e..9cd0a0c 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -70,7 +70,7 @@ dependencies = [
  "actix-service",
  "actix-utils",
  "ahash",
- "base64",
+ "base64 0.21.7",
  "bitflags 2.5.0",
  "brotli",
  "bytes",
@@ -370,6 +370,12 @@ version = "0.21.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
 
+[[package]]
+name = "base64"
+version = "0.22.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
+
 [[package]]
 name = "base64ct"
 version = "1.6.0"
@@ -641,6 +647,41 @@ dependencies = [
  "typenum",
 ]
 
+[[package]]
+name = "darling"
+version = "0.20.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "83b2eb4d90d12bdda5ed17de686c2acb4c57914f8f921b8da7e112b5a36f3fe1"
+dependencies = [
+ "darling_core",
+ "darling_macro",
+]
+
+[[package]]
+name = "darling_core"
+version = "0.20.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "622687fe0bac72a04e5599029151f5796111b90f1baaa9b544d807a5e31cd120"
+dependencies = [
+ "fnv",
+ "ident_case",
+ "proc-macro2",
+ "quote",
+ "strsim",
+ "syn 2.0.61",
+]
+
+[[package]]
+name = "darling_macro"
+version = "0.20.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178"
+dependencies = [
+ "darling_core",
+ "quote",
+ "syn 2.0.61",
+]
+
 [[package]]
 name = "der"
 version = "0.7.9"
@@ -659,6 +700,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
 dependencies = [
  "powerfmt",
+ "serde",
 ]
 
 [[package]]
@@ -726,6 +768,7 @@ dependencies = [
  "serde",
  "serde_derive",
  "serde_json",
+ "serde_with",
  "simple_logger",
  "sqlx",
  "uuid",
@@ -983,13 +1026,19 @@ dependencies = [
  "futures-sink",
  "futures-util",
  "http",
- "indexmap",
+ "indexmap 2.2.6",
  "slab",
  "tokio",
  "tokio-util",
  "tracing",
 ]
 
+[[package]]
+name = "hashbrown"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
+
 [[package]]
 name = "hashbrown"
 version = "0.13.2"
@@ -1109,6 +1158,12 @@ dependencies = [
  "cc",
 ]
 
+[[package]]
+name = "ident_case"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
+
 [[package]]
 name = "idna"
 version = "0.5.0"
@@ -1119,6 +1174,17 @@ dependencies = [
  "unicode-normalization",
 ]
 
+[[package]]
+name = "indexmap"
+version = "1.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
+dependencies = [
+ "autocfg",
+ "hashbrown 0.12.3",
+ "serde",
+]
+
 [[package]]
 name = "indexmap"
 version = "2.2.6"
@@ -1694,7 +1760,7 @@ version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94"
 dependencies = [
- "base64",
+ "base64 0.21.7",
  "bitflags 2.5.0",
  "serde",
  "serde_derive",
@@ -1871,6 +1937,36 @@ dependencies = [
  "serde",
 ]
 
+[[package]]
+name = "serde_with"
+version = "3.8.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0ad483d2ab0149d5a5ebcd9972a3852711e0153d863bf5a5d0391d28883c4a20"
+dependencies = [
+ "base64 0.22.1",
+ "chrono",
+ "hex",
+ "indexmap 1.9.3",
+ "indexmap 2.2.6",
+ "serde",
+ "serde_derive",
+ "serde_json",
+ "serde_with_macros",
+ "time",
+]
+
+[[package]]
+name = "serde_with_macros"
+version = "3.8.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "65569b702f41443e8bc8bbb1c5779bd0450bbe723b56198980e80ec45780bce2"
+dependencies = [
+ "darling",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.61",
+]
+
 [[package]]
 name = "sha1"
 version = "0.10.6"
@@ -2019,7 +2115,7 @@ dependencies = [
  "futures-util",
  "hashlink",
  "hex",
- "indexmap",
+ "indexmap 2.2.6",
  "log",
  "memchr",
  "once_cell",
@@ -2082,7 +2178,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1ed31390216d20e538e447a7a9b959e06ed9fc51c37b514b46eb758016ecd418"
 dependencies = [
  "atoi",
- "base64",
+ "base64 0.21.7",
  "bitflags 2.5.0",
  "byteorder",
  "bytes",
@@ -2124,7 +2220,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7c824eb80b894f926f89a0b9da0c7f435d27cdd35b8c655b114e58223918577e"
 dependencies = [
  "atoi",
- "base64",
+ "base64 0.21.7",
  "bitflags 2.5.0",
  "byteorder",
  "crc",
@@ -2189,6 +2285,12 @@ dependencies = [
  "unicode-normalization",
 ]
 
+[[package]]
+name = "strsim"
+version = "0.11.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
+
 [[package]]
 name = "subtle"
 version = "2.5.0"
@@ -2375,7 +2477,7 @@ version = "0.22.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d3328d4f68a705b2a4498da1d580585d39a6510f98318a2cec3018a7ec61ddef"
 dependencies = [
- "indexmap",
+ "indexmap 2.2.6",
  "serde",
  "serde_spanned",
  "toml_datetime",
@@ -2491,7 +2593,7 @@ version = "4.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c5afb1a60e207dca502682537fefcfd9921e71d0b83e9576060f09abc6efab23"
 dependencies = [
- "indexmap",
+ "indexmap 2.2.6",
  "serde",
  "serde_json",
  "utoipa-gen",
diff --git a/src/handlers/mod.rs b/src/handlers/mod.rs
index 1693e53..5349bfe 100644
--- a/src/handlers/mod.rs
+++ b/src/handlers/mod.rs
@@ -44,4 +44,4 @@ impl EmgauwaMessage for HttpResponseBuilder {
 	fn emgauwa_message(mut self, message: &str) -> HttpResponse {
 		self.json(json!({ "message": message }))
 	}
-}
\ No newline at end of file
+}
diff --git a/src/handlers/v1/macros.rs b/src/handlers/v1/macros.rs
index 44b9957..d2d62bf 100644
--- a/src/handlers/v1/macros.rs
+++ b/src/handlers/v1/macros.rs
@@ -1,14 +1,15 @@
 use actix::Addr;
-use actix_web::{delete, get, HttpResponse, post, put, web};
-use sqlx::{Pool, Sqlite};
-use sqlx::pool::PoolConnection;
-
+use actix_web::{delete, get, post, put, web, HttpResponse};
 use emgauwa_common::db::{DbController, DbMacro};
 use emgauwa_common::errors::{DatabaseError, EmgauwaError};
 use emgauwa_common::models::{convert_db_list, FromDbModel, Macro, MacroAction, Relay};
-use emgauwa_common::types::{ControllerWsAction, EmgauwaUid, RequestMacroCreate, RequestMacroExecute, RequestMacroUpdate};
-use crate::app_state;
+use emgauwa_common::types::{
+	ControllerWsAction, EmgauwaUid, RequestMacroCreate, RequestMacroExecute, RequestMacroUpdate,
+};
+use sqlx::pool::PoolConnection;
+use sqlx::{Pool, Sqlite};
 
+use crate::app_state;
 use crate::app_state::AppState;
 use crate::handlers::EmgauwaMessage;
 
@@ -133,8 +134,8 @@ pub async fn execute(
 	let affected_controllers = collect_affected_controllers(&mut pool_conn, &actions).await?;
 
 	for controller in affected_controllers {
-
-		let affected_relays = collect_affected_relays(&mut pool_conn, &mut actions, &controller).await?;
+		let affected_relays =
+			collect_affected_relays(&mut pool_conn, &mut actions, &controller).await?;
 
 		app_state
 			.send(app_state::Action {
@@ -159,10 +160,11 @@ async fn collect_affected_controllers(
 			.iter()
 			.any(|controller| controller.id == controller_id)
 		{
-			continue
+			continue;
 		}
 
-		let controller = DbController::get(pool_conn, controller_id).await?
+		let controller = DbController::get(pool_conn, controller_id)
+			.await?
 			.ok_or(DatabaseError::NotFound)?;
 		affected_controllers.push(controller);
 	}
@@ -177,7 +179,9 @@ async fn collect_affected_relays(
 	let mut affected_relays: Vec<Relay> = Vec::new();
 
 	for action in actions {
-		if affected_relays.iter().any(|relay| relay.r.id == action.relay.r.id)
+		if affected_relays
+			.iter()
+			.any(|relay| relay.r.id == action.relay.r.id)
 			|| action.relay.r.controller_id != controller.id
 		{
 			continue;
@@ -186,4 +190,4 @@ async fn collect_affected_relays(
 		affected_relays.push(action.relay.clone());
 	}
 	Ok(affected_relays)
-}
\ No newline at end of file
+}
diff --git a/src/handlers/v1/schedules.rs b/src/handlers/v1/schedules.rs
index 9acc734..61d6497 100644
--- a/src/handlers/v1/schedules.rs
+++ b/src/handlers/v1/schedules.rs
@@ -3,7 +3,10 @@ use actix_web::{delete, get, post, put, web, HttpResponse};
 use emgauwa_common::db::{DbController, DbJunctionRelaySchedule, DbSchedule, DbTag};
 use emgauwa_common::errors::{ApiError, DatabaseError, EmgauwaError};
 use emgauwa_common::models::{convert_db_list, FromDbModel, Schedule};
-use emgauwa_common::types::{ControllerWsAction, RequestScheduleCreate, RequestScheduleGetTagged, RequestScheduleUpdate, ScheduleUid};
+use emgauwa_common::types::{
+	ControllerWsAction, RequestScheduleCreate, RequestScheduleGetTagged, RequestScheduleUpdate,
+	ScheduleUid,
+};
 use itertools::Itertools;
 use sqlx::pool::PoolConnection;
 use sqlx::{Pool, Sqlite};
diff --git a/src/handlers/v1/tags.rs b/src/handlers/v1/tags.rs
index ebf818c..65877c5 100644
--- a/src/handlers/v1/tags.rs
+++ b/src/handlers/v1/tags.rs
@@ -4,6 +4,7 @@ use emgauwa_common::errors::{DatabaseError, EmgauwaError};
 use emgauwa_common::models::{FromDbModel, Tag};
 use emgauwa_common::types::RequestTagCreate;
 use sqlx::{Pool, Sqlite};
+
 use crate::handlers::EmgauwaMessage;
 
 #[get("/tags")]
diff --git a/src/main.rs b/src/main.rs
index d37a39c..c604d41 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -4,12 +4,11 @@ use actix::{Actor, Arbiter};
 use actix_cors::Cors;
 use actix_web::middleware::TrailingSlash;
 use actix_web::{middleware, web, App, HttpServer};
-use serde_json::Value;
-use utoipa_swagger_ui::SwaggerUi;
-
 use emgauwa_common::db::DbController;
 use emgauwa_common::errors::EmgauwaError;
 use emgauwa_common::utils::{drop_privileges, init_logging};
+use serde_json::Value;
+use utoipa_swagger_ui::SwaggerUi;
 
 use crate::app_state::AppState;