Versioning: INBUXA's own dated version, with the Stalwart base shown
inbuxa --version, the banner, startup events, OpenTelemetry and the JMAP implementation string read "2026.9.18 (Stalwart 0.16.22)". The base comes from Cargo, which keeps following upstream so version bumps merge cleanly. Received headers and IMAP ID carry the INBUXA version.
This commit is contained in:
@@ -543,10 +543,10 @@ impl Metrics {
|
||||
let metrics = bp.setting_infallible::<structs::Metrics>().await;
|
||||
let resource = Resource::builder()
|
||||
.with_service_name("stalwart")
|
||||
.with_attribute(KeyValue::new(SERVICE_VERSION, env!("CARGO_PKG_VERSION")))
|
||||
.with_attribute(KeyValue::new(SERVICE_VERSION, types::brand_version_full!()))
|
||||
.build();
|
||||
let instrumentation = InstrumentationScope::builder("stalwart")
|
||||
.with_version(env!("CARGO_PKG_VERSION"))
|
||||
.with_version(types::brand_version_full!())
|
||||
.build();
|
||||
|
||||
Metrics {
|
||||
|
||||
@@ -79,7 +79,7 @@ pub static VERSION_PRIVATE: &str = env!("CARGO_PKG_VERSION");
|
||||
pub static VERSION_PUBLIC: &str = "1.0.0";
|
||||
|
||||
pub static USER_AGENT: &str = concat!(types::brand!(), "/1.0.0");
|
||||
pub static DAEMON_NAME: &str = concat!(types::brand!(), " v", env!("CARGO_PKG_VERSION"),);
|
||||
pub static DAEMON_NAME: &str = concat!(types::brand!(), " v", types::brand_version!(),);
|
||||
pub static PROD_ID: &str = types::brand_prodid!();
|
||||
|
||||
/*
|
||||
|
||||
@@ -39,8 +39,8 @@ pub struct IpcReceivers {
|
||||
|
||||
const HELP: &str = concat!(
|
||||
types::brand_server!(),
|
||||
" v",
|
||||
env!("CARGO_PKG_VERSION"),
|
||||
" ",
|
||||
types::brand_version_full!(),
|
||||
r#"
|
||||
|
||||
Usage: inbuxa [OPTIONS]
|
||||
@@ -88,7 +88,7 @@ impl BootManager {
|
||||
std::process::exit(0);
|
||||
}
|
||||
("version" | "V", _) => {
|
||||
println!("{}", env!("CARGO_PKG_VERSION"));
|
||||
println!("{}", types::brand_version_full!());
|
||||
std::process::exit(0);
|
||||
}
|
||||
("config" | "c", Some(value)) => {
|
||||
@@ -166,20 +166,20 @@ impl BootManager {
|
||||
Hostname = bootstrap.registry.local_hostname().to_string(),
|
||||
Details =
|
||||
"No configuration file was found. Port 8080 is open for initial setup.",
|
||||
Version = env!("CARGO_PKG_VERSION"),
|
||||
Version = types::brand_version_full!(),
|
||||
);
|
||||
} else if bootstrap.registry.is_recovery_mode() {
|
||||
trc::event!(
|
||||
Server(trc::ServerEvent::RecoveryMode),
|
||||
Details = "Port 8080 is open for troubleshooting and recovery.",
|
||||
Hostname = bootstrap.registry.local_hostname().to_string(),
|
||||
Version = env!("CARGO_PKG_VERSION"),
|
||||
Version = types::brand_version_full!(),
|
||||
);
|
||||
} else {
|
||||
trc::event!(
|
||||
Server(trc::ServerEvent::Startup),
|
||||
Hostname = bootstrap.registry.local_hostname().to_string(),
|
||||
Version = env!("CARGO_PKG_VERSION"),
|
||||
Version = types::brand_version_full!(),
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -13,8 +13,8 @@ use store::{Deserialize, IterateParams, SUBSPACE_INDEXES, SUBSPACE_REGISTRY_IDX,
|
||||
|
||||
const HELP: &str = concat!(
|
||||
types::brand_server!(),
|
||||
" v",
|
||||
env!("CARGO_PKG_VERSION"),
|
||||
" ",
|
||||
types::brand_version_full!(),
|
||||
r#" Data Store CLI
|
||||
|
||||
Enter commands (type 'help' for available commands).
|
||||
|
||||
@@ -28,11 +28,11 @@ pub(crate) fn spawn_otel_tracer(builder: SubscriberBuilder, mut otel: OtelTracer
|
||||
tokio::spawn(async move {
|
||||
let resource = Resource::builder()
|
||||
.with_service_name("stalwart")
|
||||
.with_attribute(KeyValue::new(SERVICE_VERSION, env!("CARGO_PKG_VERSION")))
|
||||
.with_attribute(KeyValue::new(SERVICE_VERSION, types::brand_version_full!()))
|
||||
.build();
|
||||
|
||||
let instrumentation = InstrumentationScope::builder("stalwart")
|
||||
.with_version(env!("CARGO_PKG_VERSION"))
|
||||
.with_version(types::brand_version_full!())
|
||||
.build();
|
||||
|
||||
otel.log_exporter.set_resource(&resource);
|
||||
|
||||
Reference in New Issue
Block a user