> ## Documentation Index
> Fetch the complete documentation index at: https://whatsapp-rust.jlucaso.com/llms.txt
> Use this file to discover all available pages before exploring further.

# August 7, 2026 — whatsapp-rust 0.7.0 published

> 0.7.0 is on crates.io. VoIP, native plugins, tracing, and metrics no longer need a git dependency; the moka-cache and debug-diagnostics features are gone.

## Release

**`whatsapp-rust` 0.7.0 and every publishable workspace crate are on crates.io ([#1219](https://github.com/oxidezap/whatsapp-rust/pull/1219))**

`whatsapp-rust`, `wacore`, `wacore-appstate`, `wacore-binary`, `wacore-derive`, `wacore-libsignal`, `wacore-noise`, `waproto`, `whatsapp-rust-sqlite-storage`, `whatsapp-rust-tokio-transport`, and `whatsapp-rust-ureq-http-client` all went out at `0.7.0`. `whatsapp-rust-chat-store` and `whatsapp-rust-plugin-metrics` are held back — see below. The [v0.7.0 release notes](https://github.com/oxidezap/whatsapp-rust/releases/tag/v0.7.0) cover the 488 PRs behind it; this entry is the upgrade-facing summary.

```toml theme={null}
[dependencies]
whatsapp-rust = "0.7"
tokio = { version = "1.53", features = ["macros", "rt-multi-thread"] }
```

## Features that no longer need a git dependency

These landed on `main` after 0.6.0 and are now in the published crate — drop any `git = "…"` override you were carrying for them:

| Feature                                                             | What it enables                                                                   |
| ------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
| `voip`, `voip-runtime`, `voip-encoded`, `voip-mlow`, `voip-libopus` | 1:1 voice and video calls — see [VoIP Calls](/guides/voip-calls)                  |
| `plugins`, `client-lifecycle`                                       | Build-time native plugin host — see [Native plugins](/advanced/plugins)           |
| `tracing`, `tracing-pii`                                            | Spans and events across the client — see [Observability](/advanced/observability) |
| `metrics`                                                           | `wa_*` counters, histograms, and gauges — see [Metrics](/advanced/metrics)        |
| `legacy-session-interop`                                            | Typed interop with the decoded legacy `SessionRecord` v1 model                    |
| `danger-skip-cert-chain-verify`                                     | Skips the Noise handshake certificate-chain check (unsafe)                        |

## Breaking changes when upgrading from 0.6.0

**The `moka-cache` feature is gone.** It was a default feature in 0.6.0. If your `Cargo.toml` names it explicitly, remove the line — see [moka dropped for a portable cache](/changelog/2026-06-14-drop-moka-portable-cache).

**The `debug-diagnostics` feature is gone**, along with the `memory_diagnostics()` / `MemoryDiagnostics` surface it gated. The replacement is split in two and needs no feature flag: [`Client::memory_report()`](/api/client#memory_report) returns the cache entry counts and retained-byte estimates that `MemoryDiagnostics` carried, and [`Client::stats()`](/api/client#stats) returns the wire I/O and activity counters.

**Minimum versions moved.** The workspace declares an MSRV for the first time, at **1.94** (0.6.0 declared none), and the crate requires **tokio 1.53.1** or newer. Edition 2024 needs no nightly; only the default `simd` feature does, because it uses the unstable `portable_simd` API.

**`whatsapp-rust-chat-store` is not published.** Its schema and query surface are still moving, so it is held back from crates.io (`publish = false`) and stays reachable only through the git source — as does `whatsapp-rust-plugin-metrics`. When you use the chat store, put `whatsapp-rust` and `whatsapp-rust-sqlite-storage` on that same revision: a registry copy and a git copy of `whatsapp-rust-sqlite-storage` are two distinct crates to Cargo, and `ChatStore::new` only accepts the `SqliteStore` from the copy it was compiled against. See [Chat Store](/api/chat-store).

## Release pipeline

The release workflow gained a **preflight** job that extracts and validates the version before anything publishes. It rejects build metadata (`0.7.0+build.5`) even though Cargo accepts it: `+` is not a legal Docker tag character, so the image would ship as `0.7.0-build.5` — the tag a real prerelease of that name would claim. Running the check ahead of publish costs a failed job; running it after would strand a release between crates.io and the tag.

Hand-written release notes in `.github/release-notes/v<version>.md` now win over `--generate-notes`, which for a release this size emits thousands of unstructured bullets.
