diff --git a/Cargo.lock b/Cargo.lock index a5b12e4..292889c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -126,9 +126,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "axum" -version = "0.4.8" +version = "0.5.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9f346c92c1e9a71d14fe4aaf7c2a5d9932cc4e5e48d8fb6641524416eb79ddd" +checksum = "c9e3356844c4d6a6d6467b8da2cffb4a2820be256f50a3a386c9d152bab31043" dependencies = [ "async-trait", "axum-core", @@ -139,6 +139,7 @@ dependencies = [ "http", "http-body", "hyper", + "itoa", "matchit", "memchr", "mime", @@ -157,9 +158,9 @@ dependencies = [ [[package]] name = "axum-core" -version = "0.1.2" +version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dbcda393bef9c87572779cb8ef916f12d77750b27535dd6819fa86591627a51" +checksum = "d9f0c0a60006f2a293d82d571f635042a72edf927539b7685bd62d361963839b" dependencies = [ "async-trait", "bytes", @@ -167,6 +168,8 @@ dependencies = [ "http", "http-body", "mime", + "tower-layer", + "tower-service", ] [[package]] @@ -503,9 +506,9 @@ dependencies = [ [[package]] name = "http" -version = "0.2.6" +version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31f4c6746584866f0feabcc69893c5b51beef3831656a968ed7ae254cdc4fd03" +checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399" dependencies = [ "bytes", "fnv", @@ -514,9 +517,9 @@ dependencies = [ [[package]] name = "http-body" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ff4f84919677303da5f147645dbea6b1881f368d03ac84e1dc09031ebd7b2c6" +checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" dependencies = [ "bytes", "http", @@ -693,9 +696,9 @@ checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f" [[package]] name = "matchit" -version = "0.4.6" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9376a4f0340565ad675d11fc1419227faf5f60cd7ac9cb2e7185a471f30af833" +checksum = "73cbba799671b762df5a175adf59ce145165747bb891505c43d09aefbbf38beb" [[package]] name = "memchr" @@ -1351,7 +1354,6 @@ dependencies = [ "pin-project", "pin-project-lite", "tokio", - "tokio-util 0.7.0", "tower-layer", "tower-service", "tracing", @@ -1359,9 +1361,9 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.2.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bb284cac1883d54083a0edbdc9cabf931dfed87455f8c7266c01ece6394a43a" +checksum = "3c530c8675c1dbf98facee631536fa116b5fb6382d7dd6dc1b118d970eafe3ba" dependencies = [ "bitflags", "bytes", @@ -1521,9 +1523,9 @@ dependencies = [ [[package]] name = "uuid" -version = "0.8.2" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" +checksum = "dd6469f4314d5f1ffec476e05f17cc9a78bc7a27a6a857842170bdf8d6f98d2f" dependencies = [ "getrandom", "serde", diff --git a/Cargo.toml b/Cargo.toml index 952025c..65b6f1f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -6,17 +6,17 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -axum = { version = "0.4.8", features = ["headers"] } +axum = { version = "0.5.16", features = ["headers"] } serde = { version = "1.0", features = ["derive"] } serde_json = "1.0.68" tokio = { version = "1.0", features = ["full"] } tracing = "0.1" tracing-subscriber = { version="0.3", features = ["env-filter"] } -uuid = { version = "0.8", features = ["v4", "serde"] } +uuid = { version = "1.1.2", features = ["v4", "serde"] } async-session = "3.0.0" askama = "0.11" oauth2 = "4.1" reqwest = { version = "0.11", default-features = false, features = ["rustls-tls", "json"] } headers = "0.3" http = "0.2" -tower-http = { version = "0.2.0", features = ["fs", "trace"] } \ No newline at end of file +tower-http = { version = "0.3.4", features = ["fs", "trace"] } \ No newline at end of file diff --git a/src/main.rs b/src/main.rs index d7c92d3..952d9fd 100644 --- a/src/main.rs +++ b/src/main.rs @@ -297,12 +297,12 @@ async fn logout( let session = match store.load_session(cookie.to_string()).await.unwrap() { Some(s) => s, // No session active, just redirect - None => return Redirect::to("/".parse().unwrap()), + None => return Redirect::to(&"/"), }; store.destroy_session(session).await.unwrap(); - Redirect::to("/".parse().unwrap()) + Redirect::to(&"/") } async fn google_auth() -> impl IntoResponse { @@ -321,7 +321,7 @@ async fn google_auth() -> impl IntoResponse { .url(); // Redirect to Google's oauth service - Redirect::to(auth_url.to_string().parse().unwrap()) + Redirect::to(&auth_url.to_string()) } async fn discord_auth() -> impl IntoResponse { @@ -332,7 +332,7 @@ async fn discord_auth() -> impl IntoResponse { .url(); // Redirect to Discord's oauth service - Redirect::to(auth_url.to_string().parse().unwrap()) + Redirect::to(&auth_url.to_string()) } #[derive(Debug, Deserialize)] @@ -442,11 +442,11 @@ async fn discord_authorized( let mut headers = HeaderMap::new(); headers.insert(SET_COOKIE, cookie.parse().unwrap()); - (headers, Redirect::to("/dashboard".parse().unwrap())) + (headers, Redirect::to(&"/dashboard")) } else { - let mut headers = HeaderMap::new(); + let headers = HeaderMap::new(); - (headers, Redirect::to("/".parse().unwrap())) + (headers, Redirect::to(&"/")) } } @@ -454,7 +454,7 @@ struct AuthRedirect; impl IntoResponse for AuthRedirect { fn into_response(self) -> Response { - Redirect::temporary("/login".parse().unwrap()).into_response() + Redirect::temporary(&"/login").into_response() } }