From 80368b3ea5b6d61e65f8beafc8192c9bb446a6cf Mon Sep 17 00:00:00 2001 From: Doloro1978 Date: Sun, 16 Aug 2026 15:06:55 +0100 Subject: [PATCH] Bump: 0.5.1 : persistent session cookie --- Cargo.lock | 3 ++- crates/server/Cargo.toml | 3 ++- crates/server/src/http.rs | 24 ++++++++++++------------ 3 files changed, 16 insertions(+), 14 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f2d3980..50ce6fb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2906,7 +2906,7 @@ dependencies = [ [[package]] name = "server" -version = "0.4.0" +version = "0.5.1" dependencies = [ "argon2", "async-broadcast", @@ -2930,6 +2930,7 @@ dependencies = [ "symphonia", "sysinfo", "thiserror 2.0.18", + "time", "tokio", "tower-http", "tracing", diff --git a/crates/server/Cargo.toml b/crates/server/Cargo.toml index 0c7076d..b516ccf 100644 --- a/crates/server/Cargo.toml +++ b/crates/server/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "server" -version = "0.5.0" +version = "0.5.1" edition = "2024" [target.x86_64-unknown-linux-gnu] @@ -35,6 +35,7 @@ symphonia = { version = "0.5", features = ["aac"] } opus = "0.3.1" rubato = "3.0.0" chrono = "0.4.45" +time = "0.3" regex = "1" thiserror = "2.0.18" sysinfo = "0.36" diff --git a/crates/server/src/http.rs b/crates/server/src/http.rs index c1c0242..29bd09a 100644 --- a/crates/server/src/http.rs +++ b/crates/server/src/http.rs @@ -375,19 +375,19 @@ where fn cookie_for_token(token: &str, dev: bool) -> Cookie<'static> { let token = token.to_owned(); - match dev { - true => Cookie::build(("session", token)) - .path("/") - .http_only(true) - .same_site(axum_extra::extract::cookie::SameSite::None) - .build(), - false => Cookie::build(("session", token)) - .path("/") - .http_only(true) - // .max_age(Duration::from_hours(999999)) - .same_site(axum_extra::extract::cookie::SameSite::Lax) - .build(), + let mut cookie = Cookie::build(("session", token)) + .path("/") + .http_only(true) + .max_age(time::Duration::days(30)) + .same_site(if dev { + axum_extra::extract::cookie::SameSite::None + } else { + axum_extra::extract::cookie::SameSite::Lax + }); + if dev { + cookie = cookie.secure(true); } + cookie.build() } #[axum::debug_handler]