Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Watchexec 2.3.0

Release notes

  • Upgrade jaq to 2.0 (#902)
  • Flags are ordered alphabetically in --help
  • --filter-prog is no longer experimental (won't warn on use)
  • --only-emit-events now implies --emit-events-to=json-stdio
  • Zero-value unitless time spans are no longer deprecated (#909)
  • Linux build machines for the pre-built binaries now use Ubuntu 24.04; if you require an older glibc you'll need to build from source

New feature: --socket (#905)

This implements the systemd socket-passing protocol, like a lightweight systemfd: sockets are opened from the watchexec process, and then passed to the commands it runs. This lets you keep sockets open and avoid address reuse issues or dropping packets.

The value can be either of PORT (opens a TCP listening socket at that port), HOST:PORT (specify a host IP address; IPv6 addresses can be specified [bracketed]), TYPE::PORT or TYPE::HOST:PORT (specify a socket type, tcp / udp). This syntax and the behaviour of this option is compatible with systemfd's.

This integration only provides basic support, if you want more control you should use the systemfd tool from @mitsuhiko directly. To make use of the sockets in Rust code, you can use the listenfd crate, also by Armin.

I've also written a document that describes the minimal protocol, if you want to see how to use it in your projects or how to implement it yourself, both for Unix (systemd's invention) and for Windows (systemfd's invention): https://github.com/watchexec/watchexec/blob/main/doc/socket.md

Packages

OS Arch Variant Download Checksums
Linux AArch64 glibc DEB (2.5 MB) BLAKE3 SHA256 SHA512
RPM (2.9 MB) BLAKE3 SHA256 SHA512
XZ (2.5 MB) BLAKE3 SHA256 SHA512
musl DEB (2.5 MB) BLAKE3 SHA256 SHA512
RPM (2.9 MB) BLAKE3 SHA256 SHA512
XZ (2.5 MB) BLAKE3 SHA256 SHA512
ARMv7 HF glibc DEB (2.5 MB) BLAKE3 SHA256 SHA512
RPM (3 MB) BLAKE3 SHA256 SHA512
XZ (2.5 MB) BLAKE3 SHA256 SHA512
IBM Z glibc DEB (3.3 MB) BLAKE3 SHA256 SHA512
RPM (3.8 MB) BLAKE3 SHA256 SHA512
XZ (3.3 MB) BLAKE3 SHA256 SHA512
PowerPC glibc DEB (2.6 MB) BLAKE3 SHA256 SHA512
RPM (3 MB) BLAKE3 SHA256 SHA512
XZ (2.6 MB) BLAKE3 SHA256 SHA512
x86 musl DEB (2.9 MB) BLAKE3 SHA256 SHA512
RPM (3.1 MB) BLAKE3 SHA256 SHA512
XZ (2.9 MB) BLAKE3 SHA256 SHA512
x86-64 glibc DEB (2.8 MB) BLAKE3 SHA256 SHA512
RPM (3.1 MB) BLAKE3 SHA256 SHA512
XZ (2.8 MB) BLAKE3 SHA256 SHA512
musl DEB (2.9 MB) BLAKE3 SHA256 SHA512
RPM (3.2 MB) BLAKE3 SHA256 SHA512
XZ (2.9 MB) BLAKE3 SHA256 SHA512
Windows x86-64 MSVC Zip (3.3 MB) BLAKE3 SHA256 SHA512
macOS AArch64 XZ (1.9 MB) BLAKE3 SHA256 SHA512
x86-64 XZ (2.2 MB) BLAKE3 SHA256 SHA512

View release on GitHub.

Checksums

BLAKE3 checksums
SHA256 checksums
SHA512 checksums

version released on 2025-02-09 | this page built on 2026-03-30 at 18:53 | generator v0.0.2 | json metadata