obs-kit 0.2.1

Façade for the obs observability SDK; re-exports the everyday API (init, observer, sinks, macros).
Documentation
[package]
name = "obs-kit"
description = "Façade for the obs observability SDK; re-exports the everyday API (init, observer, sinks, macros)."
categories = ["development-tools"]
keywords = ["observability", "obs"]
version.workspace = true
authors.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
documentation.workspace = true
repository.workspace = true
homepage.workspace = true

[features]
# Spec 61 § 2.11 / spec 93 P2-15 + decision D6-4: ship `otel` in the
# default set so `obs-kit = "0.1"` brings in the OTLP transport without
# extra feature flags. Compile-slim consumers can pass
# `default-features = false` and pick their sinks.
default = ["dev", "panic-hook", "otel"]
dev = []
panic-hook = []
test = ["obs-core/test"]
clickhouse = ["dep:obs-clickhouse"]
live-tail = ["dep:obs-live-tail"]
parquet = ["dep:obs-parquet"]
tower = ["dep:obs-tower"]
tracing-bridge = ["dep:obs-tracing-bridge"]
otel = ["dep:obs-otel"]
# Phase 2 boundary-review additions.
batch-sink = ["dep:obs-sink-batch"]
prom = ["dep:obs-prom"]

[dependencies]
# Direct dep so `obs_kit::proto::EnumValue` lives on the façade without
# forcing consumers to add `buffa` to their own Cargo.toml. Spec § 5.1.
buffa = { workspace = true }
obs-clickhouse = { workspace = true, optional = true }
obs-core = { workspace = true }
obs-live-tail = { workspace = true, optional = true }
obs-macros = { workspace = true }
obs-otel = { workspace = true, optional = true }
obs-parquet = { workspace = true, optional = true }
obs-prom = { workspace = true, optional = true }
obs-proto = { workspace = true }
obs-sink-batch = { workspace = true, optional = true }
obs-tower = { workspace = true, optional = true }
obs-tracing-bridge = { workspace = true, optional = true }
thiserror = { workspace = true }
tokio = { workspace = true, features = ["fs", "signal"] }

[dev-dependencies]
anyhow = { workspace = true }
buffa = { workspace = true }
bytes = { workspace = true }
obs-clickhouse = { workspace = true }
obs-core = { workspace = true, features = ["test"] }
obs-otel = { workspace = true }
obs-parquet = { workspace = true }
obs-proto = { workspace = true }
obs-tower = { workspace = true }
obs-tracing-bridge = { workspace = true }
secrecy = { workspace = true }
tempfile = { workspace = true }
tokio = { workspace = true }
tracing = { workspace = true }
tracing-subscriber = { workspace = true }

[[test]]
name = "dev_ergonomics"
path = "tests/dev_ergonomics/main.rs"
required-features = ["test"]

[lints]
workspace = true