diff --git a/lib/crates/fabro-cli/src/commands/config/mod.rs b/lib/crates/fabro-cli/src/commands/config/mod.rs index 670cca826..1535bfa0e 100644 --- a/lib/crates/fabro-cli/src/commands/config/mod.rs +++ b/lib/crates/fabro-cli/src/commands/config/mod.rs @@ -9,6 +9,8 @@ use std::io::Write; +use fabro_api::types::ServerSettings; +use fabro_config::UserSettings; use fabro_types::settings::CliNamespace; use fabro_types::settings::cli::{CliLayer, OutputFormat}; use fabro_util::printer::Printer; @@ -20,8 +22,8 @@ use crate::shared::print_json_pretty; #[derive(Serialize)] struct RenderedConfig { - user: fabro_config::UserSettings, - server: fabro_api::types::ServerSettings, + user: UserSettings, + server: ServerSettings, } async fn rendered_config( diff --git a/lib/crates/fabro-client/src/client.rs b/lib/crates/fabro-client/src/client.rs index f674ee474..582426a00 100644 --- a/lib/crates/fabro-client/src/client.rs +++ b/lib/crates/fabro-client/src/client.rs @@ -490,16 +490,14 @@ impl Client { } } - pub async fn retrieve_resolved_server_settings( - &self, - ) -> Result { + pub async fn retrieve_resolved_server_settings(&self) -> Result { let url = format!("{}/api/v1/settings", self.base_url()); let response = self .send_http(|http_client| async move { http_client.get(&url).send().await }) .await?; response - .json::() + .json::() .await .context("server returned invalid JSON for server settings") } diff --git a/lib/crates/fabro-config/tests/resolve_cli.rs b/lib/crates/fabro-config/tests/resolve_cli.rs index f6dc06005..01c05b60a 100644 --- a/lib/crates/fabro-config/tests/resolve_cli.rs +++ b/lib/crates/fabro-config/tests/resolve_cli.rs @@ -1,3 +1,8 @@ +#![expect( + clippy::disallowed_methods, + reason = "sync test fixture setup; not on a Tokio path" +)] + use fabro_config::{parse_settings_layer, resolve_cli_from_file}; use fabro_types::settings::cli::{CliTargetSettings, OutputFormat, OutputVerbosity}; use fabro_types::settings::run::AgentPermissions; diff --git a/lib/crates/fabro-config/tests/resolve_server.rs b/lib/crates/fabro-config/tests/resolve_server.rs index 11681904d..445fb834f 100644 --- a/lib/crates/fabro-config/tests/resolve_server.rs +++ b/lib/crates/fabro-config/tests/resolve_server.rs @@ -1,3 +1,8 @@ +#![expect( + clippy::disallowed_methods, + reason = "sync test fixture setup; not on a Tokio path" +)] + use fabro_config::parse_settings_layer; use fabro_config::user::default_storage_dir; use fabro_types::settings::server::{ diff --git a/lib/crates/fabro-types/src/settings/server.rs b/lib/crates/fabro-types/src/settings/server.rs index ef10b7b3b..9e4d300e7 100644 --- a/lib/crates/fabro-types/src/settings/server.rs +++ b/lib/crates/fabro-types/src/settings/server.rs @@ -10,6 +10,7 @@ use std::net::SocketAddr; use std::time::Duration as StdDuration; use ipnet::IpNet; +use serde::de::Error as _; use serde::{Deserialize, Deserializer, Serialize, Serializer}; use super::duration::Duration as DurationLayer; @@ -287,7 +288,7 @@ where D: Deserializer<'de>, { let value = String::deserialize(deserializer)?; - value.parse().map_err(serde::de::Error::custom) + value.parse().map_err(D::Error::custom) } fn serialize_std_duration(value: &StdDuration, serializer: S) -> Result