road-runner-common 0.11.0

Shared Rust utilities for exchange ecosystem backend services.
Documentation
//! Standardized Kafka configuration for platform services (feature = `kafka`).
//!
//! Returns plain `(key, value)` settings — never a version-specific
//! `rdkafka::ClientConfig` — because services span rdkafka 0.36–0.39. Each service
//! applies them to its own config:
//!
//! ```ignore
//! use road_runner_common::kafka::{KafkaSettings, consumer_settings, OffsetReset};
//!
//! let settings = KafkaSettings::from_env();
//! let mut cfg = rdkafka::ClientConfig::new();
//! for (k, v) in consumer_settings(&settings, "cex-history", OffsetReset::Earliest) {
//!     cfg.set(k, v);
//! }
//! cfg.set("client.id", "cex-history");
//! let consumer: StreamConsumer = cfg.create()?;
//! ```
//!
//! Config layering: **ENV** → connection+security ([`KafkaSettings::from_env`]);
//! **CODE** → topics/`group.id`/`client.id`/semantics; **IaC** → topic lifecycle.

pub mod consumer;
pub mod metrics;
pub mod producer;
pub mod settings;

pub use consumer::{consumer_settings, OffsetReset};
pub use producer::producer_settings;
pub use settings::{KafkaSettings, Setting};