Skip to content

v0.4.0 — Breaking Cleanup

Choose a tag to compare

@kolkov kolkov released this 24 Sep 23:16
· 7 commits to main since this release
3d734ef

v0.4.0 — Breaking Cleanup

Zero deprecated code. All breaking changes in one release.

Breaking Changes

  • Remove connect/disconnect endpoints — use /daemon/attach (lease-based)
  • ProcessManager.Start(ctx, StartSpec) replaces StartDetached
  • DisableTokenAuth replaces RequireToken (inverted: secure by default)
  • WaitUntilReady(ctx, ...) — ctx parameter added to HealthChecker
  • ShutdownTimeout — daemon drain budget; worst case ShutdownTimeout + 7s

Added

  • Hold(ctx) / Release() — opt-in autostart prevention via stop-intent marker
  • SpawnCooldown (default 5s) — prevents rapid respawn after failure
  • sync.Mutex on *Daemon — satisfies race detector for in-process calls

Fixed

  • StateNew connection drain (5s stdlib delay with pooled connections)
  • EnsureRunning check order: IsHeld → stop-intent → cooldown → start

Migration

v0.3.x v0.4.0
RequireToken: true Remove field (secure by default)
RequireToken: false DisableTokenAuth: true
StartDetached(bin, args, log, env) Start(ctx, StartSpec{...})
WaitUntilReady(port, path, timeout) WaitUntilReady(ctx, port, path, timeout)
POST /daemon/connect GET /daemon/attach