From 7f14992e81de73ef321709bd470f762cfcb1588f Mon Sep 17 00:00:00 2001 From: John Coffey Date: Tue, 22 Sep 2026 13:21:15 -0700 Subject: [PATCH] Keep the upstream project's name out of user-visible strings The first-party application descriptions and the telemetry service name and instrumentation scope are shown to operators, and the unpacked-application temp directory carried the name too. Left alone deliberately: the OAuth key-derivation contexts (renaming them would invalidate every sealed token and client id), the migration defaults that read an upstream installation, links to upstream's upgrade guide, the wire-protocol identifiers, and upstream's own license and templates. --- crates/common/src/config/telemetry.rs | 4 ++-- crates/common/src/manager/application.rs | 2 +- crates/common/src/manager/first_party.rs | 4 ++-- crates/common/src/telemetry/tracers/otel.rs | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/crates/common/src/config/telemetry.rs b/crates/common/src/config/telemetry.rs index ec447e9..1884e82 100644 --- a/crates/common/src/config/telemetry.rs +++ b/crates/common/src/config/telemetry.rs @@ -583,10 +583,10 @@ impl Metrics { pub async fn parse(bp: &mut Bootstrap) -> Self { let metrics = bp.setting_infallible::().await; let resource = Resource::builder() - .with_service_name("stalwart") + .with_service_name("inbuxa") .with_attribute(KeyValue::new(SERVICE_VERSION, types::brand_version_full!())) .build(); - let instrumentation = InstrumentationScope::builder("stalwart") + let instrumentation = InstrumentationScope::builder("inbuxa") .with_version(types::brand_version_full!()) .build(); diff --git a/crates/common/src/manager/application.rs b/crates/common/src/manager/application.rs index a82bef8..a5f5370 100644 --- a/crates/common/src/manager/application.rs +++ b/crates/common/src/manager/application.rs @@ -522,7 +522,7 @@ mod tests { } async fn fixture(name: &str, client_id: Option<&str>) -> (WebApplications, TempDir) { - let dir = TempDir::new(std::env::temp_dir().join(format!("stalwart-app-{name}"))); + let dir = TempDir::new(std::env::temp_dir().join(format!("inbuxa-app-{name}"))); dir.clean().await.unwrap(); tokio::fs::write(dir.path.join("index.html"), INDEX) .await diff --git a/crates/common/src/manager/first_party.rs b/crates/common/src/manager/first_party.rs index 057f514..70ed0bd 100644 --- a/crates/common/src/manager/first_party.rs +++ b/crates/common/src/manager/first_party.rs @@ -298,7 +298,7 @@ mod tests { fn web_interface() -> Application { Application { - description: "Stalwart Web Interface".to_string(), + description: "INBUXA Web Interface".to_string(), enabled: true, url_prefix: Map::new(vec!["/admin".into(), "/account".into()]), ..Default::default() @@ -312,7 +312,7 @@ mod tests { clients, vec![FirstPartyClient { client_id: WEB_INTERFACE_CLIENT_ID.to_string(), - description: "Stalwart Web Interface (served by this server)".to_string(), + description: "INBUXA Web Interface (served by this server)".to_string(), redirect_uris: vec![ "https://mail.example.org/admin/oauth/callback".to_string(), "https://mail.example.org/account/oauth/callback".to_string(), diff --git a/crates/common/src/telemetry/tracers/otel.rs b/crates/common/src/telemetry/tracers/otel.rs index 5af94c3..cf2685f 100644 --- a/crates/common/src/telemetry/tracers/otel.rs +++ b/crates/common/src/telemetry/tracers/otel.rs @@ -29,11 +29,11 @@ pub(crate) fn spawn_otel_tracer(builder: SubscriberBuilder, mut otel: OtelTracer let (_, mut rx) = builder.register(); tokio::spawn(async move { let resource = Resource::builder() - .with_service_name("stalwart") + .with_service_name("inbuxa") .with_attribute(KeyValue::new(SERVICE_VERSION, types::brand_version_full!())) .build(); - let instrumentation = InstrumentationScope::builder("stalwart") + let instrumentation = InstrumentationScope::builder("inbuxa") .with_version(types::brand_version_full!()) .build(); -- 2.54.0