This release includes breaking changes for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
ReleasePort's take
Light signalThis release fixes X11 auto-repeat simulation causing rapid key cycling and resolves a macOS Super+Space shortcut that leaves the Space key stuck.
Why it matters: Addresses critical input regressions on both X11 and macOS platforms, directly improving usability for developers and SREs managing mixed‑environment deployments.
Summary
AI summaryUpdates Overview, macOS, and Known Issues & Limitations across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Deprecation | Low |
Removes mouse movement event logging. Removes mouse movement event logging. Source: llm_adapter@2026-05-31 Confidence: high |
— |
| Bugfix | Medium |
Fixes X11 auto-repeat simulation causing rapid key cycling. Fixes X11 auto-repeat simulation causing rapid key cycling. Source: llm_adapter@2026-05-31 Confidence: high |
— |
| Bugfix | Medium |
Fixes macOS Super+Space shortcut leaving Space key stuck. Fixes macOS Super+Space shortcut leaving Space key stuck. Source: llm_adapter@2026-05-31 Confidence: high |
— |
| Bugfix | Medium |
Improves Parsec compatibility on macOS by using private CGEvent source. Improves Parsec compatibility on macOS by using private CGEvent source. Source: llm_adapter@2026-05-31 Confidence: high |
— |
| Refactor | Low |
Removes verbose per-event debug logging across all platforms. Removes verbose per-event debug logging across all platforms. Source: llm_adapter@2026-05-31 Confidence: high |
— |
Full changelog
Spud v1.0.4
Overview
- Fixed X11 auto-repeat simulation causing rapid key press/release cycling.
- Fixed macOS Super+Space input source switching causing Space key to get stuck.
- Fixed Parsec conflict on macOS - input injection now works alongside other remote desktop apps.
- Cleaned up verbose debug logging across all platforms.
- Removed mouse movement event logging.
Changes
Linux (X11)
- Auto-repeat fix: The X11 backend now correctly detects and suppresses auto-repeat simulation events. X11 generates
KeyRelease+KeyPresspairs for held keys instead of repeatingKeyPressevents, which was causing rapid key cycling on the server. The fix peeks at the next event in the queue and suppresses both events when they form an auto-repeat pair.
macOS
- Super+Space fix: When
Super+Spaceis pressed (macOS input source switching shortcut), the system may consume the SpaceKeyUpevent. The injector now detects this combination and injects a synthetic SpaceKeyUpafter the Super key is released, preventing the Space key from getting stuck. - Parsec compatibility: Changed
CGEventSourcefromHIDSystemStatetoPrivatestate. Events with a private source bypass other applications' CGEvent taps (e.g., Parsec's input capture), ensuring Spud's injected events reach target applications. Falls back toHIDSystemStateifPrivatefails.
All Platforms
- Debug logging cleanup: Removed verbose per-event debug logging from the X11, Windows, and macOS input backends. Error and warning messages are retained for troubleshooting.
Known Issues & Limitations
- The Wayland capture backend still requires compositor support for
pointer-constraintsandrelative-pointerprotocols; minimal compositors may not support these. - macOS input capture requires manual permission grants in System Settings before the app can capture input. Rebuilding or re-signing the binary may revoke previously granted Accessibility permissions.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About Spud
All releases →Related context
Related tools
Beta — feedback welcome: [email protected]