mirror of
https://github.com/freemkv/libfreemkv.git
synced 2026-10-07 18:13:10 +00:00
Splits the bidirectional pes::Stream into one-direction traits so calling read() on a write-only sink is a compile error instead of runtime E9001. Keeps Stream alive as deprecated through 0.18 with a blanket FrameSource impl so existing concrete types compile unchanged. FrameSink can't be blanket-impl'd from Stream (different finish signature), so concrete impls migrate per-type in a follow-up. Concrete `impl pes::Stream for X` blocks in mux/* and the existing tests gain a one-line `#[allow(deprecated)]` to keep `-D warnings` clean during the deprecation window — no behavior changes. See (internal)/memory/0_18_redesign.md. Single contributor: MattJackson.