Skip to content

v0.1.6

Choose a tag to compare

@jrigling jrigling released this 30 May 01:01
· 1 commit to main since this release

Fix unsolicited type 0x00 message draining

The pump emits periodic type 0x00 status broadcasts. If one arrived in the 10ms drain window before a request, _drain_garbage_bytes consumed the 5-byte header + length bytes but left the trailing 129-byte padding frame in the socket buffer. The next _read_raw then saw padding bytes instead of a valid header, triggered byte-by-byte resync, and raced the pump's connection close — surfacing as IncompleteReadError on every poll.

Drain now reads the full frame (header + body + 129-byte padding for type 0x00) via readexactly.