aboutsummaryrefslogtreecommitdiffstats
path: root/crates/turtle/src/atuin_server/handlers/user.rs
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2026-06-11 16:10:29 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2026-06-11 16:10:29 +0200
commit97f207b771b94c5285faae4810d6eeda1b78926b (patch)
tree4482544233c30e0e9a62be6afcfe92c8e01b0a50 /crates/turtle/src/atuin_server/handlers/user.rs
parentchore: Remove all `pub`s (diff)
downloadatuin-97f207b771b94c5285faae4810d6eeda1b78926b.zip
chore(server): Simplify the database support
Diffstat (limited to 'crates/turtle/src/atuin_server/handlers/user.rs')
-rw-r--r--crates/turtle/src/atuin_server/handlers/user.rs32
1 files changed, 17 insertions, 15 deletions
diff --git a/crates/turtle/src/atuin_server/handlers/user.rs b/crates/turtle/src/atuin_server/handlers/user.rs
index 7708d43e..28cebfab 100644
--- a/crates/turtle/src/atuin_server/handlers/user.rs
+++ b/crates/turtle/src/atuin_server/handlers/user.rs
@@ -16,14 +16,16 @@ use metrics::counter;
use rand::rngs::OsRng;
use tracing::{debug, error, info, instrument};
-use crate::atuin_common::tls::ensure_crypto_provider;
+use crate::{
+ atuin_common::tls::ensure_crypto_provider,
+ atuin_server::database::{
+ DbError,
+ models::{NewSession, NewUser},
+ },
+};
use super::{ErrorResponse, ErrorResponseStatus, RespExt};
use crate::atuin_server::router::{AppState, UserAuth};
-use crate::atuin_server_database::{
- Database, DbError,
- models::{NewSession, NewUser},
-};
use reqwest::header::CONTENT_TYPE;
@@ -63,9 +65,9 @@ async fn send_register_hook(url: &str, username: String, registered: String) {
}
#[instrument(skip_all, fields(user.username = username.as_str()))]
-pub(crate) async fn get<DB: Database>(
+pub(crate) async fn get(
Path(username): Path<String>,
- state: State<AppState<DB>>,
+ state: State<AppState>,
) -> Result<Json<UserResponse>, ErrorResponseStatus<'static>> {
let db = &state.0.database;
let user = match db.get_user(username.as_ref()).await {
@@ -87,8 +89,8 @@ pub(crate) async fn get<DB: Database>(
}
#[instrument(skip_all)]
-pub(crate) async fn register<DB: Database>(
- state: State<AppState<DB>>,
+pub(crate) async fn register(
+ state: State<AppState>,
Json(register): Json<RegisterRequest>,
) -> Result<Json<RegisterResponse>, ErrorResponseStatus<'static>> {
if !state.settings.open_registration {
@@ -163,9 +165,9 @@ pub(crate) async fn register<DB: Database>(
}
#[instrument(skip_all, fields(user.id = user.id))]
-pub(crate) async fn delete<DB: Database>(
+pub(crate) async fn delete(
UserAuth(user): UserAuth,
- state: State<AppState<DB>>,
+ state: State<AppState>,
) -> Result<Json<DeleteUserResponse>, ErrorResponseStatus<'static>> {
debug!("request to delete user {}", user.id);
@@ -183,9 +185,9 @@ pub(crate) async fn delete<DB: Database>(
}
#[instrument(skip_all, fields(user.id = user.id, change_password))]
-pub(crate) async fn change_password<DB: Database>(
+pub(crate) async fn change_password(
UserAuth(mut user): UserAuth,
- state: State<AppState<DB>>,
+ state: State<AppState>,
Json(change_password): Json<ChangePasswordRequest>,
) -> Result<Json<ChangePasswordResponse>, ErrorResponseStatus<'static>> {
let db = &state.0.database;
@@ -213,8 +215,8 @@ pub(crate) async fn change_password<DB: Database>(
}
#[instrument(skip_all, fields(user.username = login.username.as_str()))]
-pub(crate) async fn login<DB: Database>(
- state: State<AppState<DB>>,
+pub(crate) async fn login(
+ state: State<AppState>,
login: Json<LoginRequest>,
) -> Result<Json<LoginResponse>, ErrorResponseStatus<'static>> {
let db = &state.0.database;