diff --git a/docs/core-concepts/architecture.md b/docs/core-concepts/architecture.md index dfce484..5faf19f 100644 --- a/docs/core-concepts/architecture.md +++ b/docs/core-concepts/architecture.md @@ -66,5 +66,6 @@ Each of these is a thing telemetryd does not have, and the reason: - **No background compaction.** Segments are sealed once and never rewritten. That is most of the single-host ingest advantage: no merge amplification. - **No query planner.** The query shapes are known at compile time. -- **No C dependencies at all.** Which is what makes the static musl builds a - straightforward link rather than a source of surprises. +- **No system libraries.** The three C dependencies — zstd, `ring` and mimalloc — are + built from source and linked statically, so nothing is linked from the machine that + runs the binary and the static musl builds stay a straightforward link. diff --git a/docs/extension-points/_index.md b/docs/extension-points/_index.md index 8bcec71..a4ed0be 100644 --- a/docs/extension-points/_index.md +++ b/docs/extension-points/_index.md @@ -53,6 +53,6 @@ that matters — anything speaking them works within the documented subset. **Scrape its self-metrics.** `/metrics` is Prometheus exposition; `/status` is JSON with disk usage, retention activity, per-signal counts and recovery events. -**Fork it.** MIT, roughly ten thousand lines, no C dependencies. The doc comments +**Fork it.** MIT, roughly ten thousand lines, no system libraries. The doc comments explain why each piece is the way it is, including where the original plan turned out to be wrong. diff --git a/docs/getting-started/installation.md b/docs/getting-started/installation.md index 7795a42..a1541e3 100644 --- a/docs/getting-started/installation.md +++ b/docs/getting-started/installation.md @@ -149,8 +149,8 @@ cd telemetryd cargo build --release ``` -Needs Rust 1.89 or newer and a C compiler: zstd and `ring`, the TLS library's -cryptography, are built from C and assembly. Nothing is linked from the system — the +Needs Rust 1.89 or newer and a C compiler: zstd, `ring` (the TLS library's +cryptography) and mimalloc (the allocator) are built from C and assembly. Nothing is linked from the system — the release binaries are static — so there is no library to install on the machine that runs it. diff --git a/docs/requirements.md b/docs/requirements.md index e192581..82c7a16 100644 --- a/docs/requirements.md +++ b/docs/requirements.md @@ -64,7 +64,7 @@ Stated because these are the dependencies comparable systems do need: | | | |---|---| | Rust | 1.89 or newer, stable | -| C toolchain | None. There are no C dependencies in the tree at all, which is what keeps the static musl builds straightforward | +| C toolchain | A C compiler. zstd, `ring` (the TLS library's cryptography) and mimalloc (the allocator) are built from C, and linked statically: the binary still needs no library on the machine that runs it | ```bash cargo build --release