diff options
| author | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2026-06-13 00:50:54 +0200 |
|---|---|---|
| committer | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2026-06-13 00:50:54 +0200 |
| commit | 6723829a3398b3c9dd6dc6ae79124f46000606ee (patch) | |
| tree | a1ec535eddd711a4557e4bcc5b94382c3623504c /crates/turtle/src/atuin_daemon/server.rs | |
| parent | chore(treewide): Cleanup themes (diff) | |
| download | atuin-6723829a3398b3c9dd6dc6ae79124f46000606ee.zip | |
chore(treewide): Remove `cargo` warnings to 0
There are still the `clippy` warnings, but they are for a future date.
Diffstat (limited to 'crates/turtle/src/atuin_daemon/server.rs')
| -rw-r--r-- | crates/turtle/src/atuin_daemon/server.rs | 38 |
1 files changed, 22 insertions, 16 deletions
diff --git a/crates/turtle/src/atuin_daemon/server.rs b/crates/turtle/src/atuin_daemon/server.rs index 65272d2a..36954cca 100644 --- a/crates/turtle/src/atuin_daemon/server.rs +++ b/crates/turtle/src/atuin_daemon/server.rs @@ -1,23 +1,28 @@ use eyre::Result; -use crate::atuin_daemon::components::history::HistoryGrpcService; -use crate::atuin_daemon::components::search::SearchGrpcService; -use crate::atuin_daemon::components::semantic::SemanticGrpcService; -use crate::atuin_daemon::control::{ControlService, control_server::ControlServer}; -use crate::atuin_daemon::daemon::DaemonHandle; -use crate::atuin_daemon::history::history_server::HistoryServer; -use crate::atuin_daemon::search::search_server::SearchServer; -use crate::atuin_daemon::semantic::semantic_server::SemanticServer; - -use crate::atuin_client::settings::Settings; +use crate::{ + atuin_client::settings::Settings, + atuin_daemon::{ + components::{ + history::HistoryGrpcService, search::SearchGrpcService, semantic::SemanticGrpcService, + }, + daemon::DaemonHandle, + generated::{ + control::{ControlService, control_server::ControlServer}, + history::history_server::HistoryServer, + search::search_server::SearchServer, + semantic::semantic_server::SemanticServer, + }, + }, +}; /// Run the gRPC server with the given services. /// /// This starts the gRPC server in the background and returns immediately. -/// The server will shut down when a ShutdownRequested event is received. +/// The server will shut down when a [`ShutdownRequested`] event is received. #[cfg(unix)] -pub(crate) async fn run_grpc_server( - settings: Settings, +pub(crate) fn run_grpc_server( + settings: &Settings, history_service: HistoryServer<HistoryGrpcService>, search_service: SearchServer<SearchGrpcService>, semantic_service: SemanticServer<SemanticGrpcService>, @@ -75,15 +80,16 @@ pub(crate) async fn run_grpc_server( // Create shutdown signal from daemon handle let shutdown_signal = async move { let mut rx = handle.subscribe(); + loop { use crate::atuin_daemon::DaemonEvent; match rx.recv().await { - Ok(DaemonEvent::ShutdownRequested) => break, - Ok(_) => continue, - Err(_) => break, // Channel closed + Err(_) | Ok(DaemonEvent::ShutdownRequested) => break, + Ok(_) => (), } } + if cleanup { eprintln!("Removing socket..."); if let Err(e) = std::fs::remove_file(&socket_path) |
