Skip to content

v0.5.0

Choose a tag to compare

@Niladri2003 Niladri2003 released this 28 May 19:16
· 14 commits to main since this release
d2477ee

What's Changed

Architecture

  • Two-process model. Long-running background daemon owns the SDK, tunnels, and web debugger. CLI becomes a short-lived client that talks to the daemon. Single daemon per user, auto-spawned on demand.
  • IPC layer. HTTP on 127.0.0.1 (OS-assigned port) for request/response, plus WebSocket for streaming tunnel events. Strongly-typed routes in ipcRoutes.ts; raw HTTP wrapper (IPCClient) sits behind a single facade (TunnelClient).
  • Daemon discovery & lifecycle. daemon.json records pid + port, validated on every CLI invocation; stale entries auto-cleaned. Health check + atomic writes.

Tunnel lifecycle

  • Foreground vs detached modes. SessionTracker maps each tunnel to a session + mode. Foreground tunnels die with their CLI after a 5-second grace window; detached tunnels persist.
  • Crash recovery. Detached tunnels written to daemon-state.json and replayed on next daemon start. Clean shutdown clears the state file.
  • Auto-start. Saved configs marked auto are launched in detached mode at daemon boot.
  • Resilience. Per-tunnel reconnect listeners (worker error, reconnecting, completed, failed) wired for all daemon-started tunnels.
  • Add end-to-end tests for Pinggy CLI functionality by @Niladri2003 in #97
  • feat: add daemon mode with IPC, service installation, and CLI subcomm… by @Niladri2003 in #93

Full Changelog: v0.4.9...v0.5.0