aboutsummaryrefslogtreecommitdiffstats
path: root/crates/turtle/src/atuin_client/settings.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/turtle/src/atuin_client/settings.rs')
-rw-r--r--crates/turtle/src/atuin_client/settings.rs21
1 files changed, 14 insertions, 7 deletions
diff --git a/crates/turtle/src/atuin_client/settings.rs b/crates/turtle/src/atuin_client/settings.rs
index e4c21d4a..9e14c4c8 100644
--- a/crates/turtle/src/atuin_client/settings.rs
+++ b/crates/turtle/src/atuin_client/settings.rs
@@ -1,9 +1,9 @@
use crypto_secretbox::Key;
use std::{
- collections::HashMap, fmt, fs::read_to_string, io::prelude::Write, path::PathBuf, str::FromStr,
- sync::OnceLock,
+ collections::HashMap, fmt, fs::read_to_string, path::PathBuf, str::FromStr, sync::OnceLock,
};
use tokio::sync::OnceCell;
+use tracing::info;
use uuid::Uuid;
use crate::atuin_common::utils;
@@ -13,7 +13,7 @@ use config::{
Config, ConfigBuilder, Environment, File as ConfigFile, FileFormat, builder::DefaultState,
};
use eyre::{Context, Error, Result, bail, eyre};
-use fs_err::{File, create_dir_all};
+use fs_err::create_dir_all;
use regex::RegexSet;
use serde::{Deserialize, Serialize};
use serde_with::DeserializeFromStr;
@@ -834,12 +834,17 @@ impl Sync {
pub(crate) fn user_id(&self) -> Result<Option<Uuid>> {
Self::try_read_file(self.user_id_path.as_ref())?
- .map(|file| Uuid::try_parse(&file).map_err(Into::into))
+ .map(|file| {
+ Uuid::parse_str(file.trim()).context(
+ "Failed to decode user id as UUID, while trying to decode sync user_id",
+ )
+ })
.transpose()
}
pub(crate) fn encryption_key(&self) -> Result<Option<Key>> {
Self::try_read_file(self.encryption_key_path.as_ref())?
.as_deref()
+ .map(str::trim)
.map(decode_key)
.transpose()
}
@@ -1181,10 +1186,12 @@ impl Settings {
// file with defaults. <2026-06-13>
create_dir_all(config_file.parent().unwrap())?;
- bail!(
- "No config file at: `{}`. Please add one.",
+ info!(
+ "No config file at: `{}`. Not adding one.",
config_file.display()
- )
+ );
+
+ config_builder
};
// all paths should be expanded