Skip to content

Latch v3.1.1

Choose a tag to compare

@github-actions github-actions released this 10 Sep 00:03
· 171 commits to main since this release

A hardening release: both apps parse the network more strictly, update
themselves more carefully, and the stream validates what the PC sends
before acting on it. Nothing changes in how you use Latch.

Control API

  • Requests and replies are read within a fixed size budget, must use
    proper HTTP line endings and versions, and are refused when they carry
    chunked encoding, duplicate framing headers or a malformed
    Content-Length. Bodies grow only as bytes arrive.
  • Latch Host checks who is asking before it reads a single header,
    keeps at most sixteen connections open, and turns away browser
    requests (including ones a rebound hostname makes look local).

Updates

  • The Mac rechecks a cached download against the SHA-256 and size GitHub
    publishes before installing it, stages the new app on the same volume
    so a failed copy cannot leave a half-installed app, and no longer
    passes its own path through a shell when relaunching.
  • Latch Host accepts only a 64-bit Windows executable image, installs
    one update at a time, and puts the previous executable back if the new
    one fails to start.
  • Latch Host no longer rewrites the Windows power plan every few
    seconds; Keep this PC awake while plugged in now does exactly that.

Stream

  • Audio parameters and channel mappings from the PC are validated before
    any buffer is allocated or libopus is called.
  • The encryption shim refuses overlapping buffers and writes padding to
    its output instead of the caller's input.
  • A failed pairing restores the previous pairing state.
  • Holding ⌘ and Ctrl together keeps Ctrl held on the PC when either is
    released.

Interface

  • Buttons, segments and toggles show a focus ring when reached from the
    keyboard, and toggles carry their label for assistive technology.
  • Long details in lists show in full on hover.
  • The host's Stop the background service button no longer freezes
    the window while it waits.