aboutsummaryrefslogtreecommitdiffstats
path: root/crates/daemon/src/aclient/database/mod.rs
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2026-07-24 17:56:36 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2026-07-24 17:56:36 +0200
commit9cdc575666faad4c162f4b4cf519bfdd1fd528dc (patch)
tree9287963ad11e237ca74edbd54161c03f3309927b /crates/daemon/src/aclient/database/mod.rs
parentchore: Last big refactoring (diff)
downloadatuin-9cdc575666faad4c162f4b4cf519bfdd1fd528dc.zip
feat: Finalize design for fish-shell integration
Diffstat (limited to 'crates/daemon/src/aclient/database/mod.rs')
-rw-r--r--crates/daemon/src/aclient/database/mod.rs14
1 files changed, 8 insertions, 6 deletions
diff --git a/crates/daemon/src/aclient/database/mod.rs b/crates/daemon/src/aclient/database/mod.rs
index b112b076..f24eb777 100644
--- a/crates/daemon/src/aclient/database/mod.rs
+++ b/crates/daemon/src/aclient/database/mod.rs
@@ -1,4 +1,4 @@
-use std::{path::Path, str::FromStr};
+use std::{path::Path, str::FromStr, time::Duration};
use fs_err::{self as fs};
use sql_builder::{SqlBuilder, SqlName};
@@ -8,7 +8,7 @@ use sqlx::{
};
use time::OffsetDateTime;
use tracing::debug;
-use turtle::history::{History, HistoryId};
+use turtle_api::history::{History, HistoryId};
use turtle_common::utils;
use crate::aclient::utils::setup_db;
@@ -59,9 +59,9 @@ impl ClientSqlite {
"insert or ignore into history(id, timestamp, duration, exit, command, cwd, session, hostname, author, intent, deleted_at)
values(?1, ?2, ?3, ?4, ?5, ?6, ?7, ?8, ?9, ?10, ?11)",
)
- .bind(h.id.0.as_str())
+ .bind(h.id.to_string().as_str())
.bind(h.timestamp.unix_timestamp_nanos() as i64)
- .bind(h.duration)
+ .bind(h.duration.as_nanos() as i64)
.bind(h.exit)
.bind(h.command.as_str())
.bind(h.cwd.as_str())
@@ -81,7 +81,7 @@ impl ClientSqlite {
id: HistoryId,
) -> Result<()> {
sqlx::query("delete from history where id = ?1")
- .bind(id.0.as_str())
+ .bind(id.to_string().as_str())
.execute(&mut **tx)
.await?;
@@ -107,7 +107,9 @@ impl ClientSqlite {
))
.unwrap(),
)
- .duration(row.get("duration"))
+ .duration(Duration::from_nanos(
+ u64::try_from(row.get::<i64, _>("duration")).expect("to be small enough"),
+ ))
.exit(row.get("exit"))
.command(row.get("command"))
.cwd(row.get("cwd"))